diff --git a/test/language/expressions/arrow-function/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/arrow-function/forbidden-ext/b1/arrow-function-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/arrow-function/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/arrow-function/forbidden-ext/b1/arrow-function-forbidden-ext-direct-access-prop-arguments.js index 21aafae5a0..c1b29a927e 100644 --- a/test/language/expressions/arrow-function/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/arrow-function/forbidden-ext/b1/arrow-function-forbidden-ext-direct-access-prop-arguments.js @@ -16,7 +16,7 @@ var callCount = 0; var f; f = () => { f.arguments; - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { diff --git a/test/language/expressions/arrow-function/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/arrow-function/forbidden-ext/b1/arrow-function-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/arrow-function/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/arrow-function/forbidden-ext/b1/arrow-function-forbidden-ext-direct-access-prop-caller.js index 9e6de13c3c..2dac570750 100644 --- a/test/language/expressions/arrow-function/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/arrow-function/forbidden-ext/b1/arrow-function-forbidden-ext-direct-access-prop-caller.js @@ -16,7 +16,7 @@ var callCount = 0; var f; f = () => { f.caller; - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { diff --git a/test/language/expressions/arrow-function/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/arrow-function/forbidden-ext/b2/arrow-function-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/arrow-function/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/arrow-function/forbidden-ext/b2/arrow-function-forbidden-ext-indirect-access-prop-caller.js index ec8b524fa4..7d48cb0951 100644 --- a/test/language/expressions/arrow-function/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/arrow-function/forbidden-ext/b2/arrow-function-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ var f; f = () => { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { diff --git a/test/language/expressions/async-arrow-function/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/async-arrow-function/forbidden-ext/b1/async-arrow-function-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/async-arrow-function/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/async-arrow-function/forbidden-ext/b1/async-arrow-function-forbidden-ext-direct-access-prop-arguments.js index fb8a2fc5e7..672766e4d6 100644 --- a/test/language/expressions/async-arrow-function/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/async-arrow-function/forbidden-ext/b1/async-arrow-function-forbidden-ext-direct-access-prop-arguments.js @@ -24,7 +24,7 @@ var callCount = 0; var f; f = async () => { f.arguments; - callCount = callCount + 1; + callCount++; }; f() diff --git a/test/language/expressions/async-arrow-function/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/async-arrow-function/forbidden-ext/b1/async-arrow-function-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/async-arrow-function/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/async-arrow-function/forbidden-ext/b1/async-arrow-function-forbidden-ext-direct-access-prop-caller.js index cd724ca15d..436b0a3e7f 100644 --- a/test/language/expressions/async-arrow-function/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/async-arrow-function/forbidden-ext/b1/async-arrow-function-forbidden-ext-direct-access-prop-caller.js @@ -24,7 +24,7 @@ var callCount = 0; var f; f = async () => { f.caller; - callCount = callCount + 1; + callCount++; }; f() diff --git a/test/language/expressions/async-arrow-function/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/async-arrow-function/forbidden-ext/b2/async-arrow-function-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/async-arrow-function/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/async-arrow-function/forbidden-ext/b2/async-arrow-function-forbidden-ext-indirect-access-prop-caller.js index 0ff5678095..d93f680e21 100644 --- a/test/language/expressions/async-arrow-function/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/async-arrow-function/forbidden-ext/b2/async-arrow-function-forbidden-ext-indirect-access-prop-caller.js @@ -29,7 +29,7 @@ var f; f = async () => { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; }; f() diff --git a/test/language/expressions/async-function/named-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-named-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/async-function/named-forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-named-forbidden-ext-direct-access-prop-arguments.js index 9449001790..8a55a9adcf 100644 --- a/test/language/expressions/async-function/named-forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-named-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ info: | var callCount = 0; var f = async function f() { f.arguments; - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/expressions/async-function/named-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-named-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/async-function/named-forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-named-forbidden-ext-direct-access-prop-caller.js index 12a8cf27bf..f1ec8118d2 100644 --- a/test/language/expressions/async-function/named-forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-named-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ info: | var callCount = 0; var f = async function f() { f.caller; - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/expressions/async-function/nameless-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-nameless-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/async-function/nameless-forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-nameless-forbidden-ext-direct-access-prop-arguments.js index 6c9a535f66..3431bc62f8 100644 --- a/test/language/expressions/async-function/nameless-forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-nameless-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ info: | var callCount = 0; var f = async function() { f.arguments; - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/expressions/async-function/nameless-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-nameless-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/async-function/nameless-forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-nameless-forbidden-ext-direct-access-prop-caller.js index 9e6ae1f336..e22523857f 100644 --- a/test/language/expressions/async-function/nameless-forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/async-function/forbidden-ext/b1/async-func-expr-nameless-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ info: | var callCount = 0; var f = async function() { f.caller; - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/expressions/async-function/named-forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/async-function/forbidden-ext/b2/async-func-expr-named-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/async-function/named-forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/async-function/forbidden-ext/b2/async-func-expr-named-forbidden-ext-indirect-access-prop-caller.js index f1ecdaa6b8..71d070fe3b 100644 --- a/test/language/expressions/async-function/named-forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/async-function/forbidden-ext/b2/async-func-expr-named-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ var callCount = 0; var f = async function f() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/expressions/async-function/nameless-forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/async-function/forbidden-ext/b2/async-func-expr-nameless-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/async-function/nameless-forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/async-function/forbidden-ext/b2/async-func-expr-nameless-forbidden-ext-indirect-access-prop-caller.js index e0599b5bb8..bad9a0f406 100644 --- a/test/language/expressions/async-function/nameless-forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/async-function/forbidden-ext/b2/async-func-expr-nameless-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ var callCount = 0; var f = async function() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/expressions/async-generator/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-func-expr-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/async-generator/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/async-generator/forbidden-ext/b1/async-gen-func-expr-forbidden-ext-direct-access-prop-arguments.js index 4308e63b22..aea8685269 100644 --- a/test/language/expressions/async-generator/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-func-expr-forbidden-ext-direct-access-prop-arguments.js @@ -20,7 +20,7 @@ var callCount = 0; var f; f = async function*() { f.arguments; - callCount = callCount + 1; + callCount++; }; f().next() diff --git a/test/language/expressions/async-generator/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-func-expr-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/async-generator/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/async-generator/forbidden-ext/b1/async-gen-func-expr-forbidden-ext-direct-access-prop-caller.js index 06f1f3df36..071d311967 100644 --- a/test/language/expressions/async-generator/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-func-expr-forbidden-ext-direct-access-prop-caller.js @@ -20,7 +20,7 @@ var callCount = 0; var f; f = async function*() { f.caller; - callCount = callCount + 1; + callCount++; }; f().next() diff --git a/test/language/expressions/async-generator/named-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-named-func-expr-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/async-generator/named-forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/async-generator/forbidden-ext/b1/async-gen-named-func-expr-forbidden-ext-direct-access-prop-arguments.js index 8325793003..0144ddb1bf 100644 --- a/test/language/expressions/async-generator/named-forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-named-func-expr-forbidden-ext-direct-access-prop-arguments.js @@ -20,7 +20,7 @@ var callCount = 0; var f; f = async function* g() { f.arguments; - callCount = callCount + 1; + callCount++; }; f().next() diff --git a/test/language/expressions/async-generator/named-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-named-func-expr-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/async-generator/named-forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/async-generator/forbidden-ext/b1/async-gen-named-func-expr-forbidden-ext-direct-access-prop-caller.js index fc250024d5..928c49846d 100644 --- a/test/language/expressions/async-generator/named-forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/async-generator/forbidden-ext/b1/async-gen-named-func-expr-forbidden-ext-direct-access-prop-caller.js @@ -20,7 +20,7 @@ var callCount = 0; var f; f = async function* g() { f.caller; - callCount = callCount + 1; + callCount++; }; f().next() diff --git a/test/language/expressions/async-generator/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/async-generator/forbidden-ext/b2/async-gen-func-expr-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/async-generator/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/async-generator/forbidden-ext/b2/async-gen-func-expr-forbidden-ext-indirect-access-prop-caller.js index 6ae41f8f15..1c7bbd005f 100644 --- a/test/language/expressions/async-generator/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/async-generator/forbidden-ext/b2/async-gen-func-expr-forbidden-ext-indirect-access-prop-caller.js @@ -25,7 +25,7 @@ var f; f = async function*() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; }; f().next() diff --git a/test/language/expressions/async-generator/named-forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/async-generator/forbidden-ext/b2/async-gen-named-func-expr-forbidden-ext-indirect-access-prop-caller.js similarity index 98% rename from test/language/expressions/async-generator/named-forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/async-generator/forbidden-ext/b2/async-gen-named-func-expr-forbidden-ext-indirect-access-prop-caller.js index ba8df7b2f5..e4fc69a29b 100644 --- a/test/language/expressions/async-generator/named-forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/async-generator/forbidden-ext/b2/async-gen-named-func-expr-forbidden-ext-indirect-access-prop-caller.js @@ -25,7 +25,7 @@ var f; f = async function* g() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; }; f().next() diff --git a/test/language/expressions/class/async-gen-method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/async-gen-method-static/forbidden-ext/b1/cls-expr-async-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/class/async-gen-method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/async-gen-method-static/forbidden-ext/b1/cls-expr-async-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js index dcbe61067d..34f19bc3aa 100644 --- a/test/language/expressions/class/async-gen-method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/async-gen-method-static/forbidden-ext/b1/cls-expr-async-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { static async *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-gen-method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/async-gen-method-static/forbidden-ext/b1/cls-expr-async-gen-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/class/async-gen-method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/async-gen-method-static/forbidden-ext/b1/cls-expr-async-gen-meth-static-forbidden-ext-direct-access-prop-caller.js index 5c999ce988..001fdc4d00 100644 --- a/test/language/expressions/class/async-gen-method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/async-gen-method-static/forbidden-ext/b1/cls-expr-async-gen-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { static async *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-gen-method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/async-gen-method-static/forbidden-ext/b2/cls-expr-async-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/async-gen-method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/async-gen-method-static/forbidden-ext/b2/cls-expr-async-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js index c437ecff29..4cda39e0b0 100644 --- a/test/language/expressions/class/async-gen-method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/async-gen-method-static/forbidden-ext/b2/cls-expr-async-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ var C = class { static async *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-gen-method/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/async-gen-method/forbidden-ext/b1/cls-expr-async-gen-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/class/async-gen-method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/async-gen-method/forbidden-ext/b1/cls-expr-async-gen-meth-forbidden-ext-direct-access-prop-arguments.js index 23c542b3d4..4ddba4bf4f 100644 --- a/test/language/expressions/class/async-gen-method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/async-gen-method/forbidden-ext/b1/cls-expr-async-gen-meth-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { async *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-gen-method/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/async-gen-method/forbidden-ext/b1/cls-expr-async-gen-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/class/async-gen-method/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/async-gen-method/forbidden-ext/b1/cls-expr-async-gen-meth-forbidden-ext-direct-access-prop-caller.js index 747a5fd632..7200d5f594 100644 --- a/test/language/expressions/class/async-gen-method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/async-gen-method/forbidden-ext/b1/cls-expr-async-gen-meth-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { async *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-gen-method/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/async-gen-method/forbidden-ext/b2/cls-expr-async-gen-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/async-gen-method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/async-gen-method/forbidden-ext/b2/cls-expr-async-gen-meth-forbidden-ext-indirect-access-prop-caller.js index 6bccaec44c..572c68a116 100644 --- a/test/language/expressions/class/async-gen-method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/async-gen-method/forbidden-ext/b2/cls-expr-async-gen-meth-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ var C = class { async *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/async-method-static/forbidden-ext/b1/cls-expr-async-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/class/async-method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/async-method-static/forbidden-ext/b1/cls-expr-async-meth-static-forbidden-ext-direct-access-prop-arguments.js index 2d182068bb..c0f425965d 100644 --- a/test/language/expressions/class/async-method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/async-method-static/forbidden-ext/b1/cls-expr-async-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -20,7 +20,7 @@ var callCount = 0; var C = class { static async method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/async-method-static/forbidden-ext/b1/cls-expr-async-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/class/async-method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/async-method-static/forbidden-ext/b1/cls-expr-async-meth-static-forbidden-ext-direct-access-prop-caller.js index deb5a0969e..18fd49d62b 100644 --- a/test/language/expressions/class/async-method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/async-method-static/forbidden-ext/b1/cls-expr-async-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -20,7 +20,7 @@ var callCount = 0; var C = class { static async method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/async-method-static/forbidden-ext/b2/cls-expr-async-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/async-method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/async-method-static/forbidden-ext/b2/cls-expr-async-meth-static-forbidden-ext-indirect-access-prop-caller.js index 1623b1de53..8e1c880ff4 100644 --- a/test/language/expressions/class/async-method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/async-method-static/forbidden-ext/b2/cls-expr-async-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -25,7 +25,7 @@ var C = class { static async method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-method/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/async-method/forbidden-ext/b1/cls-expr-async-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/class/async-method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/async-method/forbidden-ext/b1/cls-expr-async-meth-forbidden-ext-direct-access-prop-arguments.js index ce5a81a034..3d59d0cef0 100644 --- a/test/language/expressions/class/async-method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/async-method/forbidden-ext/b1/cls-expr-async-meth-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ var callCount = 0; var C = class { async method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-method/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/async-method/forbidden-ext/b1/cls-expr-async-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/class/async-method/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/async-method/forbidden-ext/b1/cls-expr-async-meth-forbidden-ext-direct-access-prop-caller.js index 9eb7f09a8c..0eb78693b2 100644 --- a/test/language/expressions/class/async-method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/async-method/forbidden-ext/b1/cls-expr-async-meth-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ var callCount = 0; var C = class { async method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/async-method/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/async-method/forbidden-ext/b2/cls-expr-async-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/async-method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/async-method/forbidden-ext/b2/cls-expr-async-meth-forbidden-ext-indirect-access-prop-caller.js index 1fa8aa5f59..412b5fbba3 100644 --- a/test/language/expressions/class/async-method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/async-method/forbidden-ext/b2/cls-expr-async-meth-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ var C = class { async method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/gen-method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/gen-method-static/forbidden-ext/b1/cls-expr-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/class/gen-method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/gen-method-static/forbidden-ext/b1/cls-expr-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js index 66d2625568..62c9c149ef 100644 --- a/test/language/expressions/class/gen-method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/gen-method-static/forbidden-ext/b1/cls-expr-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { static *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/gen-method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/gen-method-static/forbidden-ext/b1/cls-expr-gen-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/class/gen-method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/gen-method-static/forbidden-ext/b1/cls-expr-gen-meth-static-forbidden-ext-direct-access-prop-caller.js index 1150710555..83bcd52a22 100644 --- a/test/language/expressions/class/gen-method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/gen-method-static/forbidden-ext/b1/cls-expr-gen-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { static *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/gen-method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/gen-method-static/forbidden-ext/b2/cls-expr-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/gen-method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/gen-method-static/forbidden-ext/b2/cls-expr-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js index 9f69e68eac..a8177c2fcc 100644 --- a/test/language/expressions/class/gen-method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/gen-method-static/forbidden-ext/b2/cls-expr-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ var C = class { static *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/gen-method/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/gen-method/forbidden-ext/b1/cls-expr-gen-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/class/gen-method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/gen-method/forbidden-ext/b1/cls-expr-gen-meth-forbidden-ext-direct-access-prop-arguments.js index d42f533300..88bb2d6a42 100644 --- a/test/language/expressions/class/gen-method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/gen-method/forbidden-ext/b1/cls-expr-gen-meth-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/gen-method/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/gen-method/forbidden-ext/b1/cls-expr-gen-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/class/gen-method/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/gen-method/forbidden-ext/b1/cls-expr-gen-meth-forbidden-ext-direct-access-prop-caller.js index 507e3060b6..2c766b990c 100644 --- a/test/language/expressions/class/gen-method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/gen-method/forbidden-ext/b1/cls-expr-gen-meth-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; var C = class { *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/gen-method/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/gen-method/forbidden-ext/b2/cls-expr-gen-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/gen-method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/gen-method/forbidden-ext/b2/cls-expr-gen-meth-forbidden-ext-indirect-access-prop-caller.js index d940aec30f..78cbc89b7b 100644 --- a/test/language/expressions/class/gen-method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/gen-method/forbidden-ext/b2/cls-expr-gen-meth-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ var C = class { *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/method-static/forbidden-ext/b1/cls-expr-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/class/method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/method-static/forbidden-ext/b1/cls-expr-meth-static-forbidden-ext-direct-access-prop-arguments.js index 2f29a726c1..6713a59103 100644 --- a/test/language/expressions/class/method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/method-static/forbidden-ext/b1/cls-expr-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -16,7 +16,7 @@ var callCount = 0; var C = class { static method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/method-static/forbidden-ext/b1/cls-expr-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/method-static/forbidden-ext/b1/cls-expr-meth-static-forbidden-ext-direct-access-prop-caller.js index 449a517dfa..6b2e4a47bc 100644 --- a/test/language/expressions/class/method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/method-static/forbidden-ext/b1/cls-expr-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -16,7 +16,7 @@ var callCount = 0; var C = class { static method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/method-static/forbidden-ext/b2/cls-expr-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/method-static/forbidden-ext/b2/cls-expr-meth-static-forbidden-ext-indirect-access-prop-caller.js index a4b0df5bd6..78c369463f 100644 --- a/test/language/expressions/class/method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/method-static/forbidden-ext/b2/cls-expr-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ var C = class { static method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/method/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/class/method/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 97% rename from test/language/expressions/class/method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/class/method/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-arguments.js index a1cb2d0a60..a2f5878625 100644 --- a/test/language/expressions/class/method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/class/method/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-arguments.js @@ -16,7 +16,7 @@ var callCount = 0; var C = class { method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/method/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/class/method/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/method/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/class/method/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-caller.js index 55ce6070e2..0394bb2b7f 100644 --- a/test/language/expressions/class/method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/class/method/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-caller.js @@ -16,7 +16,7 @@ var callCount = 0; var C = class { method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/class/method/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/class/method/forbidden-ext/b2/cls-expr-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/class/method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/class/method/forbidden-ext/b2/cls-expr-meth-forbidden-ext-indirect-access-prop-caller.js index 76b07b87dc..6c2e50d889 100644 --- a/test/language/expressions/class/method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/class/method/forbidden-ext/b2/cls-expr-meth-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ var C = class { method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/function/forbidden-ext/b1/func-expr-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/function/forbidden-ext/b1/func-expr-forbidden-ext-direct-access-prop-arguments.js new file mode 100644 index 0000000000..9f2849fe8c --- /dev/null +++ b/test/language/expressions/function/forbidden-ext/b1/func-expr-forbidden-ext-direct-access-prop-arguments.js @@ -0,0 +1,23 @@ +// This file was procedurally generated from the following sources: +// - src/function-forms/forbidden-ext-direct-access-prop-arguments.case +// - src/function-forms/forbidden-extensions/bullet-one/func-expr.template +/*--- +description: Forbidden extension, o.arguments (function expression) +esid: sec-function-definitions-runtime-semantics-evaluation +flags: [generated, noStrict] +info: | + FunctionExpression : function ( FormalParameters ) { FunctionBody } + + ECMAScript function objects defined using syntactic constructors in strict mode code must not be created with own properties named "caller" or "arguments". Such own properties also must not be created for function objects defined using an ArrowFunction, MethodDefinition, GeneratorDeclaration, GeneratorExpression, AsyncGeneratorDeclaration, AsyncGeneratorExpression, ClassDeclaration, ClassExpression, AsyncFunctionDeclaration, AsyncFunctionExpression, or AsyncArrowFunction regardless of whether the definition is contained in strict mode code. Built-in functions, strict functions created using the Function constructor, generator functions created using the Generator constructor, async functions created using the AsyncFunction constructor, and functions created using the bind method also must not be created with such own properties. + +---*/ + +var callCount = 0; +var f; +f = function() { + f.arguments; + callCount++; +}; +f(); + +assert.sameValue(callCount, 1, 'function was evaluated'); diff --git a/test/language/expressions/function/forbidden-ext/b1/func-expr-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/function/forbidden-ext/b1/func-expr-forbidden-ext-direct-access-prop-caller.js new file mode 100644 index 0000000000..4decc361a7 --- /dev/null +++ b/test/language/expressions/function/forbidden-ext/b1/func-expr-forbidden-ext-direct-access-prop-caller.js @@ -0,0 +1,23 @@ +// This file was procedurally generated from the following sources: +// - src/function-forms/forbidden-ext-direct-access-prop-caller.case +// - src/function-forms/forbidden-extensions/bullet-one/func-expr.template +/*--- +description: Forbidden extension, o.caller (function expression) +esid: sec-function-definitions-runtime-semantics-evaluation +flags: [generated, noStrict] +info: | + FunctionExpression : function ( FormalParameters ) { FunctionBody } + + ECMAScript function objects defined using syntactic constructors in strict mode code must not be created with own properties named "caller" or "arguments". Such own properties also must not be created for function objects defined using an ArrowFunction, MethodDefinition, GeneratorDeclaration, GeneratorExpression, AsyncGeneratorDeclaration, AsyncGeneratorExpression, ClassDeclaration, ClassExpression, AsyncFunctionDeclaration, AsyncFunctionExpression, or AsyncArrowFunction regardless of whether the definition is contained in strict mode code. Built-in functions, strict functions created using the Function constructor, generator functions created using the Generator constructor, async functions created using the AsyncFunction constructor, and functions created using the bind method also must not be created with such own properties. + +---*/ + +var callCount = 0; +var f; +f = function() { + f.caller; + callCount++; +}; +f(); + +assert.sameValue(callCount, 1, 'function was evaluated'); diff --git a/test/language/expressions/function/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/function/forbidden-ext/b1/func-expr-strict-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/function/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/function/forbidden-ext/b1/func-expr-strict-forbidden-ext-direct-access-prop-arguments.js index 5b5a1debc8..46e946bafa 100644 --- a/test/language/expressions/function/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/function/forbidden-ext/b1/func-expr-strict-forbidden-ext-direct-access-prop-arguments.js @@ -17,7 +17,7 @@ var f; f = function() { "use strict"; f.arguments; - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { f(); diff --git a/test/language/expressions/function/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/function/forbidden-ext/b1/func-expr-strict-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/function/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/function/forbidden-ext/b1/func-expr-strict-forbidden-ext-direct-access-prop-caller.js index 21307f4951..6f3752226f 100644 --- a/test/language/expressions/function/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/function/forbidden-ext/b1/func-expr-strict-forbidden-ext-direct-access-prop-caller.js @@ -17,7 +17,7 @@ var f; f = function() { "use strict"; f.caller; - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { f(); diff --git a/test/language/expressions/function/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/function/forbidden-ext/b2/func-expr-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/function/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/function/forbidden-ext/b2/func-expr-forbidden-ext-indirect-access-prop-caller.js index 601e720cbd..bd9eea0ac1 100644 --- a/test/language/expressions/function/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/function/forbidden-ext/b2/func-expr-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ var f; f = function() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { f(); diff --git a/test/language/expressions/generators/forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/generators/forbidden-ext/b1/gen-func-expr-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/generators/forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/generators/forbidden-ext/b1/gen-func-expr-forbidden-ext-direct-access-prop-arguments.js index 0e2a38c3f6..98d9e309a4 100644 --- a/test/language/expressions/generators/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/generators/forbidden-ext/b1/gen-func-expr-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; var f; f = function*() { f.arguments; - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { diff --git a/test/language/expressions/generators/forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/generators/forbidden-ext/b1/gen-func-expr-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/generators/forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/generators/forbidden-ext/b1/gen-func-expr-forbidden-ext-direct-access-prop-caller.js index b4bd1d14cd..fa255f6bb0 100644 --- a/test/language/expressions/generators/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/generators/forbidden-ext/b1/gen-func-expr-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; var f; f = function*() { f.caller; - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { diff --git a/test/language/expressions/generators/forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/generators/forbidden-ext/b2/gen-func-expr-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/generators/forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/generators/forbidden-ext/b2/gen-func-expr-forbidden-ext-indirect-access-prop-caller.js index 954ca0ed56..cb1812d67c 100644 --- a/test/language/expressions/generators/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/generators/forbidden-ext/b2/gen-func-expr-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ var f; f = function*() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; }; assert.throws(TypeError, function() { diff --git a/test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-gen-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/async-gen-meth-forbidden-ext-direct-access-prop-arguments.js index d188ffd024..caf50d6261 100644 --- a/test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-gen-meth-forbidden-ext-direct-access-prop-arguments.js @@ -20,7 +20,7 @@ var callCount = 0; var obj = { async *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-gen-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/async-gen-meth-forbidden-ext-direct-access-prop-caller.js index 8c3b26f897..463f849407 100644 --- a/test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-gen-meth-forbidden-ext-direct-access-prop-caller.js @@ -20,7 +20,7 @@ var callCount = 0; var obj = { async *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/async-meth-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/object/method-definition/async-meth-forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/async-meth-forbidden-ext-direct-access-prop-arguments.js index 34ca9c7adc..672a6a9cfb 100644 --- a/test/language/expressions/object/method-definition/async-meth-forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-meth-forbidden-ext-direct-access-prop-arguments.js @@ -21,7 +21,7 @@ var callCount = 0; var obj = { async method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/async-meth-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/object/method-definition/async-meth-forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/async-meth-forbidden-ext-direct-access-prop-caller.js index bfd78a3ba5..7e68358870 100644 --- a/test/language/expressions/object/method-definition/async-meth-forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/async-meth-forbidden-ext-direct-access-prop-caller.js @@ -21,7 +21,7 @@ var callCount = 0; var obj = { async method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/gen-meth-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/gen-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/expressions/object/method-definition/gen-meth-forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/gen-meth-forbidden-ext-direct-access-prop-arguments.js index 09be37e088..89d58a4479 100644 --- a/test/language/expressions/object/method-definition/gen-meth-forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/gen-meth-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ var callCount = 0; var obj = { *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/gen-meth-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/gen-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/expressions/object/method-definition/gen-meth-forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/gen-meth-forbidden-ext-direct-access-prop-caller.js index f556f3ec69..e8c23535b8 100644 --- a/test/language/expressions/object/method-definition/gen-meth-forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/gen-meth-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ var callCount = 0; var obj = { *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/meth-forbidden-ext-direct-access-prop-arguments.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/meth-forbidden-ext-direct-access-prop-arguments.js similarity index 97% rename from test/language/expressions/object/method-definition/meth-forbidden-ext-direct-access-prop-arguments.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/meth-forbidden-ext-direct-access-prop-arguments.js index bdadefc516..6c7627fd00 100644 --- a/test/language/expressions/object/method-definition/meth-forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/meth-forbidden-ext-direct-access-prop-arguments.js @@ -16,7 +16,7 @@ var callCount = 0; var obj = { method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/meth-forbidden-ext-direct-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b1/meth-forbidden-ext-direct-access-prop-caller.js similarity index 97% rename from test/language/expressions/object/method-definition/meth-forbidden-ext-direct-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b1/meth-forbidden-ext-direct-access-prop-caller.js index 02dc84df3e..3421a3f0ab 100644 --- a/test/language/expressions/object/method-definition/meth-forbidden-ext-direct-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b1/meth-forbidden-ext-direct-access-prop-caller.js @@ -16,7 +16,7 @@ var callCount = 0; var obj = { method() { this.method.caller; - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b2/async-gen-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b2/async-gen-meth-forbidden-ext-indirect-access-prop-caller.js index 50970436fb..7221cdfe70 100644 --- a/test/language/expressions/object/method-definition/async-gen-meth-forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b2/async-gen-meth-forbidden-ext-indirect-access-prop-caller.js @@ -25,7 +25,7 @@ var obj = { async *method() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/async-meth-forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b2/async-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/object/method-definition/async-meth-forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b2/async-meth-forbidden-ext-indirect-access-prop-caller.js index 4246ba5671..ab0193734f 100644 --- a/test/language/expressions/object/method-definition/async-meth-forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b2/async-meth-forbidden-ext-indirect-access-prop-caller.js @@ -26,7 +26,7 @@ var obj = { async method() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/gen-meth-forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b2/gen-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/object/method-definition/gen-meth-forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b2/gen-meth-forbidden-ext-indirect-access-prop-caller.js index cdecc42a95..e82942cc57 100644 --- a/test/language/expressions/object/method-definition/gen-meth-forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b2/gen-meth-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ var obj = { *method() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/expressions/object/method-definition/meth-forbidden-ext-indirect-access-prop-caller.js b/test/language/expressions/object/method-definition/forbidden-ext/b2/meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/expressions/object/method-definition/meth-forbidden-ext-indirect-access-prop-caller.js rename to test/language/expressions/object/method-definition/forbidden-ext/b2/meth-forbidden-ext-indirect-access-prop-caller.js index e169c1760b..acd02d3c59 100644 --- a/test/language/expressions/object/method-definition/meth-forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/expressions/object/method-definition/forbidden-ext/b2/meth-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ var obj = { method() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } }; diff --git a/test/language/statements/async-function/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/async-function/forbidden-ext/b1/async-func-decl-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/async-function/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/async-function/forbidden-ext/b1/async-func-decl-forbidden-ext-direct-access-prop-arguments.js index f11f299e96..329d9efbfa 100644 --- a/test/language/statements/async-function/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/async-function/forbidden-ext/b1/async-func-decl-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ info: | var callCount = 0; async function f() { f.arguments; - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/statements/async-function/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/async-function/forbidden-ext/b1/async-func-decl-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/async-function/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/async-function/forbidden-ext/b1/async-func-decl-forbidden-ext-direct-access-prop-caller.js index 659ae3010f..9a9e34316a 100644 --- a/test/language/statements/async-function/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/async-function/forbidden-ext/b1/async-func-decl-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ info: | var callCount = 0; async function f() { f.caller; - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/statements/async-function/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/async-function/forbidden-ext/b2/async-func-decl-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/async-function/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/async-function/forbidden-ext/b2/async-func-decl-forbidden-ext-indirect-access-prop-caller.js index 40cf62ad6d..1bae58f64f 100644 --- a/test/language/statements/async-function/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/async-function/forbidden-ext/b2/async-func-decl-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ var callCount = 0; async function f() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } f() diff --git a/test/language/statements/async-generator/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/async-generator/forbidden-ext/b1/async-gen-func-decl-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/async-generator/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/async-generator/forbidden-ext/b1/async-gen-func-decl-forbidden-ext-direct-access-prop-arguments.js index 0b1f728c05..48459b209f 100644 --- a/test/language/statements/async-generator/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/async-generator/forbidden-ext/b1/async-gen-func-decl-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ info: | var callCount = 0; async function* f() { f.arguments; - callCount = callCount + 1; + callCount++; } f().next() diff --git a/test/language/statements/async-generator/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/async-generator/forbidden-ext/b1/async-gen-func-decl-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/async-generator/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/async-generator/forbidden-ext/b1/async-gen-func-decl-forbidden-ext-direct-access-prop-caller.js index 7718d1666b..c5be35f3bf 100644 --- a/test/language/statements/async-generator/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/async-generator/forbidden-ext/b1/async-gen-func-decl-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ info: | var callCount = 0; async function* f() { f.caller; - callCount = callCount + 1; + callCount++; } f().next() diff --git a/test/language/statements/async-generator/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/async-generator/forbidden-ext/b2/async-gen-func-decl-forbidden-ext-indirect-access-prop-caller.js similarity index 98% rename from test/language/statements/async-generator/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/async-generator/forbidden-ext/b2/async-gen-func-decl-forbidden-ext-indirect-access-prop-caller.js index 23e468ed3f..8f4d3ebe2b 100644 --- a/test/language/statements/async-generator/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/async-generator/forbidden-ext/b2/async-gen-func-decl-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ var callCount = 0; async function* f() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } f().next() diff --git a/test/language/statements/class/async-gen-method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/async-gen-method-static/forbidden-ext/b1/cls-decl-async-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/class/async-gen-method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/async-gen-method-static/forbidden-ext/b1/cls-decl-async-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js index 50bd7475ff..da7bbb2fec 100644 --- a/test/language/statements/class/async-gen-method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/async-gen-method-static/forbidden-ext/b1/cls-decl-async-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ var callCount = 0; class C { static async *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-gen-method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/async-gen-method-static/forbidden-ext/b1/cls-decl-async-gen-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/class/async-gen-method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/async-gen-method-static/forbidden-ext/b1/cls-decl-async-gen-meth-static-forbidden-ext-direct-access-prop-caller.js index c1729be7d7..857f3efaaf 100644 --- a/test/language/statements/class/async-gen-method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/async-gen-method-static/forbidden-ext/b1/cls-decl-async-gen-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ var callCount = 0; class C { static async *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-gen-method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/async-gen-method-static/forbidden-ext/b2/cls-decl-async-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/async-gen-method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/async-gen-method-static/forbidden-ext/b2/cls-decl-async-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js index 285f7197e2..bd96fa1167 100644 --- a/test/language/statements/class/async-gen-method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/async-gen-method-static/forbidden-ext/b2/cls-decl-async-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ class C { static async *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-gen-method/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/async-gen-method/forbidden-ext/b1/cls-decl-async-gen-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/class/async-gen-method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/async-gen-method/forbidden-ext/b1/cls-decl-async-gen-meth-forbidden-ext-direct-access-prop-arguments.js index 066fdbf6b7..6cf810870f 100644 --- a/test/language/statements/class/async-gen-method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/async-gen-method/forbidden-ext/b1/cls-decl-async-gen-meth-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; class C { async *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-gen-method/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/async-gen-method/forbidden-ext/b1/cls-decl-async-gen-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/class/async-gen-method/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/async-gen-method/forbidden-ext/b1/cls-decl-async-gen-meth-forbidden-ext-direct-access-prop-caller.js index 9f76c3573e..078824781d 100644 --- a/test/language/statements/class/async-gen-method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/async-gen-method/forbidden-ext/b1/cls-decl-async-gen-meth-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; class C { async *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-gen-method/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/async-gen-method/forbidden-ext/b2/cls-decl-async-gen-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/async-gen-method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/async-gen-method/forbidden-ext/b2/cls-decl-async-gen-meth-forbidden-ext-indirect-access-prop-caller.js index 2c7a875ea6..0fe14854e3 100644 --- a/test/language/statements/class/async-gen-method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/async-gen-method/forbidden-ext/b2/cls-decl-async-gen-meth-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ class C { async *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/async-method-static/forbidden-ext/b1/cls-decl-async-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/class/async-method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/async-method-static/forbidden-ext/b1/cls-decl-async-meth-static-forbidden-ext-direct-access-prop-arguments.js index 6d265d18ee..5be5de5d64 100644 --- a/test/language/statements/class/async-method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/async-method-static/forbidden-ext/b1/cls-decl-async-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ var callCount = 0; class C { static async method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/async-method-static/forbidden-ext/b1/cls-decl-async-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/class/async-method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/async-method-static/forbidden-ext/b1/cls-decl-async-meth-static-forbidden-ext-direct-access-prop-caller.js index bbcaed5ba7..60d29c2fc4 100644 --- a/test/language/statements/class/async-method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/async-method-static/forbidden-ext/b1/cls-decl-async-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ var callCount = 0; class C { static async method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/async-method-static/forbidden-ext/b2/cls-decl-async-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/async-method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/async-method-static/forbidden-ext/b2/cls-decl-async-meth-static-forbidden-ext-indirect-access-prop-caller.js index 986d1fcf07..6759b66b46 100644 --- a/test/language/statements/class/async-method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/async-method-static/forbidden-ext/b2/cls-decl-async-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ class C { static async method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-method/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/async-method/forbidden-ext/b1/cls-decl-async-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/class/async-method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/async-method/forbidden-ext/b1/cls-decl-async-meth-forbidden-ext-direct-access-prop-arguments.js index 24076cf669..24bdd1f770 100644 --- a/test/language/statements/class/async-method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/async-method/forbidden-ext/b1/cls-decl-async-meth-forbidden-ext-direct-access-prop-arguments.js @@ -19,7 +19,7 @@ var callCount = 0; class C { async method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-method/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/async-method/forbidden-ext/b1/cls-decl-async-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/class/async-method/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/async-method/forbidden-ext/b1/cls-decl-async-meth-forbidden-ext-direct-access-prop-caller.js index b7425936fd..839d78874c 100644 --- a/test/language/statements/class/async-method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/async-method/forbidden-ext/b1/cls-decl-async-meth-forbidden-ext-direct-access-prop-caller.js @@ -19,7 +19,7 @@ var callCount = 0; class C { async method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/async-method/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/async-method/forbidden-ext/b2/cls-decl-async-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/async-method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/async-method/forbidden-ext/b2/cls-decl-async-meth-forbidden-ext-indirect-access-prop-caller.js index d2101fe30b..5e5c3d2c6b 100644 --- a/test/language/statements/class/async-method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/async-method/forbidden-ext/b2/cls-decl-async-meth-forbidden-ext-indirect-access-prop-caller.js @@ -24,7 +24,7 @@ class C { async method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/gen-method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/gen-method-static/forbidden-ext/b1/cls-decl-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/class/gen-method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/gen-method-static/forbidden-ext/b1/cls-decl-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js index bb835750ba..b7ed5806f5 100644 --- a/test/language/statements/class/gen-method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/gen-method-static/forbidden-ext/b1/cls-decl-gen-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; class C { static *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/gen-method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/gen-method-static/forbidden-ext/b1/cls-decl-gen-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/class/gen-method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/gen-method-static/forbidden-ext/b1/cls-decl-gen-meth-static-forbidden-ext-direct-access-prop-caller.js index 7d84deccdf..4b6f85bcf0 100644 --- a/test/language/statements/class/gen-method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/gen-method-static/forbidden-ext/b1/cls-decl-gen-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; class C { static *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/gen-method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/gen-method-static/forbidden-ext/b2/cls-decl-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/gen-method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/gen-method-static/forbidden-ext/b2/cls-decl-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js index 6470dec16e..ddaa9147b1 100644 --- a/test/language/statements/class/gen-method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/gen-method-static/forbidden-ext/b2/cls-decl-gen-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ class C { static *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/gen-method/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/gen-method/forbidden-ext/b1/cls-decl-gen-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/class/gen-method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/gen-method/forbidden-ext/b1/cls-decl-gen-meth-forbidden-ext-direct-access-prop-arguments.js index 46851ab83e..3b8a2e73c0 100644 --- a/test/language/statements/class/gen-method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/gen-method/forbidden-ext/b1/cls-decl-gen-meth-forbidden-ext-direct-access-prop-arguments.js @@ -18,7 +18,7 @@ var callCount = 0; class C { *method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/gen-method/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/gen-method/forbidden-ext/b1/cls-decl-gen-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/class/gen-method/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/gen-method/forbidden-ext/b1/cls-decl-gen-meth-forbidden-ext-direct-access-prop-caller.js index 174d6bc033..7bbd9dcb89 100644 --- a/test/language/statements/class/gen-method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/gen-method/forbidden-ext/b1/cls-decl-gen-meth-forbidden-ext-direct-access-prop-caller.js @@ -18,7 +18,7 @@ var callCount = 0; class C { *method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/gen-method/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/gen-method/forbidden-ext/b2/cls-decl-gen-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/gen-method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/gen-method/forbidden-ext/b2/cls-decl-gen-meth-forbidden-ext-indirect-access-prop-caller.js index 1ca8958df5..84169dc998 100644 --- a/test/language/statements/class/gen-method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/gen-method/forbidden-ext/b2/cls-decl-gen-meth-forbidden-ext-indirect-access-prop-caller.js @@ -23,7 +23,7 @@ class C { *method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/method-static/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/method-static/forbidden-ext/b1/cls-decl-meth-static-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/class/method-static/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/method-static/forbidden-ext/b1/cls-decl-meth-static-forbidden-ext-direct-access-prop-arguments.js index ba381a205d..11bd02de86 100644 --- a/test/language/statements/class/method-static/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/method-static/forbidden-ext/b1/cls-decl-meth-static-forbidden-ext-direct-access-prop-arguments.js @@ -16,7 +16,7 @@ var callCount = 0; class C { static method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/method-static/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/method-static/forbidden-ext/b1/cls-decl-meth-static-forbidden-ext-direct-access-prop-caller.js similarity index 97% rename from test/language/statements/class/method-static/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/method-static/forbidden-ext/b1/cls-decl-meth-static-forbidden-ext-direct-access-prop-caller.js index 8f5d24c0dd..cadd1d3ce5 100644 --- a/test/language/statements/class/method-static/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/method-static/forbidden-ext/b1/cls-decl-meth-static-forbidden-ext-direct-access-prop-caller.js @@ -16,7 +16,7 @@ var callCount = 0; class C { static method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/method-static/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/method-static/forbidden-ext/b2/cls-decl-meth-static-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/method-static/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/method-static/forbidden-ext/b2/cls-decl-meth-static-forbidden-ext-indirect-access-prop-caller.js index 8608604ca2..d83509b4f2 100644 --- a/test/language/statements/class/method-static/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/method-static/forbidden-ext/b2/cls-decl-meth-static-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ class C { static method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/method/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/class/method/forbidden-ext/b1/cls-decl-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 97% rename from test/language/statements/class/method/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/class/method/forbidden-ext/b1/cls-decl-meth-forbidden-ext-direct-access-prop-arguments.js index 36903827c2..349961c3d1 100644 --- a/test/language/statements/class/method/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/class/method/forbidden-ext/b1/cls-decl-meth-forbidden-ext-direct-access-prop-arguments.js @@ -16,7 +16,7 @@ var callCount = 0; class C { method() { this.method.arguments; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/method/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/class/method/forbidden-ext/b1/cls-decl-meth-forbidden-ext-direct-access-prop-caller.js similarity index 97% rename from test/language/statements/class/method/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/class/method/forbidden-ext/b1/cls-decl-meth-forbidden-ext-direct-access-prop-caller.js index 22d4d60e91..4d6557f1b5 100644 --- a/test/language/statements/class/method/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/class/method/forbidden-ext/b1/cls-decl-meth-forbidden-ext-direct-access-prop-caller.js @@ -16,7 +16,7 @@ var callCount = 0; class C { method() { this.method.caller; - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/class/method/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/class/method/forbidden-ext/b2/cls-decl-meth-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/class/method/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/class/method/forbidden-ext/b2/cls-decl-meth-forbidden-ext-indirect-access-prop-caller.js index 02b8356b56..6ad824526c 100644 --- a/test/language/statements/class/method/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/class/method/forbidden-ext/b2/cls-decl-meth-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ class C { method() { /* implicit strict */ inner().toString(); - callCount = callCount + 1; + callCount++; } } diff --git a/test/language/statements/function/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/function/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/function/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/function/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-arguments.js index 25b84e5c1d..1d8a35be33 100644 --- a/test/language/statements/function/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/function/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-arguments.js @@ -17,7 +17,7 @@ var callCount = 0; function f() { "use strict"; f.arguments; - callCount = callCount + 1; + callCount++; } assert.throws(TypeError, function() { f(); diff --git a/test/language/statements/function/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/function/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/function/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/function/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-caller.js index 5caee287e4..8ab8c5efd9 100644 --- a/test/language/statements/function/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/function/forbidden-ext/b1/cls-expr-meth-forbidden-ext-direct-access-prop-caller.js @@ -17,7 +17,7 @@ var callCount = 0; function f() { "use strict"; f.caller; - callCount = callCount + 1; + callCount++; } assert.throws(TypeError, function() { f(); diff --git a/test/language/statements/function/forbidden-ext/b1/func-decl-forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/function/forbidden-ext/b1/func-decl-forbidden-ext-direct-access-prop-arguments.js new file mode 100644 index 0000000000..f03037f611 --- /dev/null +++ b/test/language/statements/function/forbidden-ext/b1/func-decl-forbidden-ext-direct-access-prop-arguments.js @@ -0,0 +1,22 @@ +// This file was procedurally generated from the following sources: +// - src/function-forms/forbidden-ext-direct-access-prop-arguments.case +// - src/function-forms/forbidden-extensions/bullet-one/func-decl.template +/*--- +description: Forbidden extension, o.arguments (function declaration) +esid: sec-function-definitions-runtime-semantics-instantiatefunctionobject +flags: [generated, noStrict] +info: | + FunctionDeclaration : + function BindingIdentifier ( FormalParameters ) { FunctionBody } + + ECMAScript function objects defined using syntactic constructors in strict mode code must not be created with own properties named "caller" or "arguments". Such own properties also must not be created for function objects defined using an ArrowFunction, MethodDefinition, GeneratorDeclaration, GeneratorExpression, AsyncGeneratorDeclaration, AsyncGeneratorExpression, ClassDeclaration, ClassExpression, AsyncFunctionDeclaration, AsyncFunctionExpression, or AsyncArrowFunction regardless of whether the definition is contained in strict mode code. Built-in functions, strict functions created using the Function constructor, generator functions created using the Generator constructor, async functions created using the AsyncFunction constructor, and functions created using the bind method also must not be created with such own properties. + +---*/ + +var callCount = 0; +function f() { + f.arguments; + callCount++; +} +f(); +assert.sameValue(callCount, 1, 'function was evaluated'); diff --git a/test/language/statements/function/forbidden-ext/b1/func-decl-forbidden-ext-direct-access-prop-caller.js b/test/language/statements/function/forbidden-ext/b1/func-decl-forbidden-ext-direct-access-prop-caller.js new file mode 100644 index 0000000000..efc31e5eea --- /dev/null +++ b/test/language/statements/function/forbidden-ext/b1/func-decl-forbidden-ext-direct-access-prop-caller.js @@ -0,0 +1,22 @@ +// This file was procedurally generated from the following sources: +// - src/function-forms/forbidden-ext-direct-access-prop-caller.case +// - src/function-forms/forbidden-extensions/bullet-one/func-decl.template +/*--- +description: Forbidden extension, o.caller (function declaration) +esid: sec-function-definitions-runtime-semantics-instantiatefunctionobject +flags: [generated, noStrict] +info: | + FunctionDeclaration : + function BindingIdentifier ( FormalParameters ) { FunctionBody } + + ECMAScript function objects defined using syntactic constructors in strict mode code must not be created with own properties named "caller" or "arguments". Such own properties also must not be created for function objects defined using an ArrowFunction, MethodDefinition, GeneratorDeclaration, GeneratorExpression, AsyncGeneratorDeclaration, AsyncGeneratorExpression, ClassDeclaration, ClassExpression, AsyncFunctionDeclaration, AsyncFunctionExpression, or AsyncArrowFunction regardless of whether the definition is contained in strict mode code. Built-in functions, strict functions created using the Function constructor, generator functions created using the Generator constructor, async functions created using the AsyncFunction constructor, and functions created using the bind method also must not be created with such own properties. + +---*/ + +var callCount = 0; +function f() { + f.caller; + callCount++; +} +f(); +assert.sameValue(callCount, 1, 'function was evaluated'); diff --git a/test/language/statements/function/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/function/forbidden-ext/b2/func-decl-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/function/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/function/forbidden-ext/b2/func-decl-forbidden-ext-indirect-access-prop-caller.js index 2c144e29b1..d55dc84579 100644 --- a/test/language/statements/function/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/function/forbidden-ext/b2/func-decl-forbidden-ext-indirect-access-prop-caller.js @@ -21,7 +21,7 @@ var callCount = 0; function f() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } assert.throws(TypeError, function() { f(); diff --git a/test/language/statements/generators/forbidden-ext-direct-access-prop-arguments.js b/test/language/statements/generators/forbidden-ext/b1/gen-func-decl-forbidden-ext-direct-access-prop-arguments.js similarity index 98% rename from test/language/statements/generators/forbidden-ext-direct-access-prop-arguments.js rename to test/language/statements/generators/forbidden-ext/b1/gen-func-decl-forbidden-ext-direct-access-prop-arguments.js index b1ef958d6d..739a03f019 100644 --- a/test/language/statements/generators/forbidden-ext-direct-access-prop-arguments.js +++ b/test/language/statements/generators/forbidden-ext/b1/gen-func-decl-forbidden-ext-direct-access-prop-arguments.js @@ -17,7 +17,7 @@ info: | var callCount = 0; function* f() { f.arguments; - callCount = callCount + 1; + callCount++; } assert.throws(TypeError, function() { diff --git a/test/language/statements/generators/forbidden-ext-direct-access-prop-caller.js b/test/language/statements/generators/forbidden-ext/b1/gen-func-decl-forbidden-ext-direct-access-prop-caller.js similarity index 98% rename from test/language/statements/generators/forbidden-ext-direct-access-prop-caller.js rename to test/language/statements/generators/forbidden-ext/b1/gen-func-decl-forbidden-ext-direct-access-prop-caller.js index a1ad4ea6fe..9ce5e21a57 100644 --- a/test/language/statements/generators/forbidden-ext-direct-access-prop-caller.js +++ b/test/language/statements/generators/forbidden-ext/b1/gen-func-decl-forbidden-ext-direct-access-prop-caller.js @@ -17,7 +17,7 @@ info: | var callCount = 0; function* f() { f.caller; - callCount = callCount + 1; + callCount++; } assert.throws(TypeError, function() { diff --git a/test/language/statements/generators/forbidden-ext-indirect-access-prop-caller.js b/test/language/statements/generators/forbidden-ext/b2/gen-func-decl-forbidden-ext-indirect-access-prop-caller.js similarity index 97% rename from test/language/statements/generators/forbidden-ext-indirect-access-prop-caller.js rename to test/language/statements/generators/forbidden-ext/b2/gen-func-decl-forbidden-ext-indirect-access-prop-caller.js index 1fc4791466..e752ae32d2 100644 --- a/test/language/statements/generators/forbidden-ext-indirect-access-prop-caller.js +++ b/test/language/statements/generators/forbidden-ext/b2/gen-func-decl-forbidden-ext-indirect-access-prop-caller.js @@ -22,7 +22,7 @@ var callCount = 0; function* f() { "use strict"; inner().toString(); - callCount = callCount + 1; + callCount++; } assert.throws(TypeError, function() {