I’ve just realised that I’ve been inadvertently passing objects other
than strings to raise. As in this example:
raise RuntimeError, Foo.new
rescue => e
puts e.message.bar # prints bar in 1.8.6 MRI and 1.9.1 YARV
While this works, and is quite useful, I suspect it’s an artefact and
isn’t supported in other Ruby VMs?