diff --git a/ChangeLog b/ChangeLog index 8e91bdb326..3fb1d3a69b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Aug 27 13:51:12 2009 Nobuyoshi Nakada + + * random.c (random_rand): random integer can be a fixnum for + bignum range. [ruby-dev:39173] + Thu Aug 27 08:16:34 2009 Nobuyoshi Nakada * ext/strscan/strscan.c (strscan_set_string): set string should not be diff --git a/random.c b/random.c index 4154879e37..5556bded3e 100644 --- a/random.c +++ b/random.c @@ -1055,7 +1055,7 @@ random_rand(int argc, VALUE *argv, VALUE obj) long x = FIX2LONG(beg) + FIX2LONG(v); return LONG2NUM(x); } - switch (BUILTIN_TYPE(v)) { + switch (TYPE(v)) { case T_BIGNUM: return rb_big_plus(v, beg); case T_FLOAT: