diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1994-11-17 19:11:37 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1994-11-17 19:11:37 -0200 |
| commit | aa4cd37adfdeb84b8137d3fccdb28a49a3b6d9e5 (patch) | |
| tree | e6ae5845f5c894b020831bcb9fe3340a4b5ab1c4 /lua.stx | |
| parent | a84aa11f71be730d554aa208d2b40ad28f2c9e05 (diff) | |
| download | lua-github-aa4cd37adfdeb84b8137d3fccdb28a49a3b6d9e5.tar.gz | |
small bug corrected
Diffstat (limited to 'lua.stx')
| -rw-r--r-- | lua.stx | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -1,6 +1,6 @@ %{ -char *rcs_luastx = "$Id: lua.stx,v 3.7 1994/11/17 18:59:06 roberto Exp roberto $"; +char *rcs_luastx = "$Id: lua.stx,v 3.8 1994/11/17 19:09:46 roberto Exp roberto $"; #include <stdio.h> #include <stdlib.h> @@ -237,9 +237,6 @@ function : FUNCTION NAME Word func = luaI_findsymbol($2); s_tag(func) = LUA_T_FUNCTION; s_bvalue(func) = $4; -#if LISTING - PrintCode(funcCode,funcCode+pc); -#endif } ; @@ -251,9 +248,6 @@ method : FUNCTION NAME ':' NAME } body { -#if LISTING - PrintCode(funcCode,funcCode+pc); -#endif /* assign function to table field */ pc=maincode; basepc=*initcode; maxcurr=maxmain; nlocalvar=0; @@ -273,6 +267,9 @@ body : '(' parlist ')' block END $$ = newvector(pc, Byte); memcpy($$, basepc, pc*sizeof(Byte)); funcCode = basepc; maxcode=maxcurr; +#if LISTING + PrintCode(funcCode,funcCode+pc); +#endif } ; @@ -692,7 +689,10 @@ static void codeIf (Long thenAdd, Long elseAdd) { Long elseinit = elseAdd+sizeof(Word)+1; if (pc == elseinit) /* no else */ + { pc -= sizeof(Word)+1; + elseinit = pc; + } else { basepc[elseAdd] = JMP; |
