From b0f8405b523551f124dbfd13cb840e9bb9017a62 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Thu, 23 Feb 2017 09:50:25 -0500 Subject: [PATCH] Revert "Don't parse class properties without initializers when classProperties plugin is disabled, and Flow is enabled" (#376) --- src/parser/statement.js | 7 +------ .../with-initializer-and-type-no-plugin/actual.js | 3 --- .../with-initializer-and-type-no-plugin/options.json | 4 ---- .../with-initializer-missing-plugin/actual.js | 3 --- .../with-initializer-missing-plugin/options.json | 3 --- .../without-initializer-missing-plugin/actual.js | 3 --- .../without-initializer-missing-plugin/options.json | 3 --- 7 files changed, 1 insertion(+), 25 deletions(-) delete mode 100644 test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/actual.js delete mode 100644 test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/options.json delete mode 100644 test/fixtures/experimental/class-properties/with-initializer-missing-plugin/actual.js delete mode 100644 test/fixtures/experimental/class-properties/with-initializer-missing-plugin/options.json delete mode 100644 test/fixtures/experimental/class-properties/without-initializer-missing-plugin/actual.js delete mode 100644 test/fixtures/experimental/class-properties/without-initializer-missing-plugin/options.json diff --git a/src/parser/statement.js b/src/parser/statement.js index d7073ef1bd..42a01b1866 100644 --- a/src/parser/statement.js +++ b/src/parser/statement.js @@ -766,13 +766,8 @@ pp.parseClassBody = function (node) { }; pp.parseClassProperty = function (node) { - const noPluginMsg = "You can only use Class Properties when the 'classProperties' plugin is enabled."; - if (!node.typeAnnotation && !this.hasPlugin("classProperties")) { - this.raise(node.start, noPluginMsg); - } - if (this.match(tt.eq)) { - if (!this.hasPlugin("classProperties")) this.raise(this.state.start, noPluginMsg); + if (!this.hasPlugin("classProperties")) this.unexpected(); this.next(); node.value = this.parseMaybeAssign(); } else { diff --git a/test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/actual.js b/test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/actual.js deleted file mode 100644 index f82f8d51d7..0000000000 --- a/test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/actual.js +++ /dev/null @@ -1,3 +0,0 @@ -class Foo { - bar: string = 'bizz'; -} diff --git a/test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/options.json b/test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/options.json deleted file mode 100644 index e185feb80a..0000000000 --- a/test/fixtures/experimental/class-properties/with-initializer-and-type-no-plugin/options.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "plugins": ["flow"], - "throws": "You can only use Class Properties when the 'classProperties' plugin is enabled. (2:14)" -} diff --git a/test/fixtures/experimental/class-properties/with-initializer-missing-plugin/actual.js b/test/fixtures/experimental/class-properties/with-initializer-missing-plugin/actual.js deleted file mode 100644 index fa80e3af68..0000000000 --- a/test/fixtures/experimental/class-properties/with-initializer-missing-plugin/actual.js +++ /dev/null @@ -1,3 +0,0 @@ -class Foo { - bar = 'bizz'; -} diff --git a/test/fixtures/experimental/class-properties/with-initializer-missing-plugin/options.json b/test/fixtures/experimental/class-properties/with-initializer-missing-plugin/options.json deleted file mode 100644 index af38bd1530..0000000000 --- a/test/fixtures/experimental/class-properties/with-initializer-missing-plugin/options.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "throws": "You can only use Class Properties when the 'classProperties' plugin is enabled. (2:2)" -} diff --git a/test/fixtures/experimental/class-properties/without-initializer-missing-plugin/actual.js b/test/fixtures/experimental/class-properties/without-initializer-missing-plugin/actual.js deleted file mode 100644 index a36cdd975c..0000000000 --- a/test/fixtures/experimental/class-properties/without-initializer-missing-plugin/actual.js +++ /dev/null @@ -1,3 +0,0 @@ -class Foo { - bar; -} diff --git a/test/fixtures/experimental/class-properties/without-initializer-missing-plugin/options.json b/test/fixtures/experimental/class-properties/without-initializer-missing-plugin/options.json deleted file mode 100644 index af38bd1530..0000000000 --- a/test/fixtures/experimental/class-properties/without-initializer-missing-plugin/options.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "throws": "You can only use Class Properties when the 'classProperties' plugin is enabled. (2:2)" -}