lu_byte is enough for those fields (maxstack < 256)

This commit is contained in:
Roberto Ierusalimschy 2002-03-05 09:42:47 -03:00
parent 6b0c38c2e7
commit 8a1a512c64
3 changed files with 11 additions and 11 deletions

View File

@ -1,5 +1,5 @@
/* /*
** $Id: lcode.c,v 1.1 2001/11/29 22:14:34 rieru Exp rieru $ ** $Id: lcode.c,v 1.89 2002/02/05 22:39:12 roberto Exp roberto $
** Code generator for Lua ** Code generator for Lua
** See Copyright Notice in lua.h ** See Copyright Notice in lua.h
*/ */
@ -176,7 +176,7 @@ void luaK_reserveregs (FuncState *fs, int n) {
if (fs->freereg > fs->f->maxstacksize) { if (fs->freereg > fs->f->maxstacksize) {
if (fs->freereg >= MAXSTACK) if (fs->freereg >= MAXSTACK)
luaK_error(fs->ls, "function or expression too complex"); luaK_error(fs->ls, "function or expression too complex");
fs->f->maxstacksize = cast(short, fs->freereg); fs->f->maxstacksize = cast(lu_byte, fs->freereg);
} }
} }

View File

@ -1,5 +1,5 @@
/* /*
** $Id: lfunc.c,v 1.1 2001/11/29 22:14:34 rieru Exp rieru $ ** $Id: lfunc.c,v 1.53 2001/12/21 17:31:35 roberto Exp roberto $
** Auxiliary functions to manipulate prototypes and closures ** Auxiliary functions to manipulate prototypes and closures
** See Copyright Notice in lua.h ** See Copyright Notice in lua.h
*/ */
@ -29,7 +29,7 @@ Closure *luaF_newCclosure (lua_State *L, int nelems) {
c->c.next = G(L)->rootcl; c->c.next = G(L)->rootcl;
G(L)->rootcl = c; G(L)->rootcl = c;
c->c.marked = 0; c->c.marked = 0;
c->c.nupvalues = cast(short, nelems); c->c.nupvalues = cast(lu_byte, nelems);
return c; return c;
} }
@ -40,7 +40,7 @@ Closure *luaF_newLclosure (lua_State *L, int nelems) {
c->c.next = G(L)->rootcl; c->c.next = G(L)->rootcl;
G(L)->rootcl = c; G(L)->rootcl = c;
c->l.marked = 0; c->l.marked = 0;
c->l.nupvalues = cast(short, nelems); c->l.nupvalues = cast(lu_byte, nelems);
return c; return c;
} }

View File

@ -1,5 +1,5 @@
/* /*
** $Id: lobject.h,v 1.1 2001/11/29 22:14:34 rieru Exp rieru $ ** $Id: lobject.h,v 1.124 2002/02/08 22:42:41 roberto Exp roberto $
** Type definitions for Lua objects ** Type definitions for Lua objects
** See Copyright Notice in lua.h ** See Copyright Notice in lua.h
*/ */
@ -147,11 +147,11 @@ typedef struct Proto {
int sizelineinfo; /* size of `lineinfo' */ int sizelineinfo; /* size of `lineinfo' */
int sizelocvars; int sizelocvars;
int lineDefined; int lineDefined;
short nupvalues; lu_byte nupvalues;
short numparams; lu_byte numparams;
short is_vararg; lu_byte is_vararg;
short maxstacksize; lu_byte maxstacksize;
short marked; lu_byte marked;
} Proto; } Proto;