diff options
Diffstat (limited to 'lvm.c')
-rw-r--r-- | lvm.c | 14 |
1 files changed, 13 insertions, 1 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lvm.c,v 2.348 2018/02/26 14:16:05 roberto Exp roberto $ | 2 | ** $Id: lvm.c,v 2.349 2018/03/02 18:59:19 roberto Exp roberto $ |
3 | ** Lua virtual machine | 3 | ** Lua virtual machine |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -1552,6 +1552,18 @@ void luaV_execute (lua_State *L, CallInfo *ci) { | |||
1552 | } | 1552 | } |
1553 | vmbreak; | 1553 | vmbreak; |
1554 | } | 1554 | } |
1555 | vmcase(OP_UNDEF) { | ||
1556 | TValue *rb = vRB(i); | ||
1557 | luaT_keydef(L, vra, rb, 1); | ||
1558 | vmbreak; | ||
1559 | } | ||
1560 | vmcase(OP_ISDEF) { | ||
1561 | TValue *rb = vRB(i); | ||
1562 | TValue *rc = vRC(i); | ||
1563 | int res = luaT_keydef(L, rb, rc, 0); | ||
1564 | setbvalue(vra, res == GETARG_k(i)); | ||
1565 | vmbreak; | ||
1566 | } | ||
1555 | vmcase(OP_CALL) { | 1567 | vmcase(OP_CALL) { |
1556 | int b = GETARG_B(i); | 1568 | int b = GETARG_B(i); |
1557 | int nresults = GETARG_C(i) - 1; | 1569 | int nresults = GETARG_C(i) - 1; |