ruby-changes:16656
From: mame <ko1@a...>
Date: Thu, 15 Jul 2010 21:55:37 +0900 (JST)
Subject: [ruby-changes:16656] Ruby:r28652 (trunk): * numeric.c (fix_divide): must not use rb_rational_new1 for coercion
mame 2010-07-15 21:55:23 +0900 (Thu, 15 Jul 2010) New Revision: 28652 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=28652 Log: * numeric.c (fix_divide): must not use rb_rational_new1 for coercion because it returns an argument itself when canonical mode is set. [ruby-core:31279] Modified files: trunk/ChangeLog trunk/numeric.c Index: ChangeLog =================================================================== --- ChangeLog (revision 28651) +++ ChangeLog (revision 28652) @@ -1,3 +1,9 @@ +Thu Jul 15 21:43:35 2010 Yusuke Endoh <mame@t...> + + * numeric.c (fix_divide): must not use rb_rational_new1 for coercion + because it returns an argument itself when canonical mode is set. + [ruby-core:31279] + Thu Jul 15 21:38:31 2010 Yusuke Endoh <mame@t...> * proc.c (bm_free): fix memory leak. [ruby-core:30869] [Bug #3466] Index: numeric.c =================================================================== --- numeric.c (revision 28651) +++ numeric.c (revision 28652) @@ -2429,7 +2429,7 @@ case T_RATIONAL: if (op == '/' && FIX2LONG(x) == 1) return rb_rational_reciprocal(y); - return rb_funcall(rb_rational_new1(x), op, 1, y); + /* fall through */ default: return rb_num_coerce_bin(x, y, op); } -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/