Tested in ree-1.8.7-2011.03 and ruby-1.9.3-p484, probably good enough