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 | |
| parent | 1e6a559b29dbbafaa90a1035f4a265cde0b5791c (diff) | |
| download | lua-6dd3a73ca2b57b264dc1ad20e183f0efd1b9484d.tar.gz lua-6dd3a73ca2b57b264dc1ad20e183f0efd1b9484d.tar.bz2 lua-6dd3a73ca2b57b264dc1ad20e183f0efd1b9484d.zip | |
detail (macro evaluates twice its arguments)
| -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++; |
