From 95d92d24ac7ee9046d0541dc971b6a61bc7a4ef0 Mon Sep 17 00:00:00 2001 From: fisker Date: Mon, 19 May 2025 06:24:50 +0000 Subject: [PATCH 1/2] Remove expression property from `Function{Declaration,Expression}` --- acorn-loose/src/expression.js | 1 - acorn/src/expression.js | 12 +++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/acorn-loose/src/expression.js b/acorn-loose/src/expression.js index 78c77f24..720d2c73 100644 --- a/acorn-loose/src/expression.js +++ b/acorn-loose/src/expression.js @@ -540,7 +540,6 @@ lp.initFunction = function(node) { node.params = [] if (this.options.ecmaVersion >= 6) { node.generator = false - node.expression = false } if (this.options.ecmaVersion >= 8) node.async = false diff --git a/acorn/src/expression.js b/acorn/src/expression.js index cb4a23d4..4c90c0dd 100644 --- a/acorn/src/expression.js +++ b/acorn/src/expression.js @@ -903,7 +903,7 @@ pp.parsePropertyName = function(prop) { pp.initFunction = function(node) { node.id = null - if (this.options.ecmaVersion >= 6) node.generator = node.expression = false + if (this.options.ecmaVersion >= 6) node.generator = false if (this.options.ecmaVersion >= 8) node.async = false } @@ -959,12 +959,14 @@ pp.parseArrowExpression = function(node, params, isAsync, forInit) { // Parse function body and check parameters. pp.parseFunctionBody = function(node, isArrowFunction, isMethod, forInit) { - let isExpression = isArrowFunction && this.type !== tt.braceL let oldStrict = this.strict, useStrict = false - if (isExpression) { + if (isArrowFunction) { + node.expression = this.type !== tt.braceL + } + + if (node.expression) { node.body = this.parseMaybeAssign(forInit) - node.expression = true this.checkParams(node, false) } else { let nonSimple = this.options.ecmaVersion >= 7 && !this.isSimpleParamList(node.params) @@ -988,10 +990,10 @@ pp.parseFunctionBody = function(node, isArrowFunction, isMethod, forInit) { // Ensure the function name isn't a forbidden identifier in strict mode, e.g. 'eval' if (this.strict && node.id) this.checkLValSimple(node.id, BIND_OUTSIDE) node.body = this.parseBlock(false, undefined, useStrict && !oldStrict) - node.expression = false this.adaptDirectivePrologue(node.body.body) this.labels = oldLabels } + this.exitScope() } From a87d1f2dbe72a5d4d8d6f24ea87e37d4de7c107d Mon Sep 17 00:00:00 2001 From: fisker Date: Tue, 20 May 2025 03:38:21 +0000 Subject: [PATCH 2/2] Fix tests --- test/tests-async-iteration.js | 24 ----- test/tests-asyncawait.js | 43 --------- test/tests-class-features-2022.js | 34 ------- test/tests-directive.js | 13 --- test/tests-dynamic-import.js | 1 - test/tests-harmony.js | 126 ++------------------------ test/tests-rest-spread-properties.js | 1 - test/tests-trailing-commas-in-func.js | 10 -- test/tests.js | 1 - 9 files changed, 10 insertions(+), 243 deletions(-) diff --git a/test/tests-async-iteration.js b/test/tests-async-iteration.js index 303aef16..5d7d2fca 100644 --- a/test/tests-async-iteration.js +++ b/test/tests-async-iteration.js @@ -23,7 +23,6 @@ test("async function f() { for await (x of xs); }", { "name": "f" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -76,7 +75,6 @@ test("async function f() { for await (var x of xs); }", { "name": "f" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -143,7 +141,6 @@ test("async function f() { for await (let x of xs); }", { "name": "f" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -210,7 +207,6 @@ test("async function f() { for\nawait (x of xs); }", { "name": "f" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -273,7 +269,6 @@ test("f = async function() { for await (x of xs); }", { "end": 45, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -421,7 +416,6 @@ test("obj = { async f() { for await (x of xs); } }", { "end": 42, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -504,7 +498,6 @@ test("class A { async f() { for await (x of xs); } }", { "end": 44, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -676,7 +669,6 @@ test("async function* f() { await a; yield b; }", { "name": "f" }, "generator": true, - "expression": false, "async": true, "params": [], "body": { @@ -759,7 +751,6 @@ test("f = async function*() { await a; yield b; }", { "end": 43, "id": null, "generator": true, - "expression": false, "async": true, "params": [], "body": { @@ -852,7 +843,6 @@ test("obj = { async* f() { await a; yield b; } }", { "end": 40, "id": null, "generator": true, - "expression": false, "async": true, "params": [], "body": { @@ -945,7 +935,6 @@ test("class A { async* f() { await a; yield b; } }", { "end": 42, "id": null, "generator": true, - "expression": false, "async": true, "params": [], "body": { @@ -1036,7 +1025,6 @@ test("class A { static async* f() { await a; yield b; } }", { "end": 49, "id": null, "generator": true, - "expression": false, "async": true, "params": [], "body": { @@ -1255,7 +1243,6 @@ test("var gen = { async *method() {} }", { "end": 30, "id": null, "generator": true, - "expression": false, "async": true, "params": [], "body": { @@ -1291,7 +1278,6 @@ test("export default async function*() {}", { "end": 35, "id": null, "generator": true, - "expression": false, "async": true, "params": [], "body": { @@ -1366,7 +1352,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 58, // "id": null, // "generator": true, -// "expression": false, // "async": true, // "params": [], // "body": { @@ -1455,7 +1440,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 63, // "id": null, // "generator": true, -// "expression": false, // "async": true, // "params": [], // "body": { @@ -1571,7 +1555,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 64, // "id": null, // "generator": true, -// "expression": false, // "async": true, // "params": [], // "body": { @@ -1601,7 +1584,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 62, // "id": null, // "generator": false, -// "expression": false, // "async": false, // "params": [], // "body": { @@ -1660,7 +1642,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 69, // "id": null, // "generator": true, -// "expression": false, // "async": true, // "params": [], // "body": { @@ -1690,7 +1671,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 67, // "id": null, // "generator": false, -// "expression": false, // "async": false, // "params": [], // "body": { @@ -1776,7 +1756,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 71, // "id": null, // "generator": true, -// "expression": false, // "async": true, // "params": [], // "body": { @@ -1823,7 +1802,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 67, // "id": null, // "generator": false, -// "expression": false, // "async": false, // "params": [], // "body": { @@ -1887,7 +1865,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 76, // "id": null, // "generator": true, -// "expression": false, // "async": true, // "params": [], // "body": { @@ -1934,7 +1911,6 @@ test("var C = class { async *method() {} }", {}, { "ecmaVersion": 9 }) // "end": 72, // "id": null, // "generator": false, -// "expression": false, // "async": false, // "params": [], // "body": { diff --git a/test/tests-asyncawait.js b/test/tests-asyncawait.js index 893f8ef3..9df47a3a 100644 --- a/test/tests-asyncawait.js +++ b/test/tests-asyncawait.js @@ -24,7 +24,6 @@ test("function foo() { }", { "name": "foo" }, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -55,7 +54,6 @@ test("async function foo() { }", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -97,7 +95,6 @@ test("async\nfunction foo() { }", { "name": "foo" }, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -132,7 +129,6 @@ test("export async function foo() { }", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -165,7 +161,6 @@ test("export default async function() { }", { "end": 35, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -200,7 +195,6 @@ test("async function await() { }", { "name": "await" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -243,7 +237,6 @@ test("(function foo() { })", { "name": "foo" }, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -279,7 +272,6 @@ test("(async function foo() { })", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -316,7 +308,6 @@ test("export default (async function() { })", { "end": 36, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -921,7 +912,6 @@ test("({foo() { }})", { "end": 11, "id": null, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -974,7 +964,6 @@ test("({async foo() { }})", { "end": 17, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -1027,7 +1016,6 @@ test("({async() { }})", { "end": 13, "id": null, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -1088,7 +1076,6 @@ test("({async await() { }})", { "end": 19, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -1160,7 +1147,6 @@ test("class A {foo() { }}", { "end": 18, "id": null, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -1219,7 +1205,6 @@ test("class A {async foo() { }}", { "end": 24, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -1276,7 +1261,6 @@ test("class A {static async foo() { }}", { "end": 31, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -1335,7 +1319,6 @@ test("class A {async() { }}", { "end": 20, "id": null, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -1392,7 +1375,6 @@ test("class A {static async() { }}", { "end": 27, "id": null, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -1449,7 +1431,6 @@ test("class A {*async() { }}", { "end": 21, "id": null, "generator": true, - "expression": false, "async": false, "params": [], "body": { @@ -1506,7 +1487,6 @@ test("class A {static* async() { }}", { "end": 28, "id": null, "generator": true, - "expression": false, "async": false, "params": [], "body": { @@ -1578,7 +1558,6 @@ test("class A {async await() { }}", { "end": 26, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -1635,7 +1614,6 @@ test("class A {static async await() { }}", { "end": 33, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -1706,7 +1684,6 @@ test("async function foo(a, b) { await a }", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [ { @@ -1769,7 +1746,6 @@ test("(async function foo(a) { await a })", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [ { @@ -1881,7 +1857,6 @@ test("({async foo(a) { await a }})", { "end": 26, "id": null, "generator": false, - "expression": false, "async": true, "params": [ { @@ -1962,7 +1937,6 @@ test("(class {async foo(a) { await a }})", { "end": 32, "id": null, "generator": false, - "expression": false, "async": true, "params": [ { @@ -2022,7 +1996,6 @@ test("async function foo(a, b) { await a + await b }", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [ { @@ -2100,7 +2073,6 @@ test("function foo() { await + 1 }", { "name": "foo" }, "generator": false, - "expression": false, "async": false, "params": [], "body": { @@ -2156,7 +2128,6 @@ test("async function foo() { await + 1 }", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -2228,7 +2199,6 @@ test("async function foo(a = async function foo() { await b }) {}", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [ { @@ -2252,7 +2222,6 @@ test("async function foo(a = async function foo() { await b }) {}", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -2307,7 +2276,6 @@ test("async function foo(a = async () => await b) {}", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [ { @@ -2369,7 +2337,6 @@ test("async function foo(a = {async bar() { await b }}) {}", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [ { @@ -2406,7 +2373,6 @@ test("async function foo(a = {async bar() { await b }}) {}", { "end": 47, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -2465,7 +2431,6 @@ test("async function foo(a = class {async bar() { await b }}) {}", { "name": "foo" }, "generator": false, - "expression": false, "async": true, "params": [ { @@ -2508,7 +2473,6 @@ test("async function foo(a = class {async bar() { await b }}) {}", { "end": 53, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -2569,7 +2533,6 @@ test("async function wrap() {\n(a = await b)\n}", { "name": "wrap" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -2629,7 +2592,6 @@ test("async function wrap() {\n({a = await b} = obj)\n}", { "name": "wrap" }, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -2723,7 +2685,6 @@ test("function* wrap() {\nasync(a = yield b)\n}", { }, "params": [], "generator": true, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -3331,7 +3292,6 @@ test( "end": 17, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -3387,7 +3347,6 @@ test( "end": 17, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -3443,7 +3402,6 @@ test( "end": 15, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { @@ -3498,7 +3456,6 @@ test( "end": 17, "id": null, "generator": false, - "expression": false, "async": true, "params": [], "body": { diff --git a/test/tests-class-features-2022.js b/test/tests-class-features-2022.js index 942910b3..249e3139 100644 --- a/test/tests-class-features-2022.js +++ b/test/tests-class-features-2022.js @@ -1086,7 +1086,6 @@ test("class C { static\nget\nfoo(){} }", { "start": 24, "end": 28, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -1159,7 +1158,6 @@ test("class C { async\nget(){} }", { "start": 19, "end": 23, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -1231,7 +1229,6 @@ test("class C { async\n get(){} }", { "start": 20, "end": 24, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -1304,7 +1301,6 @@ test("class C { get\n *foo(){} }", { "start": 19, "end": 23, "id": null, - "expression": false, "generator": true, "async": false, "params": [], @@ -1375,7 +1371,6 @@ test("class C { set\n *foo(){} }", { "start": 19, "end": 23, "id": null, - "expression": false, "generator": true, "async": false, "params": [], @@ -1412,7 +1407,6 @@ test("async function f() { class C { aaa = await } }", { }, "params": [], "generator": false, - "expression": false, "async": true, "body": { "type": "BlockStatement", @@ -2094,7 +2088,6 @@ test("class C { #aaa(){} }", { "start": 14, "end": 18, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -2152,7 +2145,6 @@ test("class C { *#aaa(){} }", { "start": 15, "end": 19, "id": null, - "expression": false, "generator": true, "async": false, "params": [], @@ -2210,7 +2202,6 @@ test("class C { async#aaa(){} }", { "start": 19, "end": 23, "id": null, - "expression": false, "generator": false, "async": true, "params": [], @@ -2268,7 +2259,6 @@ test("class C { async*#aaa(){} }", { "start": 20, "end": 24, "id": null, - "expression": false, "generator": true, "async": true, "params": [], @@ -2326,7 +2316,6 @@ test("class C { static#aaa(){} }", { "start": 20, "end": 24, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -2384,7 +2373,6 @@ test("class C { static*#aaa(){} }", { "start": 21, "end": 25, "id": null, - "expression": false, "generator": true, "async": false, "params": [], @@ -2442,7 +2430,6 @@ test("class C { static async#aaa(){} }", { "start": 26, "end": 30, "id": null, - "expression": false, "generator": false, "async": true, "params": [], @@ -2500,7 +2487,6 @@ test("class C { static async*#aaa(){} }", { "start": 27, "end": 31, "id": null, - "expression": false, "generator": true, "async": true, "params": [], @@ -2559,7 +2545,6 @@ test("class C { static\n*\n#aaa(){} }", { "start": 23, "end": 27, "id": null, - "expression": false, "generator": true, "async": false, "params": [], @@ -2616,7 +2601,6 @@ test("class C { static\nasync#aaa(){} }", { "start": 26, "end": 30, "id": null, - "expression": false, "generator": false, "async": true, "params": [], @@ -2673,7 +2657,6 @@ test("class C { static\nasync*\n#aaa(){} }", { "start": 28, "end": 32, "id": null, - "expression": false, "generator": true, "async": true, "params": [], @@ -2746,7 +2729,6 @@ test("class C { static\nasync\n#aaa(){} }", { "start": 27, "end": 31, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -2817,7 +2799,6 @@ test("class C { static\nasync\n*\n#aaa(){} }", { "start": 29, "end": 33, "id": null, - "expression": false, "generator": true, "async": false, "params": [], @@ -2891,7 +2872,6 @@ test("class C { static\n async\n #aaa(){} }", { "id": null, "params": [], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -2962,7 +2942,6 @@ test("class C { static\n async\n *\n #aaa(){} }", { "id": null, "params": [], "generator": true, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -3029,7 +3008,6 @@ test("class C { get #aaa(){} }", { "start": 18, "end": 22, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -3087,7 +3065,6 @@ test("class C { set #aaa(x){} }", { "start": 18, "end": 23, "id": null, - "expression": false, "generator": false, "async": false, "params": [ @@ -3152,7 +3129,6 @@ test("class C { static get #aaa(){} }", { "start": 25, "end": 29, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -3210,7 +3186,6 @@ test("class C { static set #aaa(x){} }", { "start": 25, "end": 30, "id": null, - "expression": false, "generator": false, "async": false, "params": [ @@ -3276,7 +3251,6 @@ test("class C { static\nget\n#aaa(){} }", { "start": 25, "end": 29, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -3349,7 +3323,6 @@ test("class C { get; #aaa(){} }", { "start": 19, "end": 23, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -3441,7 +3414,6 @@ test("class C { #aaa; f() { this.#aaa } }", { "start": 17, "end": 33, "id": null, - "expression": false, "generator": false, "async": false, "params": [], @@ -3537,7 +3509,6 @@ test("class C { #aaa; f(obj) { obj.#aaa } }", { "start": 17, "end": 35, "id": null, - "expression": false, "generator": false, "async": false, "params": [ @@ -3641,7 +3612,6 @@ test("class C { #aaa; f(obj) { obj?.#aaa } }", { "start": 17, "end": 36, "id": null, - "expression": false, "generator": false, "async": false, "params": [ @@ -3750,7 +3720,6 @@ test("class C { #aaa; f(f) { f()?.#aaa } }", { "start": 17, "end": 34, "id": null, - "expression": false, "generator": false, "async": false, "params": [ @@ -5991,7 +5960,6 @@ test(`class C { } }, id: null, - expression: false, generator: false, async: false, params: [], @@ -6061,7 +6029,6 @@ test(`class C { } }, id: null, - expression: false, generator: false, async: false, params: [], @@ -6131,7 +6098,6 @@ test(`class C { } }, id: null, - expression: false, generator: false, async: false, params: [ diff --git a/test/tests-directive.js b/test/tests-directive.js index 35e20e8d..da3a5349 100644 --- a/test/tests-directive.js +++ b/test/tests-directive.js @@ -45,7 +45,6 @@ test("function wrap() { foo }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -96,7 +95,6 @@ test("!function wrap() { foo }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -334,7 +332,6 @@ test("function wrap() { \"use strict\"\n foo }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -398,7 +395,6 @@ test("!function wrap() { \"use strict\"\n foo }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -557,7 +553,6 @@ test("({ wrap() { \"use strict\"; foo } })", { "end": 31, "id": null, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -640,7 +635,6 @@ test("(class { wrap() { \"use strict\"; foo } })", { "end": 37, "id": null, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -772,7 +766,6 @@ test("function wrap() { \"use asm\"; \"use strict\"; foo }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -889,7 +882,6 @@ test("function wrap() { \"use asm\"; foo; \"use strict\" }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -988,7 +980,6 @@ test("function wrap() { { \"use strict\" } foo }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -1086,7 +1077,6 @@ test("function wrap() { (\"use strict\"); foo }", { "name": "wrap" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -1144,7 +1134,6 @@ test("function a() { \"use strict\" } \"use strict\"; foo", { "name": "a" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -1211,7 +1200,6 @@ test("function a(a = function() { \"use strict\"; foo }) { \"use strict\" }", { "name": "a" }, "generator": false, - "expression": false, "params": [ { "type": "AssignmentPattern", @@ -1229,7 +1217,6 @@ test("function a(a = function() { \"use strict\"; foo }) { \"use strict\" }", { "end": 47, "id": null, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", diff --git a/test/tests-dynamic-import.js b/test/tests-dynamic-import.js index 3224e923..c77002f4 100644 --- a/test/tests-dynamic-import.js +++ b/test/tests-dynamic-import.js @@ -90,7 +90,6 @@ test( start: 0, end: 39, id: { type: 'Identifier', start: 10, end: 11, name: 'a' }, - expression: false, generator: true, async: false, params: [], diff --git a/test/tests-harmony.js b/test/tests-harmony.js index b6d46610..2ca37e4d 100644 --- a/test/tests-harmony.js +++ b/test/tests-harmony.js @@ -215,7 +215,6 @@ test("function test() {'use strict'; 0o0; }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 37} @@ -370,7 +369,6 @@ test("function test() {'use strict'; 0O0; }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 37} @@ -1036,8 +1034,7 @@ test("`outer${{x: {y: 10}}}bar${`nested${function(){return 1;}}endnest`}end`",{ } } ] - }, - expression: false + } } ], quasis: [ @@ -2679,7 +2676,6 @@ test("x = { method() { } }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 12}, end: {line: 1, column: 18} @@ -2766,7 +2762,6 @@ test("x = { method(test) { } }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 12}, end: {line: 1, column: 22} @@ -2847,7 +2842,6 @@ test("x = { 'method'() { } }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 14}, end: {line: 1, column: 20} @@ -2927,7 +2921,6 @@ test("x = { get() { } }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 9}, end: {line: 1, column: 15} @@ -3007,7 +3000,6 @@ test("x = { set() { } }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 9}, end: {line: 1, column: 15} @@ -3097,7 +3089,6 @@ test("x = { method() { super.a(); } }", { end: {line: 1, column: 29} }, id: null, - expression: false, generator: false, params: [], body: { @@ -4350,7 +4341,6 @@ test("export function parse() { }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 7}, end: {line: 1, column: 27} @@ -4463,7 +4453,6 @@ test("export default function () {}", { range: [15, 29], id: null, generator: false, - expression: false, params: [], body: { type: "BlockStatement", @@ -4489,7 +4478,6 @@ test("export default function f() {}", { name: "f" }, generator: false, - expression: false, params: [], body: { type: "BlockStatement", @@ -5502,7 +5490,6 @@ test("(function* () { yield v })", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 1}, end: {line: 1, column: 25} @@ -5573,7 +5560,6 @@ test("(function* () { yield\nv })", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 1}, end: {line: 2, column: 3} @@ -5634,7 +5620,6 @@ test("(function* () { yield *v })", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 1}, end: {line: 1, column: 26} @@ -5699,7 +5684,6 @@ test("function* test () { yield *v }", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 30} @@ -5776,7 +5760,6 @@ test("var x = { *test () { yield *v } };", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 16}, end: {line: 1, column: 31} @@ -5825,7 +5808,6 @@ test("function* foo() { console.log(yield); }", { type: "Identifier", }, generator: true, - expression: false, params: [], body: { body: [ @@ -5886,7 +5868,6 @@ test("function* t() {}", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 16} @@ -5950,7 +5931,6 @@ test("(function* () { yield yield 10 })", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 1}, end: {line: 1, column: 32} @@ -6471,7 +6451,6 @@ test("class A {get() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 12}, end: {line: 1, column: 17} @@ -6543,7 +6522,6 @@ test("class A { static get() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 20}, end: {line: 1, column: 25} @@ -6622,7 +6600,6 @@ test("class A extends B {get foo() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 26}, end: {line: 1, column: 31} @@ -6701,7 +6678,6 @@ test("class A extends B { static get foo() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 34}, end: {line: 1, column: 39} @@ -6780,7 +6756,6 @@ test("class A {set a(v) {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 14}, end: {line: 1, column: 20} @@ -6859,7 +6834,6 @@ test("class A { static set a(v) {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 22}, end: {line: 1, column: 28} @@ -6938,7 +6912,6 @@ test("class A {set(v) {};}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 12}, end: {line: 1, column: 18} @@ -7017,7 +6990,6 @@ test("class A { static set(v) {};}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 20}, end: {line: 1, column: 26} @@ -7118,7 +7090,6 @@ test("class A {*gen(v) { yield v; }}", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 13}, end: {line: 1, column: 29} @@ -7219,7 +7190,6 @@ test("class A { static *gen(v) { yield v; }}", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 21}, end: {line: 1, column: 37} @@ -7292,7 +7262,6 @@ test("(class { *static() {} })", { "end": 21, "id": null, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -7398,7 +7367,6 @@ test("\"use strict\"; (class A extends B {constructor() { super() }})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 45}, end: {line: 1, column: 59} @@ -7461,7 +7429,6 @@ test("class A {'constructor'() {}}", { type: "FunctionExpression", id: null, generator: false, - expression: false, params: [], body: { type: "BlockStatement", @@ -7518,7 +7485,6 @@ test("class A { get ['constructor']() {} }", { "id": null, "params": [], "generator": false, - "expression": false, "body": { "type": "BlockStatement", "start": 32, @@ -7575,7 +7541,6 @@ test("class A {static foo() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 19}, end: {line: 1, column: 24} @@ -7648,7 +7613,6 @@ test("class A {foo() {} static bar() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 12}, end: {line: 1, column: 17} @@ -7685,7 +7649,6 @@ test("class A {foo() {} static bar() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 28}, end: {line: 1, column: 33} @@ -7761,7 +7724,6 @@ test("class A { foo() {} bar() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 13}, end: {line: 1, column: 18} @@ -7798,7 +7760,6 @@ test("class A { foo() {} bar() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 22}, end: {line: 1, column: 27} @@ -7872,7 +7833,6 @@ test("class A { get foo() {} set foo(v) {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 17}, end: {line: 1, column: 22} @@ -7916,7 +7876,6 @@ test("class A { get foo() {} set foo(v) {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 30}, end: {line: 1, column: 36} @@ -7990,7 +7949,6 @@ test("class A { static get foo() {} get foo() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 24}, end: {line: 1, column: 29} @@ -8027,7 +7985,6 @@ test("class A { static get foo() {} get foo() {}}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 37}, end: {line: 1, column: 42} @@ -8101,7 +8058,6 @@ test("class A { static get foo() {} static get bar() {} }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 24}, end: {line: 1, column: 29} @@ -8138,7 +8094,6 @@ test("class A { static get foo() {} static get bar() {} }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 44}, end: {line: 1, column: 49} @@ -8212,7 +8167,6 @@ test("class A { static get foo() {} static set foo(v) {} get foo() {} set foo(v) } }, generator: false, - expression: false, loc: { start: {line: 1, column: 24}, end: {line: 1, column: 29} @@ -8256,7 +8210,6 @@ test("class A { static get foo() {} static set foo(v) {} get foo() {} set foo(v) } }, generator: false, - expression: false, loc: { start: {line: 1, column: 44}, end: {line: 1, column: 50} @@ -8293,7 +8246,6 @@ test("class A { static get foo() {} static set foo(v) {} get foo() {} set foo(v) } }, generator: false, - expression: false, loc: { start: {line: 1, column: 58}, end: {line: 1, column: 63} @@ -8337,7 +8289,6 @@ test("class A { static get foo() {} static set foo(v) {} get foo() {} set foo(v) } }, generator: false, - expression: false, loc: { start: {line: 1, column: 71}, end: {line: 1, column: 77} @@ -8432,8 +8383,7 @@ test("class A { static [foo]() {} }", { end: {line: 1, column: 27} }, body: [] - }, - expression: false + } } }] } @@ -8508,8 +8458,7 @@ test("class A { static get [foo]() {} }", { end: {line: 1, column: 31} }, body: [] - }, - expression: false + } } }] } @@ -8567,7 +8516,6 @@ test("class A { set foo(v) {} get foo() {} }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 17}, end: {line: 1, column: 23} @@ -8604,7 +8552,6 @@ test("class A { set foo(v) {} get foo() {} }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 31}, end: {line: 1, column: 36} @@ -8699,8 +8646,7 @@ test("class A { foo() {} get foo() {} }",{ end: {line: 1, column: 18} }, body: [] - }, - expression: false + } } }, { @@ -8736,8 +8682,7 @@ test("class A { foo() {} get foo() {} }",{ end: {line: 1, column: 31} }, body: [] - }, - expression: false + } } } ] @@ -8942,7 +8887,6 @@ test("({[x]: function() {}})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 7}, end: {line: 1, column: 20} @@ -9091,7 +9035,6 @@ test("({get [x]() {}, set [x](v) {}})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 9}, end: {line: 1, column: 14} @@ -9136,7 +9079,6 @@ test("({get [x]() {}, set [x](v) {}})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 23}, end: {line: 1, column: 29} @@ -9201,7 +9143,6 @@ test("({[x]() {}})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 5}, end: {line: 1, column: 10} @@ -9386,7 +9327,6 @@ test("function f({[x]: y}) {}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 23} @@ -9463,7 +9403,6 @@ test("var x = {*[test]() { yield *v; }}", { } }, generator: true, - expression: false, loc: { start: {line: 1, column: 16}, end: {line: 1, column: 32} @@ -9564,8 +9503,7 @@ test("class A {[x]() {}}", { end: {line: 1, column: 17} }, body: [] - }, - expression: false + } } }] } @@ -9639,7 +9577,6 @@ test("function f([x] = [1]) {}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 24} @@ -9731,7 +9668,6 @@ test("function f([x] = [1]) { 'use strict' }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 38} @@ -9844,7 +9780,6 @@ test("function f({x} = {x: 10}) {}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 28} @@ -9963,7 +9898,6 @@ test("f = function({x} = {x: 10}) {}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 4}, end: {line: 1, column: 30} @@ -10093,7 +10027,6 @@ test("({f: function({x} = {x: 10}) {}})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 5}, end: {line: 1, column: 31} @@ -10232,7 +10165,6 @@ test("({f({x} = {x: 10}) {}})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 3}, end: {line: 1, column: 21} @@ -10375,7 +10307,6 @@ test("(class {f({x} = {x: 10}) {}})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 9}, end: {line: 1, column: 27} @@ -10577,7 +10508,6 @@ test("x = function(y = 1) {}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 4}, end: {line: 1, column: 22} @@ -10648,7 +10578,6 @@ test("function f(a = 1) {}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 20} @@ -10727,7 +10656,6 @@ test("x = { f: function(a=1) {} }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 9}, end: {line: 1, column: 25} @@ -10830,7 +10758,6 @@ test("x = { f(a=1) {} }", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 7}, end: {line: 1, column: 15} @@ -10914,7 +10841,6 @@ test("function f(a, ...b) {}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 22} @@ -10978,7 +10904,6 @@ test("function x([ a, b ]){}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 22} @@ -11078,7 +11003,6 @@ test("function x({ a, b }){}", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 0}, end: {line: 1, column: 22} @@ -11148,7 +11072,6 @@ test("(function x([ a, b ]){})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 1}, end: {line: 1, column: 23} @@ -11255,7 +11178,6 @@ test("(function x({ a, b }){})", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 1}, end: {line: 1, column: 23} @@ -11335,7 +11257,6 @@ test("({ x([ a, b ]){} })", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 4}, end: {line: 1, column: 16} @@ -11426,7 +11347,6 @@ test("({ x(...[ a, b ]){} })", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 4}, end: {line: 1, column: 19} @@ -11662,7 +11582,6 @@ test("({ x({ a: { w, x }, b: [y, z] }, ...[a, b, c]){} })", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 4}, end: {line: 1, column: 48} @@ -13427,7 +13346,6 @@ test("(function () { yield* 10 })", { } }, generator: false, - expression: false, loc: { start: {line: 1, column: 1}, end: {line: 1, column: 26} @@ -13712,8 +13630,7 @@ test('function normal(x, y = 10) {}', { body: { type: "BlockStatement", body: [] - }, - expression: false + } }] }, {ecmaVersion: 6}); @@ -14375,8 +14292,7 @@ test("class A { static() {} }", { type: "BlockStatement", range: [19, 21], body: [] - }, - expression: false + } } }] } @@ -14472,8 +14388,7 @@ test("class A { *static() {} }", { type: "BlockStatement", range: [20, 22], body: [] - }, - expression: false + } } }] } @@ -14865,8 +14780,7 @@ test("function foo() { new.target; }", { } ] }, - generator: false, - expression: false + generator: false } ], sourceType: "script" @@ -14886,7 +14800,6 @@ test("export default function foo() {} false", { type: "Identifier" }, generator: false, - expression: false, params: [], body: { body: [], @@ -15152,7 +15065,6 @@ test("function foo() { return {arguments} }", { "name": "foo" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15214,7 +15126,6 @@ test("function foo() { return {eval} }", { "name": "foo" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15276,7 +15187,6 @@ test("function foo() { 'use strict'; return {arguments} }", { "name": "foo" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15350,7 +15260,6 @@ test("function foo() { 'use strict'; return {eval} }", { "name": "foo" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15425,7 +15334,6 @@ test("function foo() { return {yield} }", { "name": "foo" }, "generator": false, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15500,7 +15408,6 @@ test("function* foo(a = function*(b) { yield b }) { }", { "name": "foo" }, "generator": true, - "expression": false, "params": [ { "type": "AssignmentPattern", @@ -15518,7 +15425,6 @@ test("function* foo(a = function*(b) { yield b }) { }", { "end": 42, "id": null, "generator": true, - "expression": false, "params": [ { "type": "Identifier", @@ -15583,7 +15489,6 @@ test("function* yield() {}", { "name": "yield" }, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15629,7 +15534,6 @@ test("({*yield() {}})", { "end": 13, "id": null, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15687,7 +15591,6 @@ test("class A {*yield() {}}", { "end": 20, "id": null, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15734,7 +15637,6 @@ test("function* foo(a = function* foo() { yield b }) {}", { "name": "foo" }, "generator": true, - "expression": false, "params": [ { "type": "AssignmentPattern", @@ -15757,7 +15659,6 @@ test("function* foo(a = function* foo() { yield b }) {}", { "name": "foo" }, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15812,7 +15713,6 @@ test("function* foo(a = {*bar() { yield b }}) {}", { "name": "foo" }, "generator": true, - "expression": false, "params": [ { "type": "AssignmentPattern", @@ -15848,7 +15748,6 @@ test("function* foo(a = {*bar() { yield b }}) {}", { "end": 37, "id": null, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -15907,7 +15806,6 @@ test("function* foo(a = class {*bar() { yield b }}) {}", { "name": "foo" }, "generator": true, - "expression": false, "params": [ { "type": "AssignmentPattern", @@ -15949,7 +15847,6 @@ test("function* foo(a = class {*bar() { yield b }}) {}", { "end": 43, "id": null, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -16010,7 +15907,6 @@ test("function* wrap() {\n(a = yield b)\n}", { "name": "wrap" }, "generator": true, - "expression": false, "params": [], "body": { "type": "BlockStatement", @@ -16071,7 +15967,6 @@ test("function* wrap() {\n({a = yield b} = obj)\n}", { }, "params": [], "generator": true, - "expression": false, "body": { "type": "BlockStatement", "start": 17, @@ -16871,7 +16766,6 @@ test("for (function (){ a in b };;);", { } }, id: null, - expression: false, generator: false, async: false, params: [], diff --git a/test/tests-rest-spread-properties.js b/test/tests-rest-spread-properties.js index 9cf4637e..0555c082 100644 --- a/test/tests-rest-spread-properties.js +++ b/test/tests-rest-spread-properties.js @@ -1338,7 +1338,6 @@ test("(function({x, ...y}) {})", { "end": 23, "id": null, "generator": false, - "expression": false, "params": [ { "type": "ObjectPattern", diff --git a/test/tests-trailing-commas-in-func.js b/test/tests-trailing-commas-in-func.js index b070812b..1481fc78 100644 --- a/test/tests-trailing-commas-in-func.js +++ b/test/tests-trailing-commas-in-func.js @@ -31,7 +31,6 @@ test("function foo(a,) { }", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -67,7 +66,6 @@ test("(function(a,) { })", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -196,7 +194,6 @@ test("({foo(a,) {}})", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -262,7 +259,6 @@ test("class A {foo(a,) {}}", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -327,7 +323,6 @@ test("class A {static foo(a,) {}}", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -391,7 +386,6 @@ test("(class {foo(a,) {}})", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -456,7 +450,6 @@ test("(class {static foo(a,) {}})", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -502,7 +495,6 @@ test("export default function foo(a,) { }", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -544,7 +536,6 @@ test("export default (function foo(a,) { })", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", @@ -586,7 +577,6 @@ test("export function foo(a,) { }", { } ], "generator": false, - "expression": false, "async": false, "body": { "type": "BlockStatement", diff --git a/test/tests.js b/test/tests.js index 11bc4cb2..8eaf88a5 100644 --- a/test/tests.js +++ b/test/tests.js @@ -29865,7 +29865,6 @@ test(`typeof async function f(){} }, name: "f" }, - expression: false, generator: false, async: true, params: [],