Issue #10847 has been reported by Yuki Nishijima.
----------------------------------------
Bug #10847: SystemStackError after NameError prepends a module
https://bugs.ruby-lang.org/issues/10847
* Author: Yuki Nishijima
* Status: Open
* Priority: Normal
* Assignee:
* ruby -v: ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
The following code causes `SystemStackError`.
```ruby
module Foo
end
NameError.prepend Foo
foo rescue $!
```
And here is the full backtrace:
```
system_stack_error_from_name_error.rb:3:in `initialize': stack level too deep (SystemStackError)
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
... 10907 levels...
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `initialize'
from system_stack_error_from_name_error.rb:3:in `method_missing'
from system_stack_error_from_name_error.rb:3:in `<main>'
```
This happens on Ruby 2.0.0, 2,1,5, 2.2.0 and ruby-trunk(rev 49451).
--
https://bugs.ruby-lang.org/