ruby-changes:2535
From: ko1@a...
Date: 27 Nov 2007 10:47:53 +0900
Subject: [ruby-changes:2535] ko1 - Ruby:r14026 (trunk): * eval.c (rb_method_missing): fix stack trace.
ko1 2007-11-27 10:47:34 +0900 (Tue, 27 Nov 2007) New Revision: 14026 Modified files: trunk/ChangeLog trunk/bootstraptest/test_knownbug.rb trunk/bootstraptest/test_method.rb trunk/eval.c trunk/test/ruby/test_regexp.rb Log: * eval.c (rb_method_missing): fix stack trace. * bootstraptest/test_knownbug.rb: move solved tests. * bootstraptest/test_method.rb, test/ruby/test_regexp.rb: ditto. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14026&r2=14025 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/bootstraptest/test_method.rb?r1=14026&r2=14025 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/test/ruby/test_regexp.rb?r1=14026&r2=14025 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/eval.c?r1=14026&r2=14025 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/bootstraptest/test_knownbug.rb?r1=14026&r2=14025 Index: ChangeLog =================================================================== --- ChangeLog (revision 14025) +++ ChangeLog (revision 14026) @@ -1,3 +1,11 @@ +Tue Nov 27 10:45:45 2007 Koichi Sasada <ko1@a...> + + * eval.c (rb_method_missing): fix stack trace. + + * bootstraptest/test_knownbug.rb: move solved tests. + + * bootstraptest/test_method.rb, test/ruby/test_regexp.rb: ditto. + Tue Nov 27 09:57:42 2007 Koichi Sasada <ko1@a...> * insns.def, compile.c: fix to allow dsym for alias/undef. Index: bootstraptest/test_method.rb =================================================================== --- bootstraptest/test_method.rb (revision 14025) +++ bootstraptest/test_method.rb (revision 14026) @@ -1021,3 +1021,8 @@ :ok end } + +assert_not_match /method_missing/, %q{ + STDERR.reopen(STDOUT) + variable_or_mehtod_not_exist +} Index: bootstraptest/test_knownbug.rb =================================================================== --- bootstraptest/test_knownbug.rb (revision 14025) +++ bootstraptest/test_knownbug.rb (revision 14026) @@ -3,23 +3,6 @@ # So all tests will cause failure. # -assert_not_match /method_missing/, %q{ - STDERR.reopen(STDOUT) - variable_or_mehtod_not_exist -} - -assert_equal 'ok', %q{ - begin - Regexp.union( - "a", - Regexp.new("\x80".force_encoding("euc-jp")), - Regexp.new("\x80".force_encoding("utf-8"))) - :ng - rescue ArgumentError - :ok - end -} - assert_normal_exit %q{ STDERR.reopen(STDOUT) require 'yaml' Index: eval.c =================================================================== --- eval.c (revision 14025) +++ eval.c (revision 14026) @@ -1327,6 +1327,8 @@ args[n++] = rb_ary_new4(argc - 1, argv + 1); } exc = rb_class_new_instance(n, args, exc); + + th->cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(th->cfp); rb_exc_raise(exc); } Index: test/ruby/test_regexp.rb =================================================================== --- test/ruby/test_regexp.rb (revision 14025) +++ test/ruby/test_regexp.rb (revision 14026) @@ -37,4 +37,16 @@ def test_to_s assert_equal '(?-mix:\000)', Regexp.new("\0").to_s end + + def test_union + assert_equal :ok, begin + Regexp.union( + "a", + Regexp.new("\x80".force_encoding("euc-jp")), + Regexp.new("\x80".force_encoding("utf-8"))) + :ng + rescue ArgumentError + :ok + end + end end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml