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 0d4e0a5409ea111c1b14d5f7c709996e998d5343..65dbdc7b306f247efc905c708a55c19d5d04b12a 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 230044cc8c16eb0fbfca9c71e8144b50c9c632f3..ee360c89b883d2478ac2e178c78e193468189249 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 36e9b4b9383e51bd4b2adcec2a593b435f322180..ef08be42880209367012ac07561e08785e41813b 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 b0f9665f91d54a3dfcc18bc97e023a1d3736f39e..18d921247acd4de54d9406933bf14582e7993a6c 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 901e423014b0bfdb540c3f720e5146f316eefedf..8fd80d4ccdb4abbaa4d5c4a41dcf4548bcf4264c 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 5bcb3e8029ff547bc5299866ebc0aa8306aed4a6..e911f5465a9020448d27d30632a184c9ae0f4117 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 6498422a8d0c579485e9c949e618241f4882ea3c..a16b85b435c8d655e7fa22a7e72bb8a1a4ba8ba5 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 18a0ab42715548f9f8ee9978d3c03e3aeecbaf93..d4a6087e830c86cdf0efbfac3b1b7bc870bac213 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 74d91576789262befe70124efc3142137b332adc..fee2170e0c0f5512aa6755baa5db98dad5dc2852 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 85b81ec228c1f8687d5cb26ba3a57d9623791927..97ced2aea7bc0adb00300b8b2808988c9e6dbd2e 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 0000000000000000000000000000000000000000..36cae48422de222b482af7a2b9240dbfa9344886
--- /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 0000000000000000000000000000000000000000..b0b385f5fd9adb9b71e940b0378665085f16e6ec
--- /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 0000000000000000000000000000000000000000..0df0ce1a80e7fa47a14d62b4fe73f2fc388339d3
--- /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 0000000000000000000000000000000000000000..924ed46e85a6b707c4b7c257467b3accd0b21770
--- /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 0000000000000000000000000000000000000000..9900a1b31e463bac694c0649a71cf54f1a536b35
--- /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 0000000000000000000000000000000000000000..925cbc43525be542f3e4cf7e6787a8b82ebad800
--- /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 0000000000000000000000000000000000000000..3634bfd31d14e01620cb7a9cd2a9b4402198b021
--- /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 0000000000000000000000000000000000000000..826a872197e96f66c452fec6a84f19f2a577d82d
--- /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 0000000000000000000000000000000000000000..9661d19ee5e729d392c0c5c0392203746c0c7f81
--- /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 0000000000000000000000000000000000000000..a151323fb697623c5fa5552bbf160d516fea50a3
--- /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 486c91bc2ba0e348bdf573c03d0abd78ba4ef822..4184018c2272ae8d49f27b3cd79903294590fd20 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 627f094d66cf1f5824bf497926d15392b28d5981..a06cb230d73c53268f0b76dde6252b7994f86d0e 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 71b5018ac01aacb9f38005cbf7da47ec4feb139c..c4adcfa5faa6fcfb7514444d43f90c01a9b1c627 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 9e107740ea32d4982efc356338e6bdb1b6b247fe..50b2bbce4b455c022c121415acf048316ce6bc8c 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 08d98754ef65ad68bd6e8b0ef7467ef1a2be7ada..ae807ac87aae1cad13dab1728b0615dca11732c6 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 dadc1d537867d531f272d5c04cdd623842d1d65d..704e942f17f89d45b2e1137c5a5541c79ee9cbae 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 ed68256f8b3ccfd62c59491e3da2f33b9aff3b47..cc5efd50bc9c889e2e05b629fbbcd3891e85b0dd 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 3b9b3692a1eb55085dacdd104f2ffc37aae303b5..8ecdfadfb3582b1702a70c15f0da0ccdeb1ec2f9 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 7dcf910c70121ccb3ef377afe46b6874b6d58e69..9e8ce7750798952f35491c4729f0bae6782e7f93 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 9d59cd0d4cac5cafdad9d022c18a57fee277fbce..ad768a6ff4b8bb8b422bedc80120e0074d079e7f 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 0000000000000000000000000000000000000000..d39b10646ddfa3c3fa81336c2a6594042b4221b0
--- /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 0000000000000000000000000000000000000000..29b525e0425341f02724ef6871130a3697645594
--- /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 0000000000000000000000000000000000000000..2592471dcc025c76af55b0d609f278bbe9b6c872
--- /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 0000000000000000000000000000000000000000..6e912a1080fe1599946af8f14c5d98c2fe14ccb1
--- /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 0000000000000000000000000000000000000000..d3e3d83f68bca5cb0eeef9b67f147745922128f8
--- /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 0000000000000000000000000000000000000000..d680045a80f44d23d4bc677ddf19d641d627ded0
--- /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 0000000000000000000000000000000000000000..5376dd23bcabe1c847cb2cd6ae1553b944bfcf86
--- /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 0000000000000000000000000000000000000000..93545e4f0637110328eb49df25bbfbab6bcb90fa
--- /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 0000000000000000000000000000000000000000..85cccd5fd32aab24c393c7e6374ec00ce2666dcd
--- /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 0000000000000000000000000000000000000000..1e80966207cdcb1395c9bd6e49f6f099da5b65d9
--- /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();
+  }
+}