Update parser early return type in ESNEXT (#3742)

This patch updates the early return types in the parser to SyntaxError instead of ReferenceError
in ESNEXT

This patch also includes a lot of tests for LeftHandSideExpression validation when using the = operator

JerryScript-DCO-1.0-Signed-off-by: Adam Szilagyi aszilagy@inf.u-szeged.hu
This commit is contained in:
Szilagyi Adam
2020-07-06 13:36:28 +02:00
committed by GitHub
parent 97fc48132a
commit 69f917650e
40 changed files with 3362 additions and 37 deletions
+5
View File
@@ -1169,7 +1169,12 @@ parser_check_left_hand_side_expression (parser_context_t *context_p, /**< contex
else
{
/* Invalid LeftHandSide expression. */
#if ENABLED (JERRY_ESNEXT)
parser_raise_error (context_p, PARSER_ERR_INVALID_LHS_FOR_LOOP);
#else /* !ENABLED (JERRY_ESNEXT) */
parser_emit_cbc_ext (context_p, CBC_EXT_THROW_REFERENCE_ERROR);
#endif /* ENABLED (JERRY_ESNEXT) */
return CBC_ASSIGN;
}