Issue #8358 has been updated by luislavena (Luis Lavena).

Category set to build
Status changed from Open to Assigned
Assignee set to naruse (Yui NARUSE)
Target version set to current: 2.1.0

naruse: Can we commit the patch?
----------------------------------------
Bug #8358: TestSprintf#test_float test failuer on mingw32
https://bugs.ruby-lang.org/issues/8358#change-39433

Author: phasis68 (Heesob Park)
Status: Assigned
Priority: Normal
Assignee: naruse (Yui NARUSE)
Category: build
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-05-01) [i386-mingw32]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN


I noticed TestSprintf#test_float
http://ci.rubyinstaller.org/job/ruby-trunk-x86-test-all/1287/console
  1) Failure:
TestSprintf#test_float [C:/Users/Worker/Jenkins/workspace/ruby-trunk-x86-build/test/ruby/test_sprintf.rb:193]:
[ruby-dev:42551].
<"0x1p+2"> expected but was
<"0x1p+1">.

This failure is due to r40404.

And Actually, this issue is almost same to bug #8299.
ruby_hdtoa function requires 53-bit precision 
but mingw32 compiler is 64-bit precision.

There are 2 possible workarounds.

1. adding  -msse2 -mfpmath=sse flag when compiling.
2. adding  _control87(_PC_53, _MCW_PC) when running.



-- 
http://bugs.ruby-lang.org/