aboutsummaryrefslogtreecommitdiff
path: root/lprefix.h
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2021-10-29 13:41:24 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2021-10-29 13:41:24 -0300
commit1fce5bea817de50e055a84c153a975f25bfcf493 (patch)
tree294645bf9a85557026d8c99d74c2eac50a74302e /lprefix.h
parent3699446aaf5c7a07af028b1ae43cf52d2d4dda59 (diff)
downloadlua-1fce5bea817de50e055a84c153a975f25bfcf493.tar.gz
lua-1fce5bea817de50e055a84c153a975f25bfcf493.tar.bz2
lua-1fce5bea817de50e055a84c153a975f25bfcf493.zip
More uniform implementation for tail calls
'luaD_pretailcall' mimics 'luaD_precall', handling call metamethods and calling C functions directly. That makes the code in the interpreter loop simpler. This commit also goes back to emulating the tail call in 'luaD_precall' with a goto, as C compilers may not do proper tail calls and the C stack can overflow much sooner than the Lua stack (which grows as the metamethod is added to it).
Diffstat (limited to 'lprefix.h')
0 files changed, 0 insertions, 0 deletions