marshaling an object by a float does not work
calls object doesn't round trip through marshal on edge ruby:
e = Object.new
calls = 
calls << [2.0, e]
calls << [e]
assert_equal calls, Marshal.load(Marshal.dump(calls))
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
<[[2.0, #Object:0x007fa5c20b08a0], [#Object:0x007fa5c20b08a0]]> expected but was
<[[2.0, #Object:0x007fa5c20b05a8], [2.0]]>.
I've attached a failing test case.