~ chicken-core (chicken-5) c34a4d8eb4984546ad7a9f2cf761a2552334357c
commit c34a4d8eb4984546ad7a9f2cf761a2552334357c Author: felix <felix@call-with-current-continuation.org> AuthorDate: Sun Nov 5 00:33:45 2017 +0100 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Sun Nov 5 00:33:45 2017 +0100 use proper type for random_state + size constant diff --git a/runtime.c b/runtime.c index d12d90e0..fad58c06 100644 --- a/runtime.c +++ b/runtime.c @@ -479,7 +479,7 @@ static C_TLS int pending_interrupts[ MAX_PENDING_INTERRUPTS ], pending_interrupts_count, handling_interrupts; -static C_TLS C_u32 random_state[ C_RANDOM_STATE_SIZE / sizeof(C_u32) ]; +static C_TLS C_uword random_state[ C_RANDOM_STATE_SIZE / sizeof(C_uword) ]; static C_TLS int random_state_index = 0; @@ -820,7 +820,7 @@ int CHICKEN_initialize(int heap, int stack, int symbols, void *toplevel) gc_ms = 0; srand(C_fix(time(NULL))); - for(i = 0; i < C_RANDOM_STATE_SIZE / sizeof(C_u32); ++i) + for(i = 0; i < C_RANDOM_STATE_SIZE / sizeof(C_uword); ++i) random_state[ i ] = rand(); initialize_symbol_table(); @@ -12716,13 +12716,13 @@ C_a_i_random_real(C_word **ptr, C_word n) { C_word C_set_random_seed(C_word buf, C_word n) { - int i, nsu = C_unfix(n) / sizeof(C_u32); + int i, nsu = C_unfix(n) / sizeof(C_uword); int off = 0; - for(i = 0; i < (C_RANDOM_STATE_SIZE / sizeof(C_u32)); ++i) { + for(i = 0; i < (C_RANDOM_STATE_SIZE / sizeof(C_uword)); ++i) { if(off >= nsu) off = 0; - random_state[ i ] = *((C_u32 *)C_data_pointer(buf) + off); + random_state[ i ] = *((C_uword *)C_data_pointer(buf) + off); ++off; }Trap