diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2002-11-21 13:46:20 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2002-11-21 13:46:20 -0200 |
| commit | 2e4e888de02d248fc2688dd740de92f8f4f56656 (patch) | |
| tree | a99cc81e3afaf1c7939bb5bb48bbf0b896de1c3f | |
| parent | ddc144e4d297e5e008f5693a568a1c74ac3e4f54 (diff) | |
| download | lua-2e4e888de02d248fc2688dd740de92f8f4f56656.tar.gz lua-2e4e888de02d248fc2688dd740de92f8f4f56656.tar.bz2 lua-2e4e888de02d248fc2688dd740de92f8f4f56656.zip | |
Lua functions must have a frame or a saved pc.
| -rw-r--r-- | lgc.c | 3 |
1 files changed, 2 insertions, 1 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lgc.c,v 1.159 2002/11/18 11:01:55 roberto Exp roberto $ | 2 | ** $Id: lgc.c,v 1.160 2002/11/21 14:17:15 roberto Exp roberto $ |
| 3 | ** Garbage Collector | 3 | ** Garbage Collector |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -237,6 +237,7 @@ static void traversestack (GCState *st, lua_State *L1) { | |||
| 237 | lim = L1->top; | 237 | lim = L1->top; |
| 238 | for (ci = L1->base_ci; ci <= L1->ci; ci++) { | 238 | for (ci = L1->base_ci; ci <= L1->ci; ci++) { |
| 239 | lua_assert(ci->top <= L1->stack_last); | 239 | lua_assert(ci->top <= L1->stack_last); |
| 240 | lua_assert(ci->state & (CI_C | CI_HASFRAME | CI_SAVEDPC)); | ||
| 240 | if (!(ci->state & CI_C) && lim < ci->top) | 241 | if (!(ci->state & CI_C) && lim < ci->top) |
| 241 | lim = ci->top; | 242 | lim = ci->top; |
| 242 | } | 243 | } |
