Actions
Bug #11667
closedRuby process crashes when TracePoint.new(:raise) is enabled and SystemStackError is raised
Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.3.0dev (2015-10-23 trunk 52247) [x86_64-linux]
Description
Let's say a TracePoint.new(:raise)
is enabled. When a method that recursively calls itself, the Ruby process will just die rather than raising a SystemStackError.
$ ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux]
$ irb
2.2.3 :001 > TracePoint.new(:raise){}.enable
=> false
2.2.3 :002 > def f(i); f(i-1); end; f(10_000)
/usr/local/rvm/rubies/ruby-2.2.3/bin/irb: exception reentered (fatal)
$ ruby -v
ruby 2.3.0dev (2015-10-23 trunk 52247) [x86_64-linux]
$ irb
head :001 > TracePoint.new(:raise){|tp| tp.raised_exception }.enable
=> false
head :002 > def f(i); f(i-1); end; f(10_000)
/usr/local/rvm/rubies/ruby-head/bin/irb: exception reentered (fatal)
I expect this code to raise SystemStackError
instead.
Actions
Like0
Like0Like0