ruby-changes:4760
From: ko1@a...
Date: Thu, 1 May 2008 23:20:37 +0900 (JST)
Subject: [ruby-changes:4760] nobu - Ruby:r16254 (trunk): * bignum.c (rb_big_divide): return an integer for idiv.
nobu 2008-05-01 23:20:15 +0900 (Thu, 01 May 2008) New Revision: 16254 Modified files: trunk/ChangeLog trunk/bignum.c Log: * bignum.c (rb_big_divide): return an integer for idiv. [ruby-dev:34553] http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=16254&r2=16253&diff_format=u http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/bignum.c?r1=16254&r2=16253&diff_format=u Index: ChangeLog =================================================================== --- ChangeLog (revision 16253) +++ ChangeLog (revision 16254) @@ -1,3 +1,8 @@ +Thu May 1 23:20:12 2008 Nobuyoshi Nakada <nobu@r...> + + * bignum.c (rb_big_divide): return an integer for idiv. + [ruby-dev:34553] + Thu May 1 20:47:30 2008 Yukihiro Matsumoto <matz@r...> * hash.c (rb_hash_s_create): should access converted hash value. Index: bignum.c =================================================================== --- bignum.c (revision 16253) +++ bignum.c (revision 16254) @@ -1815,7 +1815,15 @@ break; case T_FLOAT: - return DOUBLE2NUM(rb_big2dbl(x) / RFLOAT_VALUE(y)); + { + double div = rb_big2dbl(x) / RFLOAT_VALUE(y); + if (op == '/') { + return DOUBLE2NUM(div); + } + else { + return LONG2NUM((long)div); + } + } default: return rb_num_coerce_bin(x, y, op); -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/