diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-07-03 10:20:49 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-07-03 10:20:49 +0000 |
commit | 54952586fd5ff136843ecf581355a3da5d328f7b (patch) | |
tree | 8d285a56312839c037cff3ef1eb849a00d6d10cd /bootstraptest | |
parent | 309cef7e08eda2dd305fdee35e746fa71ea56e52 (diff) |
* proc.c (rb_vm_rewrite_dfp_in_errinfo): Fix `unexpected return'
occurs when a proc is called in ensure. [Backport #6460]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@36287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'bootstraptest')
-rw-r--r-- | bootstraptest/test_flow.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/bootstraptest/test_flow.rb b/bootstraptest/test_flow.rb index d40d814fbc..fc93a5a46c 100644 --- a/bootstraptest/test_flow.rb +++ b/bootstraptest/test_flow.rb @@ -543,6 +543,19 @@ assert_equal %Q{ENSURE\n}, %q{ end end e = Bug5234.new +}], + ['[ruby-dev:45656]', %q{ + class Bug6460 + include Enumerable + def each + begin + yield :foo + ensure + 1.times { Proc.new } + end + end + end + e = Bug6460.new }]].each do |bug, src| assert_equal "foo", src + %q{e.detect {true}}, bug assert_equal "true", src + %q{e.any? {true}}, bug |