From fabb2fed252c634d9196813d452667e8a0ed80ac Mon Sep 17 00:00:00 2001 From: nagachika Date: Sun, 4 Aug 2019 14:29:17 +0000 Subject: merge revision(s) 66977: [Backport #15578] Revert r63383, r63248 "compile.c: copy a short insn with leave" When copying `leave` insn, TRACE also should be copied if it is present, but this optimization is trivial and not worth the complexity. [ruby-core:91366] [Bug #15578] 4cae5353c03009beb1e0a1619422072773580609 5afd479de63b6609ddcd1510da94d2c1ac384f7f git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_6@67726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/coverage/test_coverage.rb | 4 ++-- test/ruby/test_settracefunc.rb | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/coverage/test_coverage.rb b/test/coverage/test_coverage.rb index 6a58706440..30523c341a 100644 --- a/test/coverage/test_coverage.rb +++ b/test/coverage/test_coverage.rb @@ -171,8 +171,8 @@ class TestCoverage < Test::Unit::TestCase result = { :branches => { [:"&.", 0, 1, 0, 1, 8] => { - [:then, 1, 1, 0, 1, 8] => 1, - [:else, 2, 1, 0, 1, 8] => 0, + [:then, 1, 1, 0, 1, 8] => 0, + [:else, 2, 1, 0, 1, 8] => 1, }, }, } diff --git a/test/ruby/test_settracefunc.rb b/test/ruby/test_settracefunc.rb index 2ada093f8d..6021038fe9 100644 --- a/test/ruby/test_settracefunc.rb +++ b/test/ruby/test_settracefunc.rb @@ -2115,4 +2115,16 @@ class TestSetTraceFunc < Test::Unit::TestCase } assert_equal [], events end + + def test_return_event_with_rescue + obj = Object.new + def obj.example + 1 if 1 == 1 + rescue + end + ok = false + tp = TracePoint.new(:return) {ok = true} + tp.enable {obj.example} + assert ok, "return event should be emitted" + end end -- cgit v1.2.3