[ruby-core:115502] [Ruby master Bug#8299] Minor error in float parsing

Issue #8299 has been updated by naruse (Yui NARUSE). Status changed from Assigned to Closed hdtoa has the rounding logic, but it doesn't work well on x87, but no one use x87 now. This issue is resolved. ---------------------------------------- Bug #8299: Minor error in float parsing https://bugs.ruby-lang.org/issues/8299#change-105431 * Author: bobjalex (Bob Alexander) * Status: Closed * Priority: Normal * Assignee: nobu (Nobuyoshi Nakada) * ruby -v: trunk ---------------------------------------- I encountered a float that either parses [slightly] differently (or converts to string differently) in Ruby than it does in Python or Java. This looks like a Ruby bug since the result "looks" incorrect. It is easily reproduced by entering the magic number (-1.1505945E-5) into irb. It behaves the same in 2.0 and 1.9. I'm using Windows. Below is an irb session that demonstrates. Also included are JRuby and Python trials that show better behavior. This issue is not causing me any problems, but just in case someone there is interested in looking into it... Bob
ruby -v ruby 2.0.0p0 (2013-02-24) [i386-mingw32]
irb irb(main):001:0> RUBY_VERSION => "2.0.0" irb(main):002:0> -1.1505945E-5 => -1.1505945000000001e-05
ruby19 -v ruby 1.9.3p392 (2013-02-22) [i386-mingw32]
irb19 irb(main):001:0> RUBY_VERSION => "1.9.3" irb(main):002:0> -1.1505945E-5 => -1.1505945000000001e-05 irb(main):002:0>
jirb irb(main):001:0> -1.1505945E-5 => -1.1505945e-05
python Python 2.7.4rc1 (default, Mar 24 2013, 14:34:32) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information.
-1.1505945E-5 -1.1505945e-05 repr(-1.1505945E-5) '-1.1505945e-05'
participants (1)
-
naruse (Yui NARUSE)