A return can have at most 254 values

This commit is contained in:
Roberto Ierusalimschy
2024-08-19 18:39:25 -03:00
parent 8b752ddf14
commit 3e88b72b8e
2 changed files with 13 additions and 0 deletions

View File

@@ -208,6 +208,8 @@ void luaK_ret (FuncState *fs, int first, int nret) {
case 1: op = OP_RETURN1; break;
default: op = OP_RETURN; break;
}
if (nret + 1 > MAXARG_B)
luaX_syntaxerror(fs->ls, "too many returns");
luaK_codeABC(fs, op, first, nret + 1, 0);
}