From: "usa (Usaku NAKAMURA)" Date: 2012-12-19T21:38:51+09:00 Subject: [ruby-core:50983] [ruby-trunk - Bug #7454] PPTestModule test failuere on Windows 8 Issue #7454 has been updated by usa (Usaku NAKAMURA). Assignee changed from akr (Akira Tanaka) to usa (Usaku NAKAMURA) Ah, I see, it may be a bug of Object#object_id. I saw like problem recently... ---------------------------------------- Bug #7454: PPTestModule test failuere on Windows 8 https://bugs.ruby-lang.org/issues/7454#change-34861 Author: phasis68 (Heesob Park) Status: Assigned Priority: Normal Assignee: usa (Usaku NAKAMURA) Category: test Target version: 2.0.0 ruby -v: ruby 2.0.0dev (2012-11-23 trunk 37811) [x64-mswin64_110] I found following test failures with VC 2012 64bit compiler on Windows 8. [ 436/9569] PPTestModule::PPCycleTest#test_anonymous = 0.00 s 1) Failure: test_anonymous(PPTestModule::PPCycleTest) [C:/work/snapshot/test/test_pp.rb:151]: <"#<#:0x00001682e1a260>\n"> expected but was <"#<#:0x00000082e1a260>\n">. [ 439/9569] PPTestModule::PPCycleTest#test_object = 0.00 s 2) Failure: test_object(PPTestModule::PPCycleTest) [C:/work/snapshot/test/test_pp.rb:146]: <"#>\n"> expected but was <"#>\n">. [ 449/9569] PPTestModule::PPInspectTest#test_to_s_with_iv = 0.00 s 3) Failure: test_to_s_with_iv(PPTestModule::PPInspectTest) [C:/work/snapshot/test/test_pp.rb:109]: <"#\n"> expected but was <"#\n">. [ 450/9569] PPTestModule::PPInspectTest#test_to_s_without_iv = 0.00 s 4) Failure: test_to_s_without_iv(PPTestModule::PPInspectTest) [C:/work/snapshot/test/test_pp.rb:116]: <"#\n"> expected but was <"#\n">. The above error is related with the address range of Object allocation on Windows 8. The address is exceeded fixnum(32bit) range. But object_id is fixnum and pp module is based on object_id. Thus, pp module cannot restore the original address of the Object. C:\WINDOWS\system32>irb irb(main):001:0> a = Object.new => # irb(main):002:0> a.object_id => 731592160 irb(main):003:0> require 'pp' => true irb(main):004:0> PP.pp(a,'') => "#\n" -- http://bugs.ruby-lang.org/