diff --git a/ChangeLog b/ChangeLog index 541f7bb2cb..847b4dda4c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Oct 4 10:22:21 2010 NARUSE, Yui + + * random.c (rand_init): This checks the value is in 32bit or not, + so use int32_t, not int. + Mon Oct 4 09:47:39 2010 NARUSE, Yui * random.c (rand_init): remove useless assignment. diff --git a/random.c b/random.c index c630e9b6b5..dbc77d0532 100644 --- a/random.c +++ b/random.c @@ -403,7 +403,7 @@ rand_init(struct MT *mt, VALUE vseed) fixnum_seed = -fixnum_seed; buf[0] = (unsigned int)(fixnum_seed & 0xffffffff); #if SIZEOF_LONG > SIZEOF_INT32 - if ((long)(int)fixnum_seed != fixnum_seed) { + if ((long)(int32_t)fixnum_seed != fixnum_seed) { if ((buf[1] = (unsigned int)(fixnum_seed >> 32)) != 0) ++len; } #endif