diff options
Diffstat (limited to 'lcode.c')
| -rw-r--r-- | lcode.c | 2 |
1 files changed, 2 insertions, 0 deletions
| @@ -724,6 +724,8 @@ static void const2exp (TValue *v, expdesc *e) { | |||
| 724 | */ | 724 | */ |
| 725 | void luaK_setreturns (FuncState *fs, expdesc *e, int nresults) { | 725 | void luaK_setreturns (FuncState *fs, expdesc *e, int nresults) { |
| 726 | Instruction *pc = &getinstruction(fs, e); | 726 | Instruction *pc = &getinstruction(fs, e); |
| 727 | if (nresults + 1 > MAXARG_C) | ||
| 728 | luaX_syntaxerror(fs->ls, "too many multiple results"); | ||
| 727 | if (e->k == VCALL) /* expression is an open function call? */ | 729 | if (e->k == VCALL) /* expression is an open function call? */ |
| 728 | SETARG_C(*pc, nresults + 1); | 730 | SETARG_C(*pc, nresults + 1); |
| 729 | else { | 731 | else { |
