From: "h.shirosaki (Hiroshi Shirosaki)" Date: 2014-01-08T10:37:00+09:00 Subject: [ruby-core:59637] [ruby-trunk - Bug #8358] TestSprintf#test_float test failuer Issue #8358 has been updated by h.shirosaki (Hiroshi Shirosaki). In the case of using SSE2, -mstackrealign flag would be required for Windows. See #8349 ---------------------------------------- Bug #8358: TestSprintf#test_float test failuer https://bugs.ruby-lang.org/issues/8358#change-44163 Author: phasis68 (Heesob Park) Status: Assigned Priority: Immediate Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: current: 2.2.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/