diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2009-03-26 09:57:01 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2009-03-26 09:57:01 -0300 |
commit | 3dbf30540892b4b9c86e0cb663069cd478a0c900 (patch) | |
tree | 0a86ef692b04ce14b57734b0034452e32aadd610 /ldebug.c | |
parent | 6d0ae11c576106b490a53215c3f227b65ace2776 (diff) | |
download | lua-3dbf30540892b4b9c86e0cb663069cd478a0c900.tar.gz lua-3dbf30540892b4b9c86e0cb663069cd478a0c900.tar.bz2 lua-3dbf30540892b4b9c86e0cb663069cd478a0c900.zip |
no more support for old-style varargs
Diffstat (limited to 'ldebug.c')
-rw-r--r-- | ldebug.c | 8 |
1 files changed, 3 insertions, 5 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: ldebug.c,v 2.43 2009/03/04 13:32:29 roberto Exp roberto $ | 2 | ** $Id: ldebug.c,v 2.44 2009/03/10 17:14:37 roberto Exp roberto $ |
3 | ** Debug Interface | 3 | ** Debug Interface |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -278,8 +278,7 @@ LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) { | |||
278 | 278 | ||
279 | static int precheck (const Proto *pt) { | 279 | static int precheck (const Proto *pt) { |
280 | check(pt->maxstacksize <= MAXSTACK); | 280 | check(pt->maxstacksize <= MAXSTACK); |
281 | check(pt->numparams+(pt->is_vararg & VARARG_HASARG) <= pt->maxstacksize); | 281 | check(pt->numparams <= pt->maxstacksize); |
282 | check(!(pt->is_vararg & VARARG_NEEDSARG) || (pt->is_vararg & VARARG_HASARG)); | ||
283 | check(pt->sizeupvalues == pt->nups || pt->sizeupvalues == 0); | 282 | check(pt->sizeupvalues == pt->nups || pt->sizeupvalues == 0); |
284 | check(pt->sizelineinfo == pt->sizecode || pt->sizelineinfo == 0); | 283 | check(pt->sizelineinfo == pt->sizecode || pt->sizelineinfo == 0); |
285 | check(pt->sizecode > 0 && GET_OPCODE(pt->code[pt->sizecode-1]) == OP_RETURN); | 284 | check(pt->sizecode > 0 && GET_OPCODE(pt->code[pt->sizecode-1]) == OP_RETURN); |
@@ -445,8 +444,7 @@ static Instruction symbexec (const Proto *pt, int lastpc, int reg) { | |||
445 | break; | 444 | break; |
446 | } | 445 | } |
447 | case OP_VARARG: { | 446 | case OP_VARARG: { |
448 | check((pt->is_vararg & VARARG_ISVARARG) && | 447 | check(pt->is_vararg); |
449 | !(pt->is_vararg & VARARG_NEEDSARG)); | ||
450 | b--; | 448 | b--; |
451 | if (b == LUA_MULTRET) check(checkopenop(pt, pc)); | 449 | if (b == LUA_MULTRET) check(checkopenop(pt, pc)); |
452 | checkreg(pt, a+b-1); | 450 | checkreg(pt, a+b-1); |