[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: 10 LOC program is too complex to be compiled
- From: Luiz Henrique de Figueiredo <lhf@...>
- Date: Mon, 27 Apr 2015 10:29:31 -0300
> If I had to take a wild guess it's the fact that you've defined 150
> local variables. :P Just because they all have the same name and
> therefore only one of them is accessible at all doesn't change the
> fact that you've just plunked 150 entries onto the stack. And then
> you've plunked a few more entries onto the stack (just for the
> duration of the expression) during the assembly of the table. The
> compiler observes that it's reserving too many stack slots and says
> "nope, you might crash the interpreter at run time if I let you
> execute this, stop that!"
That is exactly right:
http://www.lua.org/source/5.1/lcode.c.html#luaK_checkstack
http://www.lua.org/source/5.2/lcode.c.html#luaK_checkstack
http://www.lua.org/source/5.3/lcode.c.html#luaK_checkstack