From f758195486cbe49c647140a9e1c5623eeebbeaac Mon Sep 17 00:00:00 2001 From: matz Date: Fri, 31 Jan 2003 03:15:33 +0000 Subject: * parse.y (yylex): remove EXPR_CMDARG according to the RHG book. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- random.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'random.c') diff --git a/random.c b/random.c index b202a0244f..72fb4545ba 100644 --- a/random.c +++ b/random.c @@ -214,6 +214,8 @@ rb_f_rand(argc, argv, obj) } vmax = rb_dbl2big(RFLOAT(vmax)->value); /* fall through */ + case T_BIGNUM: + bignum: { long len = RBIGNUM(vmax)->len; double *buf = ALLOCA_N(double, len); @@ -227,6 +229,9 @@ rb_f_rand(argc, argv, obj) max = 0; break; default: + vmax = rb_Integer(vmax); + if (TYPE(vmax) == T_BIGNUM) goto bignum: + case T_FIXNUM: max = NUM2LONG(vmax); break; } -- cgit v1.2.3