** generates an error for an undefined 'goto'. */
| 656 | ** generates an error for an undefined 'goto'. |
| 657 | */ |
| 658 | static l_noret undefgoto (LexState *ls, Labeldesc *gt) { |
| 659 | const char *msg; |
| 660 | if (eqstr(gt->name, luaS_newliteral(ls->L, "break"))) { |
| 661 | msg = "break outside loop at line %d"; |
| 662 | msg = luaO_pushfstring(ls->L, msg, gt->line); |
| 663 | } |
| 664 | else { |
| 665 | msg = "no visible label '%s' for <goto> at line %d"; |
| 666 | msg = luaO_pushfstring(ls->L, msg, getstr(gt->name), gt->line); |
| 667 | } |
| 668 | luaK_semerror(ls, msg); |
| 669 | } |
| 670 | |
| 671 | |
| 672 | static void leaveblock (FuncState *fs) { |
no test coverage detected