diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-12 12:40:49 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-12 12:40:49 +0000 |
commit | d504f64a3b7b76195e449fd886cfe7d2b37b412f (patch) | |
tree | a3399f261333ac4c8f5d0d8b3623a4ba786bf41a /insns.def | |
parent | c13cd729bfdb5f5eb44ec681db4fea85f029a31f (diff) | |
download | ruby-d504f64a3b7b76195e449fd886cfe7d2b37b412f.tar.gz |
* insns.def (opt_succ): use LONG_MAX as maximum Fixnum VALUE.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'insns.def')
-rw-r--r-- | insns.def | 3 |
1 files changed, 1 insertions, 2 deletions
@@ -2304,8 +2304,7 @@ opt_succ const VALUE obj = INT2FIX(1); /* fixnum + INT2FIX(1) */ val = (recv + (obj & (~1))); - if ((~(recv ^ obj) & (recv ^ val)) & - ((VALUE)0x01 << ((sizeof(VALUE) * CHAR_BIT) - 1))) { + if ((~(recv ^ obj) & (recv ^ val)) & (LONG_MAX + 1)) { val = rb_big_plus(rb_int2big(FIX2LONG(recv)), rb_int2big(FIX2LONG(obj))); } |