From ee9739c699d0d84b8915f463b6f5b243cbf91495 Mon Sep 17 00:00:00 2001
From: Leo Balter <leonardo.balter@gmail.com>
Date: Wed, 5 Sep 2018 17:08:20 -0400
Subject: [PATCH] Generate tests

---
 ...r-special-meth-contains-super-async-gen.js |  2 +-
 ...ammar-special-meth-contains-super-async.js |  2 +-
 ...grammar-special-meth-contains-super-gen.js |  2 +-
 ...grammar-special-meth-contains-super-get.js |  2 +-
 ...mmar-special-meth-contains-super-method.js |  2 +-
 ...l-meth-contains-super-private-async-gen.js |  2 +-
 ...ecial-meth-contains-super-private-async.js |  2 +-
 ...special-meth-contains-super-private-gen.js |  2 +-
 ...cial-meth-contains-super-private-method.js |  2 +-
 ...grammar-special-meth-contains-super-set.js |  2 +-
 .../grammar-static-async-gen-meth-super.js    | 27 +++++++++++++++++++
 .../grammar-static-async-meth-super.js        | 27 +++++++++++++++++++
 .../grammar-static-gen-meth-super.js          | 27 +++++++++++++++++++
 .../grammar-static-get-meth-super.js          | 27 +++++++++++++++++++
 .../early-error/grammar-static-meth-super.js  | 27 +++++++++++++++++++
 ...mar-static-private-async-gen-meth-super.js | 27 +++++++++++++++++++
 ...grammar-static-private-async-meth-super.js | 27 +++++++++++++++++++
 .../grammar-static-private-gen-meth-super.js  | 27 +++++++++++++++++++
 .../grammar-static-private-meth-super.js      | 27 +++++++++++++++++++
 .../grammar-static-set-meth-super.js          | 27 +++++++++++++++++++
 ...r-special-meth-contains-super-async-gen.js |  2 +-
 ...ammar-special-meth-contains-super-async.js |  2 +-
 ...grammar-special-meth-contains-super-gen.js |  2 +-
 ...grammar-special-meth-contains-super-get.js |  2 +-
 ...mmar-special-meth-contains-super-method.js |  2 +-
 ...l-meth-contains-super-private-async-gen.js |  2 +-
 ...ecial-meth-contains-super-private-async.js |  2 +-
 ...special-meth-contains-super-private-gen.js |  2 +-
 ...cial-meth-contains-super-private-method.js |  2 +-
 ...grammar-special-meth-contains-super-set.js |  2 +-
 .../grammar-static-async-gen-meth-super.js    | 27 +++++++++++++++++++
 .../grammar-static-async-meth-super.js        | 27 +++++++++++++++++++
 .../grammar-static-gen-meth-super.js          | 27 +++++++++++++++++++
 .../grammar-static-get-meth-super.js          | 27 +++++++++++++++++++
 .../early-error/grammar-static-meth-super.js  | 27 +++++++++++++++++++
 ...mar-static-private-async-gen-meth-super.js | 27 +++++++++++++++++++
 ...grammar-static-private-async-meth-super.js | 27 +++++++++++++++++++
 .../grammar-static-private-gen-meth-super.js  | 27 +++++++++++++++++++
 .../grammar-static-private-meth-super.js      | 27 +++++++++++++++++++
 .../grammar-static-set-meth-super.js          | 27 +++++++++++++++++++
 40 files changed, 560 insertions(+), 20 deletions(-)
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-async-gen-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-async-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-gen-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-get-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-private-async-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-private-gen-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-private-meth-super.js
 create mode 100644 test/language/expressions/class/syntax/early-error/grammar-static-set-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-async-gen-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-async-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-gen-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-get-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-private-async-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-private-gen-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-private-meth-super.js
 create mode 100644 test/language/statements/class/syntax/early-error/grammar-static-set-meth-super.js

diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js
index 0d4e0a5409..65dbdc7b30 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   async * method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async.js
index 230044cc8c..ee360c89b8 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-async.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   async method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-gen.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-gen.js
index 36e9b4b938..ef08be4288 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-gen.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   * method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-get.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-get.js
index b0f9665f91..18d921247a 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-get.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-get.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   get method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-method.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-method.js
index 901e423014..8fd80d4ccd 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-method.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-method.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js
index 5bcb3e8029..e911f5465a 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   async * #method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js
index 6498422a8d..a16b85b435 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   async #method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js
index 18a0ab4271..d4a6087e83 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   * #method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js
index 74d9157678..fee2170e0c 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   #method() {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-set.js b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-set.js
index 85b81ec228..97ced2aea7 100644
--- a/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-set.js
+++ b/test/language/expressions/class/syntax/early-error/grammar-special-meth-contains-super-set.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-var C = class {
+var C = class extends Function{
   set method(_) {
       super();
   }
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-async-gen-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-async-gen-meth-super.js
new file mode 100644
index 0000000000..36cae48422
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-async-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-async-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Async Generator Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [async-iteration, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static async * method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-async-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-async-meth-super.js
new file mode 100644
index 0000000000..b0b385f5fd
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-async-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-async-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Async Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [async-functions, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static async method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-gen-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-gen-meth-super.js
new file mode 100644
index 0000000000..0df0ce1a80
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Generator Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [generators, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static * method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-get-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-get-meth-super.js
new file mode 100644
index 0000000000..924ed46e85
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-get-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-get-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Accessor get Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static get method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-meth-super.js
new file mode 100644
index 0000000000..9900a1b31e
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js
new file mode 100644
index 0000000000..925cbc4352
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-async-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Async Generator Private Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [async-iteration, class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static async * #method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-private-async-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-private-async-meth-super.js
new file mode 100644
index 0000000000..3634bfd31d
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-private-async-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-async-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Async Private Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [async-functions, class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static async #method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-private-gen-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-private-gen-meth-super.js
new file mode 100644
index 0000000000..826a872197
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-private-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Generator Private Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [generators, class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static * #method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-private-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-private-meth-super.js
new file mode 100644
index 0000000000..9661d19ee5
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-private-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Private Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static #method() {
+      super();
+  }
+};
diff --git a/test/language/expressions/class/syntax/early-error/grammar-static-set-meth-super.js b/test/language/expressions/class/syntax/early-error/grammar-static-set-meth-super.js
new file mode 100644
index 0000000000..a151323fb6
--- /dev/null
+++ b/test/language/expressions/class/syntax/early-error/grammar-static-set-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-set-meth-super.case
+// - src/class-elements/syntax/invalid/cls-expr-elements-invalid-syntax.template
+/*---
+description: Static Accessor set Methods cannot contain direct super (class expression)
+esid: prod-ClassElement
+features: [class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+var C = class extends Function{
+  static set method(_) {
+      super();
+  }
+};
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js
index 486c91bc2b..4184018c22 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   async * method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async.js
index 627f094d66..a06cb230d7 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-async.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   async method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-gen.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-gen.js
index 71b5018ac0..c4adcfa5fa 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-gen.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   * method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-get.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-get.js
index 9e107740ea..50b2bbce4b 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-get.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-get.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   get method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-method.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-method.js
index 08d98754ef..ae807ac87a 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-method.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-method.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js
index dadc1d5378..704e942f17 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   async * #method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js
index ed68256f8b..cc5efd50bc 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-async.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   async #method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js
index 3b9b3692a1..8ecdfadfb3 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-gen.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   * #method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js
index 7dcf910c70..9e8ce77507 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-private-method.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   #method() {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-set.js b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-set.js
index 9d59cd0d4c..ad768a6ff4 100644
--- a/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-set.js
+++ b/test/language/statements/class/syntax/early-error/grammar-special-meth-contains-super-set.js
@@ -20,7 +20,7 @@ info: |
 
 throw "Test262: This statement should not be evaluated.";
 
-class C {
+class C extends Function{
   set method(_) {
       super();
   }
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-async-gen-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-async-gen-meth-super.js
new file mode 100644
index 0000000000..d39b10646d
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-async-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-async-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Async Generator Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [async-iteration, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static async * method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-async-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-async-meth-super.js
new file mode 100644
index 0000000000..29b525e042
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-async-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-async-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Async Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [async-functions, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static async method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-gen-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-gen-meth-super.js
new file mode 100644
index 0000000000..2592471dcc
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Generator Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [generators, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static * method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-get-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-get-meth-super.js
new file mode 100644
index 0000000000..6e912a1080
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-get-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-get-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Accessor get Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static get method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-meth-super.js
new file mode 100644
index 0000000000..d3e3d83f68
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js
new file mode 100644
index 0000000000..d680045a80
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-private-async-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-async-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Async Generator Private Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [async-iteration, class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static async * #method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-private-async-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-private-async-meth-super.js
new file mode 100644
index 0000000000..5376dd23bc
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-private-async-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-async-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Async Private Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [async-functions, class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static async #method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-private-gen-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-private-gen-meth-super.js
new file mode 100644
index 0000000000..93545e4f06
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-private-gen-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-gen-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Generator Private Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [generators, class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static * #method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-private-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-private-meth-super.js
new file mode 100644
index 0000000000..85cccd5fd3
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-private-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-private-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Private Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [class-static-methods-private, class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static #method() {
+      super();
+  }
+}
diff --git a/test/language/statements/class/syntax/early-error/grammar-static-set-meth-super.js b/test/language/statements/class/syntax/early-error/grammar-static-set-meth-super.js
new file mode 100644
index 0000000000..1e80966207
--- /dev/null
+++ b/test/language/statements/class/syntax/early-error/grammar-static-set-meth-super.js
@@ -0,0 +1,27 @@
+// This file was procedurally generated from the following sources:
+// - src/class-elements/grammar-static-set-meth-super.case
+// - src/class-elements/syntax/invalid/cls-decl-elements-invalid-syntax.template
+/*---
+description: Static Accessor set Methods cannot contain direct super (class declaration)
+esid: prod-ClassElement
+features: [class]
+flags: [generated]
+negative:
+  phase: parse
+  type: SyntaxError
+info: |
+    Class Definitions / Static Semantics: Early Errors
+
+    ClassElement : static MethodDefinition
+        It is a Syntax Error if HasDirectSuper of MethodDefinition is true.
+
+---*/
+
+
+throw "Test262: This statement should not be evaluated.";
+
+class C extends Function{
+  static set method(_) {
+      super();
+  }
+}
-- 
GitLab