Fix VM stack size calculation for class initializer assignments (#4426)

This patch fixes #4413.

JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik frobert@inf.u-szeged.hu
This commit is contained in:
Robert Fancsik
2021-01-08 14:08:55 +01:00
committed by GitHub
parent 238f9aab4a
commit b56fa43aa3
2 changed files with 25 additions and 0 deletions
+7
View File
@@ -2533,6 +2533,13 @@ parser_parse_class_fields (parser_context_t *context_p) /**< context */
if (class_field_type & PARSER_CLASS_FIELD_NORMAL)
{
parser_emit_cbc_literal (context_p, CBC_ASSIGN_PROP_THIS_LITERAL, literal_index);
/* Prepare stack slot for assignment property reference base. Needed by vm.c */
if (context_p->stack_limit == context_p->stack_depth)
{
context_p->stack_limit++;
JERRY_ASSERT (context_p->stack_limit <= PARSER_MAXIMUM_STACK_LIMIT);
}
}
else
{