ruby-changes:15191
From: akr <ko1@a...>
Date: Sun, 28 Mar 2010 07:14:46 +0900 (JST)
Subject: [ruby-changes:15191] Ruby:r27071 (trunk): * time.c (mul): condition refined.
akr 2010-03-28 07:14:23 +0900 (Sun, 28 Mar 2010) New Revision: 27071 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=27071 Log: * time.c (mul): condition refined. Modified files: trunk/ChangeLog trunk/time.c Index: time.c =================================================================== --- time.c (revision 27070) +++ time.c (revision 27071) @@ -252,18 +252,22 @@ if (FIXNUM_P(x) && FIXNUM_P(y)) { #if HAVE_LONG_LONG && SIZEOF_LONG * 2 <= SIZEOF_LONG_LONG LONG_LONG ll = (LONG_LONG)FIX2LONG(x) * FIX2LONG(y); - if (FIXABLE(ll)) return LONG2FIX(ll); + if (FIXABLE(ll)) + return LONG2FIX(ll); return LL2NUM(ll); #else long a, b, c; a = FIX2LONG(x); - if (a == 0) return x; + if (a == 0) + return x; b = FIX2LONG(y); c = a * b; - if (c / a == b && FIXABLE(c)) return LONG2FIX(c); + if (c / a == b) + return LONG2NUM(c); #endif } - if (TYPE(x) == T_BIGNUM) return rb_big_mul(x, y); + if (TYPE(x) == T_BIGNUM) + return rb_big_mul(x, y); return rb_funcall(x, '*', 1, y); } Index: ChangeLog =================================================================== --- ChangeLog (revision 27070) +++ ChangeLog (revision 27071) @@ -1,5 +1,9 @@ -2010-03-27 Tanaka Akira <akr@f...> +Sun Mar 28 07:12:41 2010 Tanaka Akira <akr@f...> + * time.c (mul): condition refined. + +Sun Mar 28 02:14:13 2010 Tanaka Akira <akr@f...> + * time.c: fix previos commit. Sat Mar 27 23:17:52 2010 Tanaka Akira <akr@f...> -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/