diff -r lua-5.0/COPYRIGHT lua-5.0.2/COPYRIGHT 12c12 < Copyright (C) 2003 Tecgraf, PUC-Rio. --- > Copyright (C) 2003-2004 Tecgraf, PUC-Rio. diff -r lua-5.0/Makefile lua-5.0.2/Makefile 98a99,101 > newer: > @find . -newer MANIFEST -type f > diff -r lua-5.0/doc/readme.html lua-5.0.2/doc/readme.html 16c16 <
  • Reference manual --- >
  • Reference manual 31c31 < Tue Apr 1 14:35:18 EST 2003 --- > Thu Mar 11 23:08:56 BRT 2004 diff -r lua-5.0/include/lua.h lua-5.0.2/include/lua.h 2c2 < ** $Id: lua.h,v 1.175 2003/03/18 12:31:39 roberto Exp $ --- > ** $Id: lua.h,v 1.175b 2003/03/18 12:31:39 roberto Exp $ 17,18c17,18 < #define LUA_VERSION "Lua 5.0" < #define LUA_COPYRIGHT "Copyright (C) 1994-2003 Tecgraf, PUC-Rio" --- > #define LUA_VERSION "Lua 5.0.2" > #define LUA_COPYRIGHT "Copyright (C) 1994-2004 Tecgraf, PUC-Rio" 368c368 < * Copyright (C) 1994-2003 Tecgraf, PUC-Rio. All rights reserved. --- > * Copyright (C) 1994-2004 Tecgraf, PUC-Rio. All rights reserved. diff -r lua-5.0/src/ldo.c lua-5.0.2/src/ldo.c 2c2 < ** $Id: ldo.c,v 1.217 2003/04/03 13:35:34 roberto Exp $ --- > ** $Id: ldo.c,v 1.217a 2003/04/03 13:35:34 roberto Exp $ 325,326c325 < if (nargs >= L->top - L->base) < luaG_runerror(L, "cannot resume dead coroutine"); --- > lua_assert(nargs < L->top - L->base); 329c328,329 < else if (ci->state & CI_YIELD) { /* inside a yield? */ --- > else { /* inside a yield */ > lua_assert(ci->state & CI_YIELD); 344,345d343 < else < luaG_runerror(L, "cannot resume non-suspended coroutine"); 351a350,358 > static int resume_error (lua_State *L, const char *msg) { > L->top = L->ci->base; > setsvalue2s(L->top, luaS_new(L, msg)); > incr_top(L); > lua_unlock(L); > return LUA_ERRRUN; > } > > 355a363,368 > if (L->ci == L->base_ci) { > if (nargs >= L->top - L->base) > return resume_error(L, "cannot resume dead coroutine"); > } > else if (!(L->ci->state & CI_YIELD)) /* not inside a yield? */ > return resume_error(L, "cannot resume non-suspended coroutine"); diff -r lua-5.0/src/lgc.c lua-5.0.2/src/lgc.c 2c2 < ** $Id: lgc.c,v 1.171 2003/04/03 13:35:34 roberto Exp $ --- > ** $Id: lgc.c,v 1.171a 2003/04/03 13:35:34 roberto Exp $ 113c113,114 < void luaC_separateudata (lua_State *L) { --- > size_t luaC_separateudata (lua_State *L) { > size_t deadmem = 0; 127a129 > deadmem += sizeudata(gcotou(curr)->uv.len); 136a139 > return deadmem; 247c250 < if (!(ci->state & CI_C) && lim < ci->top) --- > if (lim < ci->top) 390c393 < static void checkSizes (lua_State *L) { --- > static void checkSizes (lua_State *L, size_t deadmem) { 400c403 < G(L)->GCthreshold = 2*G(L)->nblocks; /* new threshold */ --- > G(L)->GCthreshold = 2*G(L)->nblocks - deadmem; /* new threshold */ 454c457,458 < static void mark (lua_State *L) { --- > static size_t mark (lua_State *L) { > size_t deadmem; 467c471 < luaC_separateudata(L); /* separate userdata to be preserved */ --- > deadmem = luaC_separateudata(L); /* separate userdata to be preserved */ 475a480 > return deadmem; 480c485 < mark(L); --- > size_t deadmem = mark(L); 482c487 < checkSizes(L); --- > checkSizes(L, deadmem); diff -r lua-5.0/src/lgc.h lua-5.0.2/src/lgc.h 2c2 < ** $Id: lgc.h,v 1.19 2003/02/28 19:45:15 roberto Exp $ --- > ** $Id: lgc.h,v 1.19a 2003/02/28 19:45:15 roberto Exp $ 18c18 < void luaC_separateudata (lua_State *L); --- > size_t luaC_separateudata (lua_State *L); diff -r lua-5.0/src/lib/lbaselib.c lua-5.0.2/src/lib/lbaselib.c 2c2 < ** $Id: lbaselib.c,v 1.130 2003/04/03 13:35:34 roberto Exp $ --- > ** $Id: lbaselib.c,v 1.130b 2003/04/03 13:35:34 roberto Exp $ 276a277 > int n = lua_gettop(L); 280c281 < return lua_gettop(L) - 1; --- > return lua_gettop(L) - n; 327c328 < char buff[64]; --- > char buff[128]; diff -r lua-5.0/src/lib/liolib.c lua-5.0.2/src/lib/liolib.c 2c2 < ** $Id: liolib.c,v 2.39 2003/03/19 21:16:12 roberto Exp $ --- > ** $Id: liolib.c,v 2.39a 2003/03/19 21:16:12 roberto Exp $ 161c161 < if (lua_isnone(L, 1)) { --- > if (lua_isnone(L, 1) && lua_type(L, lua_upvalueindex(1)) == LUA_TTABLE) { 178c178 < char buff[32]; --- > char buff[128]; diff -r lua-5.0/src/lparser.c lua-5.0.2/src/lparser.c 2c2 < ** $Id: lparser.c,v 1.208 2003/04/03 13:35:34 roberto Exp $ --- > ** $Id: lparser.c,v 1.208a 2003/04/03 13:35:34 roberto Exp $ 1143a1144 > FuncState *fs = ls->fs; 1145c1146,1147 < init_exp(&v, VLOCAL, ls->fs->freereg++); --- > init_exp(&v, VLOCAL, fs->freereg); > luaK_reserveregs(fs, 1); 1148c1150,1152 < luaK_storevar(ls->fs, &v, &b); --- > luaK_storevar(fs, &v, &b); > /* debug information will only see the variable after this point! */ > getlocvar(fs, fs->nactvar - 1).startpc = fs->pc; diff -r lua-5.0/src/luac/Makefile lua-5.0.2/src/luac/Makefile 16c16 < $(CC) -o $@ $(MYLDFLAGS) $(OBJS) -L$(LIB) -llua -llualib $(EXTRA_LIBS) --- > $(CC) -o $@ $(MYLDFLAGS) $(OBJS) -L$(LIB) -llua -llualib $(EXTRA_LIBS) $(DLLIB) diff -r lua-5.0/src/luac/luac.c lua-5.0.2/src/luac/luac.c 2c2 < ** $Id: luac.c,v 1.44 2003/04/07 20:34:20 lhf Exp $ --- > ** $Id: luac.c,v 1.44a 2003/04/07 20:34:20 lhf Exp $ 184a185 > lua_lock(L); 185a187 > lua_unlock(L); diff -r lua-5.0/src/lvm.c lua-5.0.2/src/lvm.c 2c2 < ** $Id: lvm.c,v 1.284 2003/04/03 13:35:34 roberto Exp $ --- > ** $Id: lvm.c,v 1.284b 2003/04/03 13:35:34 roberto Exp $ 69c69 < if (mask > LUA_MASKLINE) { /* instruction-hook set? */ --- > if (mask & LUA_MASKCOUNT) { /* instruction-hook set? */ 402,403c402,403 < L->ci->u.l.pc = &pc; < if (L->hookmask & LUA_MASKCALL) --- > if (L->hookmask & LUA_MASKCALL) { > L->ci->u.l.pc = &pc; 404a405 > } 405a407 > L->ci->u.l.pc = &pc; 676,678c678 < lua_assert(ci->u.l.pc == &pc && < ttisfunction(ci->base - 1) && < (ci->state & CI_SAVEDPC)); --- > lua_assert(ttisfunction(ci->base - 1) && (ci->state & CI_SAVEDPC)); 779a780 > diff -r lua-5.0/test/luac.lua lua-5.0.2/test/luac.lua 4,6c4,6 < assert(arg[1]~=nil,"usage: lua luac.lua file.lua") < f=assert(io.open("luac.out","w")) < f:write(string.dump(loadfile(arg[1]))) --- > assert(arg[1]~=nil and arg[2]==nil,"usage: lua luac.lua file.lua") > f=assert(io.open("luac.out","wb")) > f:write(string.dump(assert(loadfile(arg[1])))) diff -r lua-5.0/test/table.lua lua-5.0.2/test/table.lua 8c8 < local _,_,a,b=string.find(l,'"?(%w+)"?%s*(.*)$') --- > local _,_,a,b=string.find(l,'"?([_%w]+)"?%s*(.*)$')