diff options
author | Mike Pall <mike> | 2009-12-29 01:38:26 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2009-12-29 01:38:26 +0100 |
commit | 374f53471528e1592d9075c47e579d2f3c546beb (patch) | |
tree | 46fabaa61de90e0bf232de21ab70370eb61af6c1 /src/lj_func.c | |
parent | 8a9cfa4b4592e50be1903b83d28c8ea2fbc4aa43 (diff) | |
download | luajit-374f53471528e1592d9075c47e579d2f3c546beb.tar.gz luajit-374f53471528e1592d9075c47e579d2f3c546beb.tar.bz2 luajit-374f53471528e1592d9075c47e579d2f3c546beb.zip |
Logical 'not' must be sign-extended for address operands.
Diffstat (limited to 'src/lj_func.c')
-rw-r--r-- | src/lj_func.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_func.c b/src/lj_func.c index af4f424e..61a810f2 100644 --- a/src/lj_func.c +++ b/src/lj_func.c | |||
@@ -169,7 +169,7 @@ GCfunc *lj_func_newL_gc(lua_State *L, GCproto *pt, GCfuncL *parent) | |||
169 | nuv = fn->l.nupvalues; | 169 | nuv = fn->l.nupvalues; |
170 | base = L->base; | 170 | base = L->base; |
171 | for (i = 0; i < nuv; i++) { | 171 | for (i = 0; i < nuv; i++) { |
172 | int v = pt->uv[i]; | 172 | ptrdiff_t v = pt->uv[i]; |
173 | GCupval *uv = v < 0 ? &gcref(puv[~v])->uv : func_finduv(L, base + v); | 173 | GCupval *uv = v < 0 ? &gcref(puv[~v])->uv : func_finduv(L, base + v); |
174 | setgcref(fn->l.uvptr[i], obj2gco(uv)); | 174 | setgcref(fn->l.uvptr[i], obj2gco(uv)); |
175 | } | 175 | } |