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/