summaryrefslogtreecommitdiff
path: root/bootstraptest
diff options
context:
space:
mode:
authorktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-12-23 16:23:13 +0000
committerktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-12-23 16:23:13 +0000
commitdd834c683de09ae4f4ccfefbdaf4a36f20abc307 (patch)
tree9858f621b376e0d973ddfca4af6fa64fe9e126cf /bootstraptest
parentc6cbbd6eea91906d376636458fa24ebabc122beb (diff)
* vm_eval.c (send_internal): PASS_PASSED_BLOCK_TH must be placed
just before calling rb_call0. * bootstraptest/test_flow.rb: add a test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'bootstraptest')
-rw-r--r--bootstraptest/test_flow.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/bootstraptest/test_flow.rb b/bootstraptest/test_flow.rb
index d40d814..ed27395 100644
--- a/bootstraptest/test_flow.rb
+++ b/bootstraptest/test_flow.rb
@@ -549,3 +549,16 @@ assert_equal %Q{ENSURE\n}, %q{
assert_equal "false", src + %q{e.all? {false}}, bug
assert_equal "true", src + %q{e.include?(:foo)}, bug
end
+assert_equal %q{ok}, %q{
+ $x = :ok
+ o = Object.new
+ def o.inspect(*args)
+ yield if block_given?
+ super
+ end
+ begin
+ nil.public_send(o) {$x = :ng}
+ rescue
+ end
+ $x
+}