Merge pull request #686 from babel/invalid-label-declarations
This commit is contained in:
commit
27aae6c0f9
@ -134,17 +134,9 @@ language/expressions/async-function/nameless-dflt-params-duplicates.js(default)
|
||||
language/expressions/function/dflt-params-duplicates.js(default)
|
||||
language/expressions/function/param-dflt-yield-strict.js(strict mode)
|
||||
language/expressions/generators/dflt-params-duplicates.js(default)
|
||||
language/expressions/generators/named-yield-as-binding-identifier-escaped.js(default)
|
||||
language/expressions/generators/named-yield-as-identifier-reference-escaped.js(default)
|
||||
language/expressions/generators/named-yield-as-label-identifier-escaped.js(default)
|
||||
language/expressions/generators/param-dflt-yield.js(default)
|
||||
language/expressions/generators/yield-as-binding-identifier-escaped.js(default)
|
||||
language/expressions/generators/yield-as-generator-expression-binding-identifier.js(default)
|
||||
language/expressions/generators/yield-as-identifier-reference-escaped.js(default)
|
||||
language/expressions/generators/yield-as-label-identifier-escaped.js(default)
|
||||
language/expressions/generators/yield-as-parameter.js(default)
|
||||
language/expressions/new.target/escaped-new.js(default)
|
||||
language/expressions/new.target/escaped-new.js(strict mode)
|
||||
language/expressions/new.target/escaped-target.js(default)
|
||||
language/expressions/new.target/escaped-target.js(strict mode)
|
||||
language/expressions/object/method-definition/async-meth-escaped-async.js(default)
|
||||
@ -161,9 +153,6 @@ language/expressions/object/method-definition/escaped-get.js(strict mode)
|
||||
language/expressions/object/method-definition/escaped-set.js(default)
|
||||
language/expressions/object/method-definition/escaped-set.js(strict mode)
|
||||
language/expressions/object/method-definition/gen-meth-dflt-params-duplicates.js(default)
|
||||
language/expressions/object/method-definition/gen-yield-as-binding-identifier-escaped.js(default)
|
||||
language/expressions/object/method-definition/gen-yield-as-identifier-reference-escaped.js(default)
|
||||
language/expressions/object/method-definition/gen-yield-as-label-identifier-escaped.js(default)
|
||||
language/expressions/object/method-definition/generator-param-id-yield.js(default)
|
||||
language/expressions/object/method-definition/generator-param-init-yield.js(default)
|
||||
language/expressions/object/method-definition/generator-param-redecl-const.js(default)
|
||||
@ -182,146 +171,6 @@ language/expressions/yield/star-in-iteration-stmt.js(default)
|
||||
language/expressions/yield/star-in-iteration-stmt.js(strict mode)
|
||||
language/global-code/new.target-arrow.js(default)
|
||||
language/global-code/new.target-arrow.js(strict mode)
|
||||
language/identifiers/val-break-via-escape-hex.js(default)
|
||||
language/identifiers/val-break-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-break-via-escape-hex4.js(default)
|
||||
language/identifiers/val-break-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-case-via-escape-hex.js(default)
|
||||
language/identifiers/val-case-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-case-via-escape-hex4.js(default)
|
||||
language/identifiers/val-case-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-catch-via-escape-hex.js(default)
|
||||
language/identifiers/val-catch-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-catch-via-escape-hex4.js(default)
|
||||
language/identifiers/val-catch-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-class-via-escape-hex.js(default)
|
||||
language/identifiers/val-class-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-class-via-escape-hex4.js(default)
|
||||
language/identifiers/val-class-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-const-via-escape-hex.js(default)
|
||||
language/identifiers/val-const-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-const-via-escape-hex4.js(default)
|
||||
language/identifiers/val-const-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-continue-via-escape-hex.js(default)
|
||||
language/identifiers/val-continue-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-continue-via-escape-hex4.js(default)
|
||||
language/identifiers/val-continue-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-debugger-via-escape-hex.js(default)
|
||||
language/identifiers/val-debugger-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-debugger-via-escape-hex4.js(default)
|
||||
language/identifiers/val-debugger-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-default-via-escape-hex.js(default)
|
||||
language/identifiers/val-default-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-default-via-escape-hex4.js(default)
|
||||
language/identifiers/val-default-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-delete-via-escape-hex.js(default)
|
||||
language/identifiers/val-delete-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-delete-via-escape-hex4.js(default)
|
||||
language/identifiers/val-delete-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-do-via-escape-hex.js(default)
|
||||
language/identifiers/val-do-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-do-via-escape-hex4.js(default)
|
||||
language/identifiers/val-do-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-else-via-escape-hex.js(default)
|
||||
language/identifiers/val-else-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-else-via-escape-hex4.js(default)
|
||||
language/identifiers/val-else-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-export-via-escape-hex.js(default)
|
||||
language/identifiers/val-export-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-export-via-escape-hex4.js(default)
|
||||
language/identifiers/val-export-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-extends-via-escape-hex.js(default)
|
||||
language/identifiers/val-extends-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-extends-via-escape-hex4.js(default)
|
||||
language/identifiers/val-extends-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-false-via-escape-hex.js(default)
|
||||
language/identifiers/val-false-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-false-via-escape-hex4.js(default)
|
||||
language/identifiers/val-false-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-finally-via-escape-hex.js(default)
|
||||
language/identifiers/val-finally-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-finally-via-escape-hex4.js(default)
|
||||
language/identifiers/val-finally-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-for-via-escape-hex.js(default)
|
||||
language/identifiers/val-for-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-for-via-escape-hex4.js(default)
|
||||
language/identifiers/val-for-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-function-via-escape-hex.js(default)
|
||||
language/identifiers/val-function-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-function-via-escape-hex4.js(default)
|
||||
language/identifiers/val-function-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-if-via-escape-hex.js(default)
|
||||
language/identifiers/val-if-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-if-via-escape-hex4.js(default)
|
||||
language/identifiers/val-if-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-import-via-escape-hex.js(default)
|
||||
language/identifiers/val-import-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-import-via-escape-hex4.js(default)
|
||||
language/identifiers/val-import-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-in-via-escape-hex.js(default)
|
||||
language/identifiers/val-in-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-in-via-escape-hex4.js(default)
|
||||
language/identifiers/val-in-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-instanceof-via-escape-hex.js(default)
|
||||
language/identifiers/val-instanceof-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-instanceof-via-escape-hex4.js(default)
|
||||
language/identifiers/val-instanceof-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-new-via-escape-hex.js(default)
|
||||
language/identifiers/val-new-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-new-via-escape-hex4.js(default)
|
||||
language/identifiers/val-new-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-null-via-escape-hex.js(default)
|
||||
language/identifiers/val-null-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-null-via-escape-hex4.js(default)
|
||||
language/identifiers/val-null-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-return-via-escape-hex.js(default)
|
||||
language/identifiers/val-return-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-return-via-escape-hex4.js(default)
|
||||
language/identifiers/val-return-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-super-via-escape-hex.js(default)
|
||||
language/identifiers/val-super-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-super-via-escape-hex4.js(default)
|
||||
language/identifiers/val-super-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-switch-via-escape-hex.js(default)
|
||||
language/identifiers/val-switch-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-switch-via-escape-hex4.js(default)
|
||||
language/identifiers/val-switch-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-this-via-escape-hex.js(default)
|
||||
language/identifiers/val-this-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-this-via-escape-hex4.js(default)
|
||||
language/identifiers/val-this-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-throw-via-escape-hex.js(default)
|
||||
language/identifiers/val-throw-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-throw-via-escape-hex4.js(default)
|
||||
language/identifiers/val-throw-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-true-via-escape-hex.js(default)
|
||||
language/identifiers/val-true-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-true-via-escape-hex4.js(default)
|
||||
language/identifiers/val-true-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-try-via-escape-hex.js(default)
|
||||
language/identifiers/val-try-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-try-via-escape-hex4.js(default)
|
||||
language/identifiers/val-try-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-typeof-via-escape-hex.js(default)
|
||||
language/identifiers/val-typeof-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-typeof-via-escape-hex4.js(default)
|
||||
language/identifiers/val-typeof-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-var-via-escape-hex.js(default)
|
||||
language/identifiers/val-var-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-var-via-escape-hex4.js(default)
|
||||
language/identifiers/val-var-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-void-via-escape-hex.js(default)
|
||||
language/identifiers/val-void-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-void-via-escape-hex4.js(default)
|
||||
language/identifiers/val-void-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-while-via-escape-hex.js(default)
|
||||
language/identifiers/val-while-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-while-via-escape-hex4.js(default)
|
||||
language/identifiers/val-while-via-escape-hex4.js(strict mode)
|
||||
language/identifiers/val-with-via-escape-hex.js(default)
|
||||
language/identifiers/val-with-via-escape-hex.js(strict mode)
|
||||
language/identifiers/val-with-via-escape-hex4.js(default)
|
||||
language/identifiers/val-with-via-escape-hex4.js(strict mode)
|
||||
language/import/dup-bound-names.js(default)
|
||||
language/import/dup-bound-names.js(strict mode)
|
||||
language/import/escaped-as-import-specifier.js(default)
|
||||
@ -391,18 +240,6 @@ language/module-code/parse-err-hoist-lex-fun.js(default)
|
||||
language/module-code/parse-err-hoist-lex-fun.js(strict mode)
|
||||
language/module-code/parse-err-hoist-lex-gen.js(default)
|
||||
language/module-code/parse-err-hoist-lex-gen.js(strict mode)
|
||||
language/reserved-words/ident-reference-false-escaped.js(default)
|
||||
language/reserved-words/ident-reference-false-escaped.js(strict mode)
|
||||
language/reserved-words/ident-reference-null-escaped.js(default)
|
||||
language/reserved-words/ident-reference-null-escaped.js(strict mode)
|
||||
language/reserved-words/ident-reference-true-escaped.js(default)
|
||||
language/reserved-words/ident-reference-true-escaped.js(strict mode)
|
||||
language/reserved-words/label-ident-false-escaped.js(default)
|
||||
language/reserved-words/label-ident-false-escaped.js(strict mode)
|
||||
language/reserved-words/label-ident-null-escaped.js(default)
|
||||
language/reserved-words/label-ident-null-escaped.js(strict mode)
|
||||
language/reserved-words/label-ident-true-escaped.js(default)
|
||||
language/reserved-words/label-ident-true-escaped.js(strict mode)
|
||||
language/statements/async-function/dflt-params-duplicates.js(default)
|
||||
language/statements/async-function/early-errors-declaration-await-in-formals-default.js(default)
|
||||
language/statements/async-function/early-errors-declaration-await-in-formals-default.js(strict mode)
|
||||
@ -430,22 +267,16 @@ language/statements/class/syntax/early-errors/class-definition-evaluation-script
|
||||
language/statements/class/syntax/escaped-static.js(default)
|
||||
language/statements/class/syntax/escaped-static.js(strict mode)
|
||||
language/statements/const/redeclaration-error-from-within-strict-mode-function-const.js(default)
|
||||
language/statements/const/syntax/with-initializer-label-statement.js(default)
|
||||
language/statements/const/syntax/with-initializer-label-statement.js(strict mode)
|
||||
language/statements/do-while/decl-async-fun.js(default)
|
||||
language/statements/do-while/decl-async-fun.js(strict mode)
|
||||
language/statements/do-while/labelled-fn-stmt.js(default)
|
||||
language/statements/do-while/labelled-fn-stmt.js(strict mode)
|
||||
language/statements/for/decl-async-fun.js(default)
|
||||
language/statements/for/decl-async-fun.js(strict mode)
|
||||
language/statements/for/head-let-bound-names-in-stmt.js(default)
|
||||
language/statements/for/head-let-bound-names-in-stmt.js(strict mode)
|
||||
language/statements/for/labelled-fn-stmt-expr.js(default)
|
||||
language/statements/for/labelled-fn-stmt-expr.js(strict mode)
|
||||
language/statements/for/labelled-fn-stmt-let.js(default)
|
||||
language/statements/for/labelled-fn-stmt-let.js(strict mode)
|
||||
language/statements/for/labelled-fn-stmt-var.js(default)
|
||||
language/statements/for/labelled-fn-stmt-var.js(strict mode)
|
||||
language/statements/for-in/decl-async-fun.js(default)
|
||||
language/statements/for-in/decl-async-fun.js(strict mode)
|
||||
language/statements/for-in/dstr-array-rest-before-elision.js(default)
|
||||
@ -461,13 +292,9 @@ language/statements/for-in/head-let-bound-names-dup.js(strict mode)
|
||||
language/statements/for-in/head-let-bound-names-in-stmt.js(default)
|
||||
language/statements/for-in/head-let-bound-names-in-stmt.js(strict mode)
|
||||
language/statements/for-in/labelled-fn-stmt-const.js(default)
|
||||
language/statements/for-in/labelled-fn-stmt-const.js(strict mode)
|
||||
language/statements/for-in/labelled-fn-stmt-let.js(default)
|
||||
language/statements/for-in/labelled-fn-stmt-let.js(strict mode)
|
||||
language/statements/for-in/labelled-fn-stmt-lhs.js(default)
|
||||
language/statements/for-in/labelled-fn-stmt-lhs.js(strict mode)
|
||||
language/statements/for-in/labelled-fn-stmt-var.js(default)
|
||||
language/statements/for-in/labelled-fn-stmt-var.js(strict mode)
|
||||
language/statements/for-of/decl-async-fun.js(default)
|
||||
language/statements/for-of/decl-async-fun.js(strict mode)
|
||||
language/statements/for-of/dstr-array-rest-before-elision.js(default)
|
||||
@ -491,20 +318,13 @@ language/statements/for-of/head-let-bound-names-in-stmt.js(strict mode)
|
||||
language/statements/for-of/head-var-no-expr.js(default)
|
||||
language/statements/for-of/head-var-no-expr.js(strict mode)
|
||||
language/statements/for-of/labelled-fn-stmt-const.js(default)
|
||||
language/statements/for-of/labelled-fn-stmt-const.js(strict mode)
|
||||
language/statements/for-of/labelled-fn-stmt-let.js(default)
|
||||
language/statements/for-of/labelled-fn-stmt-let.js(strict mode)
|
||||
language/statements/for-of/labelled-fn-stmt-lhs.js(default)
|
||||
language/statements/for-of/labelled-fn-stmt-lhs.js(strict mode)
|
||||
language/statements/for-of/labelled-fn-stmt-var.js(default)
|
||||
language/statements/for-of/labelled-fn-stmt-var.js(strict mode)
|
||||
language/statements/function/dflt-params-duplicates.js(default)
|
||||
language/statements/function/param-dflt-yield-strict.js(strict mode)
|
||||
language/statements/generators/dflt-params-duplicates.js(default)
|
||||
language/statements/generators/param-dflt-yield.js(default)
|
||||
language/statements/generators/yield-as-binding-identifier-escaped.js(default)
|
||||
language/statements/generators/yield-as-identifier-reference-escaped.js(default)
|
||||
language/statements/generators/yield-as-label-identifier-escaped.js(default)
|
||||
language/statements/generators/yield-as-parameter.js(default)
|
||||
language/statements/if/if-async-fun-else-async-fun.js(default)
|
||||
language/statements/if/if-async-fun-else-async-fun.js(strict mode)
|
||||
@ -515,32 +335,13 @@ language/statements/if/if-async-fun-no-else.js(strict mode)
|
||||
language/statements/if/if-stmt-else-async-fun.js(default)
|
||||
language/statements/if/if-stmt-else-async-fun.js(strict mode)
|
||||
language/statements/if/labelled-fn-stmt-first.js(default)
|
||||
language/statements/if/labelled-fn-stmt-first.js(strict mode)
|
||||
language/statements/if/labelled-fn-stmt-lone.js(default)
|
||||
language/statements/if/labelled-fn-stmt-lone.js(strict mode)
|
||||
language/statements/if/labelled-fn-stmt-second.js(default)
|
||||
language/statements/if/labelled-fn-stmt-second.js(strict mode)
|
||||
language/statements/labeled/decl-async-function.js(default)
|
||||
language/statements/labeled/decl-async-function.js(strict mode)
|
||||
language/statements/labeled/decl-cls.js(default)
|
||||
language/statements/labeled/decl-cls.js(strict mode)
|
||||
language/statements/labeled/decl-const.js(default)
|
||||
language/statements/labeled/decl-const.js(strict mode)
|
||||
language/statements/labeled/decl-fun-strict.js(strict mode)
|
||||
language/statements/labeled/decl-gen.js(default)
|
||||
language/statements/labeled/decl-gen.js(strict mode)
|
||||
language/statements/labeled/decl-let.js(default)
|
||||
language/statements/labeled/decl-let.js(strict mode)
|
||||
language/statements/labeled/let-array-with-newline.js(default)
|
||||
language/statements/let/redeclaration-error-from-within-strict-mode-function.js(default)
|
||||
language/statements/let/syntax/attempt-to-redeclare-let-binding-with-function-declaration.js(default)
|
||||
language/statements/let/syntax/attempt-to-redeclare-let-binding-with-function-declaration.js(strict mode)
|
||||
language/statements/let/syntax/attempt-to-redeclare-let-binding-with-var.js(default)
|
||||
language/statements/let/syntax/attempt-to-redeclare-let-binding-with-var.js(strict mode)
|
||||
language/statements/let/syntax/with-initialisers-in-statement-positions-label-statement.js(default)
|
||||
language/statements/let/syntax/with-initialisers-in-statement-positions-label-statement.js(strict mode)
|
||||
language/statements/let/syntax/without-initialisers-in-statement-positions-label-statement.js(default)
|
||||
language/statements/let/syntax/without-initialisers-in-statement-positions-label-statement.js(strict mode)
|
||||
language/statements/switch/syntax/redeclaration/async-function-declaration-attempt-to-redeclare-with-async-function-declaration.js(default)
|
||||
language/statements/switch/syntax/redeclaration/async-function-declaration-attempt-to-redeclare-with-async-function-declaration.js(strict mode)
|
||||
language/statements/switch/syntax/redeclaration/async-function-declaration-attempt-to-redeclare-with-class-declaration.js(default)
|
||||
@ -643,7 +444,6 @@ language/statements/try/early-catch-var.js(strict mode)
|
||||
language/statements/while/decl-async-fun.js(default)
|
||||
language/statements/while/decl-async-fun.js(strict mode)
|
||||
language/statements/while/labelled-fn-stmt.js(default)
|
||||
language/statements/while/labelled-fn-stmt.js(strict mode)
|
||||
language/statements/with/decl-async-fun.js(default)
|
||||
language/statements/with/labelled-fn-stmt.js(default)
|
||||
language/white-space/mongolian-vowel-separator.js(default)
|
||||
@ -969,25 +769,13 @@ language/expressions/async-generator/early-errors-expression-yield-as-function-b
|
||||
language/expressions/async-generator/escaped-async.js(default)
|
||||
language/expressions/async-generator/escaped-async.js(strict mode)
|
||||
language/expressions/async-generator/named-dflt-params-duplicates.js(default)
|
||||
language/expressions/async-generator/named-yield-as-binding-identifier-escaped.js(default)
|
||||
language/expressions/async-generator/named-yield-as-identifier-reference-escaped.js(default)
|
||||
language/expressions/async-generator/named-yield-as-label-identifier-escaped.js(default)
|
||||
language/expressions/async-generator/yield-as-binding-identifier-escaped.js(default)
|
||||
language/expressions/async-generator/yield-as-identifier-reference-escaped.js(default)
|
||||
language/expressions/async-generator/yield-as-label-identifier-escaped.js(default)
|
||||
language/expressions/object/method-definition/async-gen-meth-dflt-params-duplicates.js(default)
|
||||
language/expressions/object/method-definition/async-gen-meth-escaped-async.js(default)
|
||||
language/expressions/object/method-definition/async-gen-meth-escaped-async.js(strict mode)
|
||||
language/expressions/object/method-definition/async-gen-yield-as-binding-identifier-escaped.js(default)
|
||||
language/expressions/object/method-definition/async-gen-yield-as-identifier-reference-escaped.js(default)
|
||||
language/expressions/object/method-definition/async-gen-yield-as-label-identifier-escaped.js(default)
|
||||
language/expressions/object/method-definition/async-meth-dflt-params-duplicates.js(default)
|
||||
language/statements/async-generator/dflt-params-duplicates.js(default)
|
||||
language/statements/async-generator/escaped-async.js(default)
|
||||
language/statements/async-generator/escaped-async.js(strict mode)
|
||||
language/statements/async-generator/yield-as-binding-identifier-escaped.js(default)
|
||||
language/statements/async-generator/yield-as-identifier-reference-escaped.js(default)
|
||||
language/statements/async-generator/yield-as-label-identifier-escaped.js(default)
|
||||
language/statements/class/async-gen-meth-escaped-async.js(default)
|
||||
language/statements/class/async-gen-meth-escaped-async.js(strict mode)
|
||||
language/statements/do-while/decl-async-gen.js(default)
|
||||
@ -1012,8 +800,6 @@ language/statements/if/if-async-gen-no-else.js(default)
|
||||
language/statements/if/if-async-gen-no-else.js(strict mode)
|
||||
language/statements/if/if-stmt-else-async-gen.js(default)
|
||||
language/statements/if/if-stmt-else-async-gen.js(strict mode)
|
||||
language/statements/labeled/decl-async-generator.js(default)
|
||||
language/statements/labeled/decl-async-generator.js(strict mode)
|
||||
language/statements/switch/syntax/redeclaration/async-function-declaration-attempt-to-redeclare-with-async-generator-declaration.js(default)
|
||||
language/statements/switch/syntax/redeclaration/async-function-declaration-attempt-to-redeclare-with-async-generator-declaration.js(strict mode)
|
||||
language/statements/switch/syntax/redeclaration/async-generator-declaration-attempt-to-redeclare-with-async-function-declaration.js(default)
|
||||
@ -1532,3 +1318,7 @@ language/statements/try/optional-catch-binding-throws.js(default)
|
||||
language/statements/try/optional-catch-binding-throws.js(strict mode)
|
||||
language/statements/try/optional-catch-binding.js(default)
|
||||
language/statements/try/optional-catch-binding.js(strict mode)
|
||||
|
||||
language/statements/labeled/let-identifier-with-newline.js(default)
|
||||
language/statements/labeled/value-yield-non-strict-escaped.js(default)
|
||||
language/statements/let/syntax/escaped-let.js(default)
|
||||
@ -576,6 +576,16 @@ export default class StatementParser extends ExpressionParser {
|
||||
statementStart: this.state.start,
|
||||
});
|
||||
node.body = this.parseStatement(true);
|
||||
|
||||
if (
|
||||
node.body.type == "ClassDeclaration" ||
|
||||
(node.body.type == "VariableDeclaration" && node.body.kind !== "var") ||
|
||||
(node.body.type == "FunctionDeclaration" &&
|
||||
(this.state.strict || node.body.generator || node.body.async))
|
||||
) {
|
||||
this.raise(node.body.start, "Invalid labeled declaration");
|
||||
}
|
||||
|
||||
this.state.labels.pop();
|
||||
node.label = expr;
|
||||
return this.finishNode(node, "LabeledStatement");
|
||||
|
||||
@ -1105,9 +1105,15 @@ export default class Tokenizer extends LocationParser {
|
||||
readWord(): void {
|
||||
const word = this.readWord1();
|
||||
let type = tt.name;
|
||||
if (!this.state.containsEsc && this.isKeyword(word)) {
|
||||
|
||||
if (this.isKeyword(word)) {
|
||||
if (this.state.containsEsc) {
|
||||
this.raise(this.state.pos, `Escape sequence in keyword ${word}`);
|
||||
}
|
||||
|
||||
type = keywordTypes[word];
|
||||
}
|
||||
|
||||
return this.finishToken(type, word);
|
||||
}
|
||||
|
||||
|
||||
1
test/fixtures/es2015/identifiers/invalid-escape-seq-const/actual.js
vendored
Normal file
1
test/fixtures/es2015/identifiers/invalid-escape-seq-const/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
var co\u{6e}st = 123;
|
||||
3
test/fixtures/es2015/identifiers/invalid-escape-seq-const/options.json
vendored
Normal file
3
test/fixtures/es2015/identifiers/invalid-escape-seq-const/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Escape sequence in keyword const (1:14)"
|
||||
}
|
||||
1
test/fixtures/es2015/identifiers/invalid-escape-seq-export/actual.js
vendored
Normal file
1
test/fixtures/es2015/identifiers/invalid-escape-seq-export/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
var expor\u{74} = 123;
|
||||
3
test/fixtures/es2015/identifiers/invalid-escape-seq-export/options.json
vendored
Normal file
3
test/fixtures/es2015/identifiers/invalid-escape-seq-export/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Escape sequence in keyword export (1:15)"
|
||||
}
|
||||
1
test/fixtures/es2015/identifiers/invalid-escape-seq-if/actual.js
vendored
Normal file
1
test/fixtures/es2015/identifiers/invalid-escape-seq-if/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
\u0069\u{66} (true) {}
|
||||
3
test/fixtures/es2015/identifiers/invalid-escape-seq-if/options.json
vendored
Normal file
3
test/fixtures/es2015/identifiers/invalid-escape-seq-if/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Escape sequence in keyword if (1:12)"
|
||||
}
|
||||
1
test/fixtures/es2015/identifiers/invalid-escape-seq-import/actual.js
vendored
Normal file
1
test/fixtures/es2015/identifiers/invalid-escape-seq-import/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
var \u{69}\u{6d}\u{70}\u{6f}\u{72}\u{74} = 123;
|
||||
3
test/fixtures/es2015/identifiers/invalid-escape-seq-import/options.json
vendored
Normal file
3
test/fixtures/es2015/identifiers/invalid-escape-seq-import/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Escape sequence in keyword import (1:40)"
|
||||
}
|
||||
1
test/fixtures/es2015/identifiers/invalid-escape-seq-null/actual.js
vendored
Normal file
1
test/fixtures/es2015/identifiers/invalid-escape-seq-null/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
nul\u{6c}
|
||||
3
test/fixtures/es2015/identifiers/invalid-escape-seq-null/options.json
vendored
Normal file
3
test/fixtures/es2015/identifiers/invalid-escape-seq-null/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Escape sequence in keyword null (1:9)"
|
||||
}
|
||||
1
test/fixtures/es2015/identifiers/invalid-escape-seq-true/actual.js
vendored
Normal file
1
test/fixtures/es2015/identifiers/invalid-escape-seq-true/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
\u0074rue
|
||||
3
test/fixtures/es2015/identifiers/invalid-escape-seq-true/options.json
vendored
Normal file
3
test/fixtures/es2015/identifiers/invalid-escape-seq-true/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Escape sequence in keyword true (1:9)"
|
||||
}
|
||||
1
test/fixtures/es2015/meta-properties/new-target-invalid-escaped-new/actual.js
vendored
Normal file
1
test/fixtures/es2015/meta-properties/new-target-invalid-escaped-new/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
function f() { n\u0065w.target; }
|
||||
3
test/fixtures/es2015/meta-properties/new-target-invalid-escaped-new/options.json
vendored
Normal file
3
test/fixtures/es2015/meta-properties/new-target-invalid-escaped-new/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Escape sequence in keyword new (1:23)"
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-invalid-class/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-invalid-class/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
foo: class X {}
|
||||
3
test/fixtures/es2015/statements/label-invalid-class/options.json
vendored
Normal file
3
test/fixtures/es2015/statements/label-invalid-class/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Invalid labeled declaration (1:5)"
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-invalid-const/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-invalid-const/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
foo: const bar = null;
|
||||
3
test/fixtures/es2015/statements/label-invalid-const/options.json
vendored
Normal file
3
test/fixtures/es2015/statements/label-invalid-const/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Invalid labeled declaration (1:5)"
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-invalid-func-async/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-invalid-func-async/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
foo: async function bar() {}
|
||||
3
test/fixtures/es2015/statements/label-invalid-func-async/options.json
vendored
Normal file
3
test/fixtures/es2015/statements/label-invalid-func-async/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Invalid labeled declaration (1:5)"
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-invalid-func-generator/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-invalid-func-generator/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
foo: function* bar() {}
|
||||
3
test/fixtures/es2015/statements/label-invalid-func-generator/options.json
vendored
Normal file
3
test/fixtures/es2015/statements/label-invalid-func-generator/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Invalid labeled declaration (1:5)"
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-invalid-func-strict/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-invalid-func-strict/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
function foo() {"use strict"; bar: function baz() {}}
|
||||
3
test/fixtures/es2015/statements/label-invalid-func-strict/options.json
vendored
Normal file
3
test/fixtures/es2015/statements/label-invalid-func-strict/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Invalid labeled declaration (1:35)"
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-invalid-let/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-invalid-let/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
foo: let bar;
|
||||
3
test/fixtures/es2015/statements/label-invalid-let/options.json
vendored
Normal file
3
test/fixtures/es2015/statements/label-invalid-let/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"throws": "Invalid labeled declaration (1:5)"
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-valid-func-non-strict/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-valid-func-non-strict/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
foo: function bar() {}
|
||||
119
test/fixtures/es2015/statements/label-valid-func-non-strict/expected.json
vendored
Normal file
119
test/fixtures/es2015/statements/label-valid-func-non-strict/expected.json
vendored
Normal file
@ -0,0 +1,119 @@
|
||||
{
|
||||
"type": "File",
|
||||
"start": 0,
|
||||
"end": 22,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 22
|
||||
}
|
||||
},
|
||||
"program": {
|
||||
"type": "Program",
|
||||
"start": 0,
|
||||
"end": 22,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 22
|
||||
}
|
||||
},
|
||||
"sourceType": "script",
|
||||
"body": [
|
||||
{
|
||||
"type": "LabeledStatement",
|
||||
"start": 0,
|
||||
"end": 22,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 22
|
||||
}
|
||||
},
|
||||
"body": {
|
||||
"type": "FunctionDeclaration",
|
||||
"start": 5,
|
||||
"end": 22,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 5
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 22
|
||||
}
|
||||
},
|
||||
"id": {
|
||||
"type": "Identifier",
|
||||
"start": 14,
|
||||
"end": 17,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 14
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 17
|
||||
},
|
||||
"identifierName": "bar"
|
||||
},
|
||||
"name": "bar"
|
||||
},
|
||||
"generator": false,
|
||||
"expression": false,
|
||||
"async": false,
|
||||
"params": [],
|
||||
"body": {
|
||||
"type": "BlockStatement",
|
||||
"start": 20,
|
||||
"end": 22,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 20
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 22
|
||||
}
|
||||
},
|
||||
"body": [],
|
||||
"directives": []
|
||||
}
|
||||
},
|
||||
"label": {
|
||||
"type": "Identifier",
|
||||
"start": 0,
|
||||
"end": 3,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 3
|
||||
},
|
||||
"identifierName": "foo"
|
||||
},
|
||||
"name": "foo"
|
||||
}
|
||||
}
|
||||
],
|
||||
"directives": []
|
||||
}
|
||||
}
|
||||
1
test/fixtures/es2015/statements/label-valid-var/actual.js
vendored
Normal file
1
test/fixtures/es2015/statements/label-valid-var/actual.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
foo: var bar;
|
||||
117
test/fixtures/es2015/statements/label-valid-var/expected.json
vendored
Normal file
117
test/fixtures/es2015/statements/label-valid-var/expected.json
vendored
Normal file
@ -0,0 +1,117 @@
|
||||
{
|
||||
"type": "File",
|
||||
"start": 0,
|
||||
"end": 13,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 13
|
||||
}
|
||||
},
|
||||
"program": {
|
||||
"type": "Program",
|
||||
"start": 0,
|
||||
"end": 13,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 13
|
||||
}
|
||||
},
|
||||
"sourceType": "script",
|
||||
"body": [
|
||||
{
|
||||
"type": "LabeledStatement",
|
||||
"start": 0,
|
||||
"end": 13,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 13
|
||||
}
|
||||
},
|
||||
"body": {
|
||||
"type": "VariableDeclaration",
|
||||
"start": 5,
|
||||
"end": 13,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 5
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 13
|
||||
}
|
||||
},
|
||||
"declarations": [
|
||||
{
|
||||
"type": "VariableDeclarator",
|
||||
"start": 9,
|
||||
"end": 12,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 9
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 12
|
||||
}
|
||||
},
|
||||
"id": {
|
||||
"type": "Identifier",
|
||||
"start": 9,
|
||||
"end": 12,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 9
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 12
|
||||
},
|
||||
"identifierName": "bar"
|
||||
},
|
||||
"name": "bar"
|
||||
},
|
||||
"init": null
|
||||
}
|
||||
],
|
||||
"kind": "var"
|
||||
},
|
||||
"label": {
|
||||
"type": "Identifier",
|
||||
"start": 0,
|
||||
"end": 3,
|
||||
"loc": {
|
||||
"start": {
|
||||
"line": 1,
|
||||
"column": 0
|
||||
},
|
||||
"end": {
|
||||
"line": 1,
|
||||
"column": 3
|
||||
},
|
||||
"identifierName": "foo"
|
||||
},
|
||||
"name": "foo"
|
||||
}
|
||||
}
|
||||
],
|
||||
"directives": []
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user