** generates an error for an undefined 'goto'. */
| 644 | ** generates an error for an undefined 'goto'. |
| 645 | */ |
| 646 | static l_noret undefgoto (LexState *ls, Labeldesc *gt) { |
| 647 | const char *msg; |
| 648 | if (eqstr(gt->name, luaS_newliteral(ls->L, "break"))) { |
| 649 | msg = "break outside loop at line %d"; |
| 650 | msg = luaO_pushfstring(ls->L, msg, gt->line); |
| 651 | } |
| 652 | else { |
| 653 | msg = "no visible label '%s' for <goto> at line %d"; |
| 654 | msg = luaO_pushfstring(ls->L, msg, getstr(gt->name), gt->line); |
| 655 | } |
| 656 | luaK_semerror(ls, msg); |
| 657 | } |
| 658 | |
| 659 | |
| 660 | static void leaveblock (FuncState *fs) { |
no test coverage detected