Fix redeclaration related eval corner cases (#4886)

- Fix cases where a function parameter binding is redeclared inside a parameter initializer eval
- Fix cases where a let- or function arguments binding is redeclared inside a function block because
  there is a declaration in a function parameter initializer eval
- Also remove the ECMA_PARSE_CHAIN_INDEX_SHIFT macro, added a debugger_eval_chain_index named field to the jerry context instead

JerryScript-DCO-1.0-Signed-off-by: Adam Szilagyi aszilagy@inf.u-szeged.hu
This commit is contained in:
Szilagyi Adam
2021-12-15 12:45:10 +01:00
committed by GitHub
parent 768a209544
commit d650390e47
8 changed files with 158 additions and 191 deletions
+32 -2
View File
@@ -218,7 +218,37 @@ function f22 (arguments, [a = arguments]) {
}
f22(3.1, []);
function f23(arguments, eval = () => eval()) {
try {
function f23(p = eval("var arguments"), arguments)
{
}
f23()
assert(false)
} catch (e) {
assert(e instanceof SyntaxError)
}
try {
function f24(p = eval("var arguments")) {
let arguments;
}
f24()
assert(false)
} catch (e) {
assert(e instanceof SyntaxError)
}
try {
function f25(p = eval("var arguments")) {
function arguments() { }
}
f25()
assert(false)
} catch (e) {
assert(e instanceof SyntaxError)
}
function f26(arguments, eval = () => eval()) {
assert(arguments === undefined);
}
f23(undefined);
f26(undefined);
-147
View File
@@ -79,142 +79,6 @@
<test id="language/eval-code/indirect/var-env-func-init-global-new.js"><reason></reason></test>
<test id="language/eval-code/indirect/var-env-func-init-global-update-configurable.js"><reason></reason></test>
<test id="language/eval-code/indirect/var-env-var-init-global-new.js"><reason></reason></test>
<test id="language/eval-code/direct/arrow-fn-a-following-parameter-is-named-arguments-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/arrow-fn-a-following-parameter-is-named-arguments-arrow-func-declare-arguments-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/arrow-fn-a-preceding-parameter-is-named-arguments-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/arrow-fn-a-preceding-parameter-is-named-arguments-arrow-func-declare-arguments-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-decl-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-func-expr-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-meth-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/async-gen-named-func-expr-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-decl-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/func-expr-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-decl-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-named-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-func-expr-nameless-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/gen-meth-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-a-following-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-a-preceding-parameter-is-named-arguments-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-a-preceding-parameter-is-named-arguments-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-fn-body-cntns-arguments-func-decl-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-fn-body-cntns-arguments-func-decl-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-fn-body-cntns-arguments-lex-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-fn-body-cntns-arguments-lex-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-fn-body-cntns-arguments-var-bind-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-fn-body-cntns-arguments-var-bind-declare-arguments.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-no-pre-existing-arguments-bindings-are-present-declare-arguments-and-assign.js"><reason></reason></test>
<test id="language/eval-code/direct/meth-no-pre-existing-arguments-bindings-are-present-declare-arguments.js"><reason></reason></test>
<test id="language/expressions/class/static-init-await-reference.js"><reason></reason></test>
<test id="language/expressions/function/static-init-await-binding.js"><reason></reason></test>
<test id="language/expressions/function/static-init-await-reference.js"><reason></reason></test>
@@ -228,7 +92,6 @@
<test id="language/expressions/object/method-definition/static-init-await-reference-accessor.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/static-init-await-reference-generator.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/static-init-await-reference-normal.js"><reason></reason></test>
<test id="language/expressions/arrow-function/eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/arrow-function/param-dflt-yield-expr.js"><reason></reason></test>
<test id="language/expressions/assignment/S11.13.1_A5_T1.js"><reason></reason></test>
<test id="language/expressions/assignment/S11.13.1_A5_T2.js"><reason></reason></test>
@@ -267,14 +130,10 @@
<test id="language/expressions/compound-assignment/S11.13.2_A7.7_T4.js"><reason></reason></test>
<test id="language/expressions/compound-assignment/S11.13.2_A7.8_T4.js"><reason></reason></test>
<test id="language/expressions/compound-assignment/S11.13.2_A7.9_T4.js"><reason></reason></test>
<test id="language/expressions/function/eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/generators/eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/import.meta/distinct-for-each-module.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/early-errors-object-async-method-duplicate-parameters.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/early-errors-object-method-async-lineterminator.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/early-errors-object-method-duplicate-parameters.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/gen-meth-eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/meth-eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/postfix-decrement/S11.3.2_A5_T1.js"><reason></reason></test>
<test id="language/expressions/postfix-decrement/S11.3.2_A5_T2.js"><reason></reason></test>
<test id="language/expressions/postfix-decrement/S11.3.2_A5_T3.js"><reason></reason></test>
@@ -572,8 +431,6 @@
<test id="language/statements/for/let-block-with-newline.js"><reason></reason></test>
<test id="language/statements/for/let-identifier-with-newline.js"><reason></reason></test>
<test id="language/statements/for/scope-body-lex-open.js"><reason></reason></test>
<test id="language/statements/function/eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/statements/generators/eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/statements/if/cptn-else-false-abrupt-empty.js"><reason></reason></test>
<test id="language/statements/if/cptn-else-false-nrml.js"><reason></reason></test>
<test id="language/statements/if/cptn-else-true-abrupt-empty.js"><reason></reason></test>
@@ -3870,8 +3727,6 @@
<test id="language/block-scope/syntax/redeclaration/async-generator-name-redeclaration-attempt-with-generator.js"><reason></reason></test>
<test id="language/block-scope/syntax/redeclaration/function-name-redeclaration-attempt-with-async-generator.js"><reason></reason></test>
<test id="language/block-scope/syntax/redeclaration/generator-name-redeclaration-attempt-with-async-generator.js"><reason></reason></test>
<test id="language/expressions/async-generator/eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/async-generator/named-eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/async-generator/named-yield-promise-reject-next-catch.js"><reason></reason></test>
<test id="language/expressions/async-generator/named-yield-promise-reject-next-for-await-of-async-iterator.js"><reason></reason></test>
<test id="language/expressions/async-generator/named-yield-promise-reject-next.js"><reason></reason></test>
@@ -3919,7 +3774,6 @@
<test id="language/expressions/dynamic-import/usage/nested-async-gen-return-await-is-call-expression-square-brackets.js"><reason></reason></test>
<test id="language/expressions/dynamic-import/usage/nested-async-gen-return-await-returns-thenable.js"><reason></reason></test>
<test id="language/expressions/dynamic-import/usage/nested-async-gen-return-await-specifier-tostring.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/async-gen-meth-eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/async-gen-yield-promise-reject-next-catch.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/async-gen-yield-promise-reject-next-for-await-of-async-iterator.js"><reason></reason></test>
<test id="language/expressions/object/method-definition/async-gen-yield-promise-reject-next.js"><reason></reason></test>
@@ -3935,7 +3789,6 @@
<test id="language/module-code/top-level-await/syntax/for-await-await-expr-regexp.js"><reason></reason></test>
<test id="language/module-code/top-level-await/syntax/for-await-await-expr-template-literal.js"><reason></reason></test>
<test id="language/module-code/top-level-await/syntax/for-await-await-expr-this.js"><reason></reason></test>
<test id="language/statements/async-generator/eval-var-scope-syntax-err.js"><reason></reason></test>
<test id="language/statements/async-generator/return-undefined-implicit-and-explicit.js"><reason></reason></test>
<test id="language/statements/async-generator/yield-promise-reject-next-catch.js"><reason></reason></test>
<test id="language/statements/async-generator/yield-promise-reject-next-for-await-of-async-iterator.js"><reason></reason></test>