diff options
| author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-07-11 05:00:02 +0000 |
|---|---|---|
| committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-07-11 05:00:02 +0000 |
| commit | 872f8b5373e4643e196660c70e8ee693e59163d2 (patch) | |
| tree | a603c9435fcf3c432ecc1389be508a3aaa7cd4ca /ext/bigdecimal/lib | |
| parent | 883324e0dae7782e1e3fdf67240a655b2ad44c45 (diff) | |
* bignum.c (bignorm): sizeof(long) may be smaller than
sizeof(VALUE). [ruby-dev:29013]
* ruby.h (FIXNUM_MAX): fixnum may be bigger than long.
* ruby.h (SIGNED_VALUE): signed integer of size of VALUE.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@10510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/bigdecimal/lib')
| -rw-r--r-- | ext/bigdecimal/lib/bigdecimal/util.rb | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/ext/bigdecimal/lib/bigdecimal/util.rb b/ext/bigdecimal/lib/bigdecimal/util.rb index 2c17aa6b8..09e926acd 100644 --- a/ext/bigdecimal/lib/bigdecimal/util.rb +++ b/ext/bigdecimal/lib/bigdecimal/util.rb @@ -46,11 +46,10 @@ class BigDecimal < Numeric numerator = sign*digits.to_i denomi_power = power - digits.size # base is always 10 if denomi_power < 0 - denominator = base ** (-denomi_power) + Rational(numerator,base ** (-denomi_power)) else - denominator = base ** denomi_power + Rational(numerator * (base ** denomi_power),1) end - Rational(numerator,denominator) end end |
