Browse Source

bug: cannot "skip" labels after if-goto before the jump over the

'then' part
pull/11/head
Roberto Ierusalimschy 8 years ago
parent
commit
5ecb31003f
  1. 4
      lparser.c

4
lparser.c

@ -1,5 +1,5 @@
/*
** $Id: lparser.c,v 2.156 2017/04/20 19:53:55 roberto Exp roberto $
** $Id: lparser.c,v 2.157 2017/04/28 20:57:45 roberto Exp roberto $
** Lua Parser
** See Copyright Notice in lua.h
*/
@ -1400,7 +1400,7 @@ static void test_then_block (LexState *ls, int *escapelist) {
luaK_goiffalse(ls->fs, &v); /* will jump to label if condition is true */
enterblock(fs, &bl, 0); /* must enter block before 'goto' */
gotostat(ls, v.t); /* handle goto/break */
skipnoopstat(ls); /* skip other no-op statements */
while (testnext(ls, ';')) {} /* skip colons */
if (block_follow(ls, 0)) { /* 'goto' is the entire block? */
leaveblock(fs);
return; /* and that is it */

Loading…
Cancel
Save