diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2005-09-09 15:23:35 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2005-09-09 15:23:35 -0300 |
commit | 6dd3a73ca2b57b264dc1ad20e183f0efd1b9484d (patch) | |
tree | 4dac7d306e3a236ecd3c641c70e93a0a87ed9e26 /lvm.c | |
parent | 1e6a559b29dbbafaa90a1035f4a265cde0b5791c (diff) | |
download | lua-6dd3a73ca2b57b264dc1ad20e183f0efd1b9484d.tar.gz lua-6dd3a73ca2b57b264dc1ad20e183f0efd1b9484d.tar.bz2 lua-6dd3a73ca2b57b264dc1ad20e183f0efd1b9484d.zip |
detail (macro evaluates twice its arguments)
Diffstat (limited to 'lvm.c')
-rw-r--r-- | lvm.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lvm.c,v 2.53 2005/08/24 16:15:49 roberto Exp $ | 2 | ** $Id: lvm.c,v 2.54 2005/08/29 20:49:21 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 | */ |
@@ -568,8 +568,10 @@ void luaV_execute (lua_State *L, int nexeccalls) { | |||
568 | continue; | 568 | continue; |
569 | } | 569 | } |
570 | case OP_EQ: { | 570 | case OP_EQ: { |
571 | TValue *rb = RKB(i); | ||
572 | TValue *rc = RKC(i); | ||
571 | Protect( | 573 | Protect( |
572 | if (equalobj(L, RKB(i), RKC(i)) == GETARG_A(i)) | 574 | if (equalobj(L, rb, rc) == GETARG_A(i)) |
573 | dojump(L, pc, GETARG_sBx(*pc)); | 575 | dojump(L, pc, GETARG_sBx(*pc)); |
574 | ) | 576 | ) |
575 | pc++; | 577 | pc++; |