mirror of
https://github.com/ruby/ruby.git
synced 2025-08-27 23:16:42 +02:00
* util.c (ruby_strtod): this code uses FPU's rounding system.
But x86's FPU calculates double precision floating-point numbers in 80bit precision, so it fails to round the value. So ensure the value is assigned a variable. [ruby-dev:42551] see also [ruby-math:00802] http://www.shudo.net/java-grandprix99/strictfp/ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
b3c7867df7
commit
c383fbf93f
3 changed files with 16 additions and 2 deletions
|
@ -190,6 +190,8 @@ class TestSprintf < Test::Unit::TestCase
|
|||
sprintf("%20.0f", 36893488147419107329.0))
|
||||
assert_equal(" Inf", sprintf("% 0e", 1.0/0.0), "moved from btest/knownbug")
|
||||
assert_equal(" -0.", sprintf("%#10.0f", -0.5), "[ruby-dev:42552]")
|
||||
assert_equal("0x1.p+2", sprintf('%.0a', Float('0x1.fp+1')), "[ruby-dev:42551]")
|
||||
assert_equal("-0x1.0p+2", sprintf('%.0a', Float('-0x1.ffp+1')), "[ruby-dev:42551]")
|
||||
end
|
||||
|
||||
def test_float_hex
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue