classDefineMethodlamb=proc{return:good}define_method:foo,lambdefouterval=:bad# This is tricky, but works. If lamb properly returns, then the# return value will go into val before we run the ensure.## If lamb's return keeps unwinding incorrectly, val will still# have it's old value.## We can therefore use val to figure out what happened.beginval=foo()ensureifval != :goodreturn:badendendreturnvalendend
The text was updated successfully, but these errors were encountered:
Originally from http://jira.codehaus.org/browse/JRUBY-6122
The text was updated successfully, but these errors were encountered: