diff options
Diffstat (limited to 'src/lcode.c')
| -rw-r--r-- | src/lcode.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lcode.c b/src/lcode.c index 87616140ebe1..3f78370c6eed 100644 --- a/src/lcode.c +++ b/src/lcode.c @@ -35,6 +35,7 @@ #define MAXREGS 255 +/* (note that expressions VJMP also have jumps.) */ #define hasjumps(e) ((e)->t != (e)->f) @@ -985,7 +986,7 @@ void luaK_exp2anyregup (FuncState *fs, expdesc *e) { ** or it is a constant. */ void luaK_exp2val (FuncState *fs, expdesc *e) { - if (hasjumps(e)) + if (e->k == VJMP || hasjumps(e)) luaK_exp2anyreg(fs, e); else luaK_dischargevars(fs, e); |
