commit 3c2cf9db672bb18dde960ec445a3c98c56435f98
parent 0b71bfd6af466b2f195545a9348c9ba5c5d40dcc
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date: Mon, 13 Jun 2005 11:38:57 -0300
some extra consistency checks
Diffstat:
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/ldebug.c b/ldebug.c
@@ -1,5 +1,5 @@
/*
-** $Id: ldebug.c,v 2.21 2005/05/31 14:25:18 roberto Exp roberto $
+** $Id: ldebug.c,v 2.22 2005/06/13 14:15:54 roberto Exp roberto $
** Debug Interface
** See Copyright Notice in lua.h
*/
@@ -275,8 +275,11 @@ LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) {
static int precheck (const Proto *pt) {
check(pt->maxstacksize <= MAXSTACK);
- check(pt->sizelineinfo == pt->sizecode || pt->sizelineinfo == 0);
lua_assert(pt->numparams+(pt->is_vararg & VARARG_HASARG) <= pt->maxstacksize);
+ lua_assert(!(pt->is_vararg & VARARG_NEEDSARG) ||
+ (pt->is_vararg & VARARG_HASARG));
+ check(pt->sizeupvalues <= pt->nups);
+ check(pt->sizelineinfo == pt->sizecode || pt->sizelineinfo == 0);
check(GET_OPCODE(pt->code[pt->sizecode-1]) == OP_RETURN);
return 1;
}