lua

A copy of the Lua development repository
Log | Files | Refs | README

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:
Mldebug.c | 7+++++--
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; }