Repository: jshint/jshint
Pull request #3540 (2021-03-01 03:24:18)

[[FEAT]] Add support for dynamic import

coveralls: 
[![Coverage Status](https://coveralls.io/builds/37517756/badge)](https://coveralls.io/builds/37517756)

Coverage remained the same at 100.0% when pulling **1619f62471fe9c7eb35a3cac9a05a3f1be5da4bd on jugglinmike:dynamic-import** into **b125dbea75c237cfd4553305f14d9d30fdd3a22c on jshint:v2.12.0**.

almercier: @jugglinmike We are pretty anxious to get v2.12.0 with these ESnext feature support, and this PR appears to be the last in the checklist but has been sitting for 29 days now. Is there anything I can do to help speed this up? 
jugglinmike: This is just waiting on review, so reminding me may be all you need to do!

@rwaldron @caitp Mind taking a look?

Patch:
diff --git a/src/jshint.js b/src/jshint.js
index ccaf3d51..3ffbee96 100644
--- a/src/jshint.js
+++ b/src/jshint.js
@@ -5576,10 +5576,22 @@ var JSHINT = (function() {
       }
     });
 
-    if (!mp) {
+    if (mp) {
+      return mp;
+    }
+
+    if (!checkPunctuator(state.tokens.next, "(")) {
       return state.syntax["(identifier)"].nud.call(this, context);
     }
-    return mp;
+
+    if (!state.inES11()) {
+      warning("W119", state.tokens.curr, "dynamic import", "11");
+    }
+
+    advance("(");
+    expression(context, 10);
+    advance(")");
+    return this;
   });
 
   var importSymbol = stmt("import", function(context) {
@@ -5686,8 +5698,9 @@ var JSHINT = (function() {
   importSymbol.reserved = true;
   importSymbol.meta = { isFutureReservedWord: true, es5: true };
   importSymbol.useFud = function() {
-    return !(checkPunctuator(state.tokens.next, ".") && peek().identifier);
+    return !(checkPunctuators(state.tokens.next, [".", "("]));
   };
+  importSymbol.rbp = 161;
 
   stmt("export", function(context) {
     var ok = true;
diff --git a/src/options.js b/src/options.js
index b3ab40a6..482575ea 100644
--- a/src/options.js
+++ b/src/options.js
@@ -1053,7 +1053,7 @@ exports.val = {
    *    Notable additions: optional catch bindings.
    *  - `11` - To enable language features introduced by ECMAScript 11. Notable
    *    additions: "export * as ns from 'module'", `import.meta`, the nullish
-   *    coalescing operator, and optional chaining.
+   *    coalescing operator, and optional chaining, and dynamic import.
    */
   esversion: 5
 };


Test patch:
diff --git a/tests/test262/expectations.txt b/tests/test262/expectations.txt
index 72fb2988..7863ce36 100644
--- a/tests/test262/expectations.txt
+++ b/tests/test262/expectations.txt
@@ -1391,62 +1391,6 @@ test/intl402/Intl/getCanonicalLocales/non-iana-canon.js(default)
 test/intl402/Intl/getCanonicalLocales/non-iana-canon.js(strict mode)
 test/language/expressions/class/constructor-this-tdz-during-initializers.js(default)
 test/language/expressions/class/constructor-this-tdz-during-initializers.js(strict mode)
-test/language/expressions/dynamic-import/always-create-new-promise.js(default)
-test/language/expressions/dynamic-import/always-create-new-promise.js(strict mode)
-test/language/expressions/dynamic-import/assign-expr-get-value-abrupt-throws.js(default)
-test/language/expressions/dynamic-import/assign-expr-get-value-abrupt-throws.js(strict mode)
-test/language/expressions/dynamic-import/await-import-evaluation.js(default)
-test/language/expressions/dynamic-import/await-import-evaluation.js(strict mode)
-test/language/expressions/dynamic-import/custom-primitive.js(default)
-test/language/expressions/dynamic-import/custom-primitive.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-cls-anon.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-cls-anon.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-cls-name-meth.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-cls-name-meth.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-cls-named.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-cls-named.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-cls-anon.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-cls-anon.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-cls-name-meth.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-cls-name-meth.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-cls-named.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-cls-named.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-fn-anon.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-fn-anon.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-fn-named.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-fn-named.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-gen-anon.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-gen-anon.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-gen-named.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-gen-named.js(strict mode)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-in.js(default)
-test/language/expressions/dynamic-import/eval-export-dflt-expr-in.js(strict mode)
-test/language/expressions/dynamic-import/eval-rqstd-once.js(default)
-test/language/expressions/dynamic-import/eval-rqstd-once.js(strict mode)
-test/language/expressions/dynamic-import/eval-self-once-module.js(default)
-test/language/expressions/dynamic-import/eval-self-once-module.js(strict mode)
-test/language/expressions/dynamic-import/eval-self-once-script.js(default)
-test/language/expressions/dynamic-import/eval-self-once-script.js(strict mode)
-test/language/expressions/dynamic-import/for-await-resolution-and-error-agen-yield.js(default)
-test/language/expressions/dynamic-import/for-await-resolution-and-error-agen-yield.js(strict mode)
-test/language/expressions/dynamic-import/for-await-resolution-and-error-agen.js(default)
-test/language/expressions/dynamic-import/for-await-resolution-and-error-agen.js(strict mode)
-test/language/expressions/dynamic-import/for-await-resolution-and-error.js(default)
-test/language/expressions/dynamic-import/for-await-resolution-and-error.js(strict mode)
-test/language/expressions/dynamic-import/imported-self-update.js(default)
-test/language/expressions/dynamic-import/imported-self-update.js(strict mode)
-test/language/expressions/dynamic-import/indirect-resolution.js(default)
-test/language/expressions/dynamic-import/indirect-resolution.js(strict mode)
-test/language/expressions/dynamic-import/returns-promise.js(default)
-test/language/expressions/dynamic-import/returns-promise.js(strict mode)
-test/language/expressions/dynamic-import/reuse-namespace-object-from-import.js(default)
-test/language/expressions/dynamic-import/reuse-namespace-object-from-import.js(strict mode)
-test/language/expressions/dynamic-import/reuse-namespace-object-from-script.js(default)
-test/language/expressions/dynamic-import/reuse-namespace-object-from-script.js(strict mode)
-test/language/expressions/dynamic-import/reuse-namespace-object.js(default)
-test/language/expressions/dynamic-import/reuse-namespace-object.js(strict mode)
-test/language/expressions/dynamic-import/update-to-dynamic-import.js(default)
-test/language/expressions/dynamic-import/update-to-dynamic-import.js(strict mode)
 test/language/statements/class/classelementname-abrupt-completion.js(default)
 test/language/statements/class/classelementname-abrupt-completion.js(strict mode)
 test/language/statements/class/static-classelementname-abrupt-completion.js(default)
@@ -4458,618 +4402,6 @@ test/language/expressions/class/elements/wrapped-in-sc-static-private-methods.js
 test/language/expressions/class/elements/wrapped-in-sc-static-private-methods.js(strict mode)
 test/language/expressions/class/elements/wrapped-in-sc-string-literal-names.js(default)
 test/language/expressions/class/elements/wrapped-in-sc-string-literal-names.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/additive-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/additive-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/array-literal.js(default)
-test/language/expressions/dynamic-import/assignment-expression/array-literal.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/arrow-function.js(default)
-test/language/expressions/dynamic-import/assignment-expression/arrow-function.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/await-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/await-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/await-identifier.js(default)
-test/language/expressions/dynamic-import/assignment-expression/await-identifier.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/call-expr-arguments.js(default)
-test/language/expressions/dynamic-import/assignment-expression/call-expr-arguments.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/call-expr-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/call-expr-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/call-expr-identifier.js(default)
-test/language/expressions/dynamic-import/assignment-expression/call-expr-identifier.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/cover-call-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/cover-call-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/cover-parenthesized-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/cover-parenthesized-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/identifier.js(default)
-test/language/expressions/dynamic-import/assignment-expression/identifier.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/import-meta.js(default)
-test/language/expressions/dynamic-import/assignment-expression/import-meta.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/lhs-assign-operator-assign-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/lhs-assign-operator-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/lhs-eq-assign-expr-nostrict.js(default)
-test/language/expressions/dynamic-import/assignment-expression/logical-and-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/logical-and-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/lhs-eq-assign-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/lhs-eq-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/logical-or-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/logical-or-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/member-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/member-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/new-target.js(default)
-test/language/expressions/dynamic-import/assignment-expression/new-target.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/object-literal.js(default)
-test/language/expressions/dynamic-import/assignment-expression/object-literal.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/ternary.js(default)
-test/language/expressions/dynamic-import/assignment-expression/ternary.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/tagged-function-call.js(default)
-test/language/expressions/dynamic-import/assignment-expression/tagged-function-call.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/this.js(default)
-test/language/expressions/dynamic-import/assignment-expression/this.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/unary-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/unary-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/yield-assign-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/yield-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/yield-expr.js(default)
-test/language/expressions/dynamic-import/assignment-expression/yield-expr.js(strict mode)
-test/language/expressions/dynamic-import/assignment-expression/yield-identifier.js(default)
-test/language/expressions/dynamic-import/assignment-expression/yield-star.js(default)
-test/language/expressions/dynamic-import/assignment-expression/yield-star.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-arrow-import-catch-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-await-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-arrow-function-return-await-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-await-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-return-await-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-function-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-function-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-await-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-async-gen-return-await-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-import-catch-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-block-labeled-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-do-while-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-do-while-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-do-while-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-do-while-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-do-while-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-do-while-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-do-while-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-do-while-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-do-while-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-do-while-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-do-while-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-do-while-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-do-while-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-do-while-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-else-import-catch-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-function-import-catch-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-if-import-catch-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/nested-while-import-catch-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-eval-rqstd-abrupt-typeerror.js(default)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-eval-rqstd-abrupt-typeerror.js(strict mode)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-eval-rqstd-abrupt-urierror.js(default)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-eval-rqstd-abrupt-urierror.js(strict mode)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-eval-script-code-target.js(default)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-eval-script-code-target.js(strict mode)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-file-does-not-exist.js(default)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-file-does-not-exist.js(strict mode)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-instn-iee-err-ambiguous-import.js(default)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-instn-iee-err-ambiguous-import.js(strict mode)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-instn-iee-err-circular.js(default)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-instn-iee-err-circular.js(strict mode)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-specifier-tostring-abrupt-rejects.js(default)
-test/language/expressions/dynamic-import/catch/top-level-import-catch-specifier-tostring-abrupt-rejects.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-Symbol-toStringTag.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-Symbol-toStringTag.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-define-own-property.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-define-own-property.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-delete-exported-init-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-delete-exported-init-strict.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-delete-non-exported-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-delete-non-exported-strict.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-extensible.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-extensible.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-nested-namespace-dflt-direct.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-nested-namespace-dflt-direct.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-nested-namespace-dflt-indirect.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-nested-namespace-dflt-indirect.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-nested-namespace-props-nrml.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-nested-namespace-props-nrml.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-own-property-str-found-init.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-own-property-str-found-init.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-own-property-str-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-own-property-str-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-own-property-sym.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-own-property-sym.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-str-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-str-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-str-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-str-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-sym-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-sym-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-get-sym-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-get-sym-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-str-found-init.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-str-found-init.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-str-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-str-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-sym-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-sym-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-sym-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-has-property-sym-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-no-iterator.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-no-iterator.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-own-property-keys-sort.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-own-property-keys-sort.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-prevent-extensions-object.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-prevent-extensions-object.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-prevent-extensions-reflect.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-prevent-extensions-reflect.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-prop-descs.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-prop-descs.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-prototype.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-prototype.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-set-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-set-prototype-of-null.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-set-prototype-of-null.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-set-prototype-of.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-set-prototype-of.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-set-same-values-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/await-ns-set-same-values-strict.js(strict mode)
-test/language/expressions/dynamic-import/namespace/await-ns-set-strict.js(strict mode)
-test/language/expressions/dynamic-import/namespace/default-property-not-set-own.js(default)
-test/language/expressions/dynamic-import/namespace/default-property-not-set-own.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-Symbol-toStringTag.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-Symbol-toStringTag.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-define-own-property.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-define-own-property.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-delete-exported-init-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-delete-exported-init-strict.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-delete-non-exported-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-delete-non-exported-strict.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-extensible.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-extensible.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-dflt-direct.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-dflt-direct.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-dflt-indirect.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-dflt-indirect.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-props-nrml.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-props-nrml.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-str-found-init.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-str-found-init.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-str-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-str-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-sym.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-sym.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-str-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-str-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-str-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-str-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-sym-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-sym-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-sym-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-get-sym-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-str-found-init.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-str-found-init.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-str-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-str-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-sym-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-sym-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-sym-not-found.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-has-property-sym-not-found.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-no-iterator.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-no-iterator.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-own-property-keys-sort.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-own-property-keys-sort.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prevent-extensions-object.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prevent-extensions-object.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prevent-extensions-reflect.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prevent-extensions-reflect.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prop-descs.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prop-descs.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prototype.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-prototype.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-prototype-of-null.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-prototype-of-null.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-prototype-of.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-prototype-of.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-same-values-no-strict.js(default)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-same-values-strict.js(strict mode)
-test/language/expressions/dynamic-import/namespace/promise-then-ns-set-strict.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-assignment-expression-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-arrow-import-then-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-await-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-arrow-function-return-await-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-await-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-return-await-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-function-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-function-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-await-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-async-gen-return-await-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-block-import-then-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-do-while-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-do-while-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-do-while-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-do-while-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-do-while-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-do-while-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-do-while-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-do-while-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-do-while-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-do-while-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-do-while-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-do-while-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-else-import-then-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-function-import-then-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-braceless-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-if-import-then-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/nested-while-import-then-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/syntax-nested-block-labeled-specifier-tostring.js(strict mode)
-test/language/expressions/dynamic-import/usage/top-level-import-then-eval-gtbndng-indirect-update-dflt.js(default)
-test/language/expressions/dynamic-import/usage/top-level-import-then-eval-gtbndng-indirect-update-dflt.js(strict mode)
-test/language/expressions/dynamic-import/usage/top-level-import-then-eval-gtbndng-indirect-update.js(default)
-test/language/expressions/dynamic-import/usage/top-level-import-then-eval-gtbndng-indirect-update.js(strict mode)
-test/language/expressions/dynamic-import/usage/top-level-import-then-eval-script-code-host-resolves-module-code.js(default)
-test/language/expressions/dynamic-import/usage/top-level-import-then-eval-script-code-host-resolves-module-code.js(strict mode)
-test/language/expressions/dynamic-import/usage/top-level-import-then-is-call-expression-square-brackets.js(default)
-test/language/expressions/dynamic-import/usage/top-level-import-then-is-call-expression-square-brackets.js(strict mode)
-test/language/expressions/dynamic-import/usage/top-level-import-then-returns-thenable.js(default)
-test/language/expressions/dynamic-import/usage/top-level-import-then-returns-thenable.js(strict mode)
-test/language/expressions/dynamic-import/usage/top-level-import-then-specifier-tostring.js(default)
-test/language/expressions/dynamic-import/usage/top-level-import-then-specifier-tostring.js(strict mode)
 test/language/statements/class/accessor-name-inst/literal-string-unicode-escape.js(default)
 test/language/statements/class/accessor-name-inst/literal-string-unicode-escape.js(strict mode)
 test/language/statements/class/accessor-name-static/literal-string-unicode-escape.js(default)
@@ -8363,132 +7695,6 @@ test/language/expressions/class/elements/private-methods/prod-private-method-ini
 test/language/expressions/class/elements/private-methods/prod-private-method-initialize-order.js(strict mode)
 test/language/expressions/class/elements/private-methods/prod-private-method.js(default)
 test/language/expressions/class/elements/private-methods/prod-private-method.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/callexpression-arguments.js(default)
-test/language/expressions/dynamic-import/syntax/valid/callexpression-arguments.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/callexpression-templateliteral.js(default)
-test/language/expressions/dynamic-import/syntax/valid/callexpression-templateliteral.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-assignment-expression-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-assignment-expression-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-assignment-expression-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-assignment-expression-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-assignment-expression-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-assignment-expression-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-arrow-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-await-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-await-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-await-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-await-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-await-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-await-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-return-await-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-return-await-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-return-await-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-return-await-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-return-await-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-arrow-function-return-await-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-await-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-await-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-await-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-await-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-await-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-await-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-return-await-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-return-await-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-return-await-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-return-await-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-return-await-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-return-await-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-function-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-gen-await-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-gen-await-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-gen-await-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-gen-await-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-gen-await-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-async-gen-await-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-labeled-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-labeled-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-labeled-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-labeled-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-labeled-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-labeled-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-block-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-do-while-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-do-while-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-do-while-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-do-while-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-do-while-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-do-while-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-braceless-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-braceless-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-braceless-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-braceless-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-braceless-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-braceless-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-else-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-return-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-return-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-return-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-return-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-return-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-return-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-function-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-braceless-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-braceless-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-braceless-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-braceless-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-braceless-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-braceless-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-if-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-while-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-while-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-while-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-while-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-while-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-while-script-code-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/nested-with-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-with-expression-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-with-expression-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-with-expression-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-with-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/nested-with-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/new-covered-expression-is-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/new-covered-expression-is-valid.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/top-level-empty-str-is-valid-assign-expr.js(default)
-test/language/expressions/dynamic-import/syntax/valid/top-level-empty-str-is-valid-assign-expr.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/top-level-nested-imports.js(default)
-test/language/expressions/dynamic-import/syntax/valid/top-level-nested-imports.js(strict mode)
-test/language/expressions/dynamic-import/syntax/valid/top-level-script-code-valid.js(default)
-test/language/expressions/dynamic-import/syntax/valid/top-level-script-code-valid.js(strict mode)
 test/language/statements/class/elements/async-gen-private-method/yield-promise-reject-next-catch.js(default)
 test/language/statements/class/elements/async-gen-private-method/yield-promise-reject-next-catch.js(strict mode)
 test/language/statements/class/elements/async-gen-private-method/yield-promise-reject-next-for-await-of-async-iterator.js(default)
@@ -9160,10 +8366,6 @@ test/language/module-code/top-level-await/await-expr-resolution.js(default)
 test/language/module-code/top-level-await/await-expr-resolution.js(strict mode)
 test/language/module-code/top-level-await/await-void-expr.js(default)
 test/language/module-code/top-level-await/await-void-expr.js(strict mode)
-test/language/module-code/top-level-await/dynamic-import-rejection.js(default)
-test/language/module-code/top-level-await/dynamic-import-rejection.js(strict mode)
-test/language/module-code/top-level-await/dynamic-import-resolution.js(default)
-test/language/module-code/top-level-await/dynamic-import-resolution.js(strict mode)
 test/language/module-code/top-level-await/if-await-expr.js(default)
 test/language/module-code/top-level-await/if-await-expr.js(strict mode)
 test/language/module-code/top-level-await/module-async-import-async-resolution-ticks.js(default)
@@ -10284,4 +9486,6 @@ test/language/expressions/import.meta/syntax/escape-sequence-import.js(strict mo
 test/language/expressions/import.meta/syntax/escape-sequence-meta.js(default)
 test/language/expressions/import.meta/syntax/escape-sequence-meta.js(strict mode)
 test/language/expressions/optional-chaining/call-expression-super-no-base.js(default)
-test/language/expressions/optional-chaining/call-expression-super-no-base.js(strict mode)
\ No newline at end of file
+test/language/expressions/optional-chaining/call-expression-super-no-base.js(strict mode)
+test/language/expressions/dynamic-import/escape-sequence-import.js(default)
+test/language/expressions/dynamic-import/escape-sequence-import.js(strict mode)
diff --git a/tests/unit/dynamic-import.js b/tests/unit/dynamic-import.js
new file mode 100644
index 00000000..151768d5
--- /dev/null
+++ b/tests/unit/dynamic-import.js
@@ -0,0 +1,62 @@
+/**
+ * Tests for the parser/tokenizer
+ */
+
+"use strict";
+
+var JSHINT  = require("../..").JSHINT;
+var fs    = require('fs');
+var TestRun = require("../helpers/testhelper").setup.testRun;
+var path    = require("path");
+
+exports.dynamicImport = {};
+
+exports.dynamicImport.valid = function (test) {
+  TestRun(test)
+    .test([
+        "import(0);",
+        "import(0 ? 0 : 0);",
+        "(function * () { ",
+        "  import(yield);",
+        "})();",
+        "import(() => {});",
+        "import(async () => {});",
+        "import(x = 0);",
+        "new (import(0))();",
+        "import(import(0));",
+      ], {esversion: 11});
+
+  test.done();
+};
+
+exports.dynamicImport.invalidvalid = function (test) {
+  TestRun(test, "empty")
+    .addError(1, 8, "Expected an identifier and instead saw ')'.")
+    .addError(1, 9, "Expected ')' and instead saw ';'.")
+    .addError(1, 10, "Missing semicolon.")
+    .test("import();", {esversion: 11});
+
+  TestRun(test, "expression")
+    .addError(1, 11, "Expected ')' and instead saw ','.")
+    .addError(1, 12, "Missing semicolon.")
+    .addError(1, 13, "Expected an assignment or function call and instead saw an expression.")
+    .addError(1, 16, "Missing semicolon.")
+    .addError(1, 16, "Expected an identifier and instead saw ')'.")
+    .addError(1, 16, "Expected an assignment or function call and instead saw an expression.")
+    .test("import('a', 'b');", {esversion: 11});
+
+  TestRun(test, "NewExpression")
+    .addError(1, 5, "Unexpected 'import'.")
+    .addError(1, 13, "Missing '()' invoking a constructor.")
+    .test("new import(0);", {esversion: 11});
+
+  test.done();
+};
+
+exports.dynamicImport.esversion = function (test) {
+  TestRun(test)
+    .addError(1, 1, "'dynamic import' is only available in ES11 (use 'esversion: 11').")
+    .test("import(0);", {esversion: 10});
+
+  test.done();
+};