From: "tenderlovemaking (Aaron Patterson)" Date: 2012-11-14T09:20:21+09:00 Subject: [ruby-core:49323] [ruby-trunk - Bug #7348][Open] marshaling an object by a float does not work Issue #7348 has been reported by tenderlovemaking (Aaron Patterson). ---------------------------------------- Bug #7348: marshaling an object by a float does not work https://bugs.ruby-lang.org/issues/7348 Author: tenderlovemaking (Aaron Patterson) Status: Open Priority: Normal Assignee: Category: Target version: ruby -v: ruby 2.0.0dev (2012-11-14 trunk 37650) [x86_64-darwin12.2.1] The below `calls` object doesn't round trip through marshal on edge ruby: def test_marshal_object_and_float e = Object.new calls = [] calls << [2.0, e] calls << [e] assert_equal calls, Marshal.load(Marshal.dump(calls)) end When I run this test case, for some reason, the float takes the place of the object in the second array: [36/82] TestMarshal#test_marshal_object_and_float = 0.00 s 1) Failure: test_marshal_object_and_float(TestMarshal) [/Users/aaron/git/ruby/test/ruby/test_marshal.rb:40]: <[[2.0, #], [#]]> expected but was <[[2.0, #], [2.0]]>. I've attached a failing test case. -- http://bugs.ruby-lang.org/