From the Changelog
* eval.c (eval): warning during eval should not cause deadlock.
[ruby-talk:98651]
If I've well understood the patch I'm not sure that it's a good idea to
do it like this
svg% cat b.rb
#!./ruby
def foo(*a) p "here"; end
Thread.new { $SAFE=4; eval("foo foo foo") }.value
svg%
svg% ./ruby -v b.rb
ruby 1.9.0 (2004-05-13) [i686-linux]
(eval):1: warning: parenthesize argument(s) for future version
"here"
"here"
"here"
svg%
Guy Decoux