[前][次][番号順一覧][スレッド一覧]

ruby-changes:32059

From: ko1 <ko1@a...>
Date: Wed, 11 Dec 2013 16:41:33 +0900 (JST)
Subject: [ruby-changes:32059] ko1:r44138 (trunk): revert r44133. See https://bugs.ruby-lang.org/issues/8886 details

ko1	2013-12-11 16:41:14 +0900 (Wed, 11 Dec 2013)

  New Revision: 44138

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=44138

  Log:
    revert r44133. See https://bugs.ruby-lang.org/issues/8886 details

  Modified files:
    trunk/ChangeLog
    trunk/eval.c
    trunk/test/minitest/test_minitest_unit.rb
    trunk/test/ruby/test_backtrace.rb
    trunk/test/ruby/test_settracefunc.rb
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 44137)
+++ ChangeLog	(revision 44138)
@@ -11,17 +11,6 @@ Wed Dec 11 15:36:15 2013  Aman Gupta <ru https://github.com/ruby/ruby/blob/trunk/ChangeLog#L11
 	  to optimize Hash#[]= and Array#[]= when called with Fixnum argument.
 	  [Bug #9227] [ruby-core:58956]
 
-Wed Dec 11 12:38:17 2013  Koichi Sasada  <ko1@a...>
-
-	* eval.c (rb_raise_jump): pop frame after setup exception.
-	  Patches by deivid (David Rodriguez). [Bug #8886]
-
-	* test/minitest/test_minitest_unit.rb: catch up this change.
-
-	* test/ruby/test_backtrace.rb: ditto.
-
-	* test/ruby/test_settracefunc.rb: ditto.
-
 Wed Dec 11 04:54:03 2013  Eric Hodel  <drbrain@s...>
 
 	* lib/rubygems:  Update to RubyGems master ec8ed22.  Notable changes
Index: eval.c
===================================================================
--- eval.c	(revision 44137)
+++ eval.c	(revision 44138)
@@ -688,10 +688,10 @@ rb_raise_jump(VALUE mesg) https://github.com/ruby/ruby/blob/trunk/eval.c#L688
     VALUE self = cfp->self;
     ID mid = cfp->me->called_id;
 
-    setup_exception(th, TAG_RAISE, mesg);
-
     th->cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(th->cfp);
 
+    setup_exception(th, TAG_RAISE, mesg);
+
     EXEC_EVENT_HOOK(th, RUBY_EVENT_C_RETURN, self, mid, klass, Qnil);
     rb_thread_raised_clear(th);
     JUMP_TAG(TAG_RAISE);
Index: test/ruby/test_backtrace.rb
===================================================================
--- test/ruby/test_backtrace.rb	(revision 44137)
+++ test/ruby/test_backtrace.rb	(revision 44138)
@@ -10,7 +10,7 @@ class TestBacktrace < Test::Unit::TestCa https://github.com/ruby/ruby/blob/trunk/test/ruby/test_backtrace.rb#L10
         e.backtrace
       end
     }.resume
-    assert_equal(2, bt.size)
+    assert_equal(1, bt.size)
     assert_match(/.+:\d+:.+/, bt[0])
   end
 
Index: test/ruby/test_settracefunc.rb
===================================================================
--- test/ruby/test_settracefunc.rb	(revision 44137)
+++ test/ruby/test_settracefunc.rb	(revision 44138)
@@ -257,7 +257,7 @@ class TestSetTraceFunc < Test::Unit::Tes https://github.com/ruby/ruby/blob/trunk/test/ruby/test_settracefunc.rb#L257
                  events.shift)
     assert_equal(["c-return", 5, :backtrace, Exception],
                  events.shift)
-    assert_equal(["raise", 5, :raise, Kernel],
+    assert_equal(["raise", 5, :test_raise, TestSetTraceFunc],
                  events.shift)
     assert_equal(["c-return", 5, :raise, Kernel],
                  events.shift)
@@ -517,7 +517,7 @@ class TestSetTraceFunc < Test::Unit::Tes https://github.com/ruby/ruby/blob/trunk/test/ruby/test_settracefunc.rb#L517
      [:c_return,20, "xyzzy", Exception,   :exception,       RuntimeError, :outer, raised_exc],
      [:c_call,  20, "xyzzy", Exception,   :backtrace,       raised_exc,  :outer, :nothing],
      [:c_return,20, "xyzzy", Exception,   :backtrace,       raised_exc,  :outer, nil],
-     [:raise,   20, "xyzzy", Kernel,      :raise,           self,        :outer, raised_exc],
+     [:raise,   20, "xyzzy", TestSetTraceFunc, :trace_by_tracepoint, self, :outer, raised_exc],
      [:c_return,20, "xyzzy", Kernel,      :raise,           self,        :outer, nil],
      [:c_call,  20, "xyzzy", Module,      :===,             RuntimeError,:outer, :nothing],
      [:c_return,20, "xyzzy", Module,      :===,             RuntimeError,:outer, true],
Index: test/minitest/test_minitest_unit.rb
===================================================================
--- test/minitest/test_minitest_unit.rb	(revision 44137)
+++ test/minitest/test_minitest_unit.rb	(revision 44138)
@@ -296,7 +296,6 @@ class TestMiniTestRunner < MetaMetaMetaT https://github.com/ruby/ruby/blob/trunk/test/minitest/test_minitest_unit.rb#L296
         1) Error:
       #<Class:0xXXX>#test_error:
       RuntimeError: unhandled exception
-          FILE:LINE:in \`raise\'
           FILE:LINE:in \`test_error\'
 
       2 tests, 1 assertions, 0 failures, 1 errors, 0 skips
@@ -324,7 +323,6 @@ class TestMiniTestRunner < MetaMetaMetaT https://github.com/ruby/ruby/blob/trunk/test/minitest/test_minitest_unit.rb#L323
         1) Error:
       #<Class:0xXXX>#test_something:
       RuntimeError: unhandled exception
-          FILE:LINE:in \`raise\'
           FILE:LINE:in \`teardown\'
 
       1 tests, 1 assertions, 0 failures, 1 errors, 0 skips
@@ -1212,7 +1210,6 @@ class TestMiniTestUnitTestCase < MiniTes https://github.com/ruby/ruby/blob/trunk/test/minitest/test_minitest_unit.rb#L1210
       Class: <SyntaxError>
       Message: <\"icky\">
       ---Backtrace---
-      FILE:LINE:in \`raise\'
       FILE:LINE:in \`test_assert_raises_triggered_different\'
       ---------------
     EOM
@@ -1236,7 +1233,6 @@ class TestMiniTestUnitTestCase < MiniTes https://github.com/ruby/ruby/blob/trunk/test/minitest/test_minitest_unit.rb#L1233
       Class: <SyntaxError>
       Message: <\"icky\">
       ---Backtrace---
-      FILE:LINE:in \`raise\'
       FILE:LINE:in \`test_assert_raises_triggered_different_msg\'
       ---------------
     EOM
@@ -1283,7 +1279,6 @@ class TestMiniTestUnitTestCase < MiniTes https://github.com/ruby/ruby/blob/trunk/test/minitest/test_minitest_unit.rb#L1279
       Class: <AnError>
       Message: <\"AnError\">
       ---Backtrace---
-      FILE:LINE:in \`raise\'
       FILE:LINE:in \`test_assert_raises_triggered_subclass\'
       ---------------
     EOM

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]