Issue #10626 has been updated by Jarosaw Rzesztko.


I have seen #10460 and would not say this is an obvious duplicate. Here, itis not only that you do not get a stack overflow, it seems that the C stack grows up abnormally quickly when you nest lambdas and method calls, compared to just nesting method calls. If I run Ruby under GDB, the number of stack frames is not really all that big, e.g. Ruby can often easily handle stacks 3-4 times as big in terms of pure number of call frames, both on the Ruby and on the C level.

Also, the symptomps (error message, backtrace etc.) are different than whatpeople report in #10460.

----------------------------------------
Bug #10626: BUS error from nesting lambda's and calls to methods defined with define_method
https://bugs.ruby-lang.org/issues/10626#change-50538

* Author: Jarosaw Rzesztko
* Status: Open
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* ruby -v: 2.1.5
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
I get a BUS error from executing the following Ruby program: https://gist.github.com/jaroslawr/8579678d7c68a49208f0

I am on Gentoo Linux and Ruby 2.1.5, and have also tried Ruby 2.1.4, 2.1.3,..., down to 2.1.0. My colleagues The problem seems to lie in rapidly consuming stack space, and goes away when the stack size limit is increased with ulimit -s. For the real world context behind this, see the corresponding Rails issue I opened:

https://github.com/rails/rails/issues/18011



-- 
https://bugs.ruby-lang.org/