diff --git a/src/dstr-assignment-for-await/array-elem-init-let.case b/src/dstr-assignment-for-await/array-elem-init-let.case
deleted file mode 100644
index b25e02e031b1eabb81bb8e8231890b7156ca82a8..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-init-let.case
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-desc: >
-    Value retrieval of Initializer obeys `let` semantics.
-template: default
-es6id: 12.14.5.3
-features: [let]
----*/
-
-//- setup
-let x;
-//- elems
-[ x = y ]
-//- vals
-[]
-//- teardown
-promise.then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(constructor, ReferenceError);
-}).then($DONE, $DONE);
-
-let y;
-
diff --git a/src/dstr-assignment-for-await/array-elem-put-let.case b/src/dstr-assignment-for-await/array-elem-put-let.case
deleted file mode 100644
index 69a58f42813d25991ecb8f7e0f12e658526bd065..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-put-let.case
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-desc: >
-    The assignment target should obey `let` semantics.
-template: default
-es6id: 12.14.5.3
-features: [let]
----*/
-
-//- elems
-[ x ]
-//- vals
-[]
-//- teardown
-promise.then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, ReferenceError);
-}).then($DONE, $DONE);
-
-let x;
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-elision-iter-abpt.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-elision-iter-abpt.case
deleted file mode 100644
index 29f053d1a5d36360637cb0f5ff8a1cafd99b4bfe..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-elision-iter-abpt.case
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: Abrupt completion returned during evaluation of elision
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    6. If Elision is present, then
-       a. Let status be the result of performing
-          IteratorDestructuringAssignmentEvaluation of Elision with
-          iteratorRecord as the argument.
-       b. If status is an abrupt completion, then
-          i. If iteratorRecord.[[done]] is false, return
-             IteratorClose(iterator, status).
-          ii. Return Completion(status).
-features: [Symbol.iterator]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let nextCount = 0;
-let returnCount = 0;
-let x;
-let iterator = {
-  next() {
-    nextCount += 1;
-
-    if (nextCount === 2) {
-      throw new Test262Error();
-    }
-
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    returnCount += 1;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-//- elems
-[ x , , ]
-//- vals
-iterable
-//- teardown
-
-iter.next().then(() => {
-  iter.next().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-    assert.sameValue(nextCount, 2);
-    assert.sameValue(returnCount, 0);
-    assert.sameValue(constructor, Test262Error);
-
-  }).then($DONE, $DONE);
-}, $DONE);
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-get-err.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-get-err.case
deleted file mode 100644
index 5fcb2eacb5ea9268382aefc8689f23ac0a80351d..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-get-err.case
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: Abrupt completion returned from GetIterator
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    1. Let iterator be GetIterator(value).
-    2. ReturnIfAbrupt(iterator).
-features: [Symbol.iterator]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let iterable = {
-  [Symbol.iterator]() {
-    throw new Test262Error();
-  }
-};
-let x;
-//- elems
-[ x , ]
-//- vals
-iterable
-
-//- teardown
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, Test262Error);
-}).then($DONE, $DONE);
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-nrml-close-null.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-list-nrml-close-null.case
deleted file mode 100644
index 8669d0013c69e07c232dce081f1bbc6c71d44175..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-nrml-close-null.case
+++ /dev/null
@@ -1,65 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: >
-    IteratorClose throws a TypeError when `return` returns a non-Object value
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-    8. If Type(innerResult.[[value]]) is not Object, throw a TypeError
-       exception.
-
-features: [Symbol.iterator]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let x;
-let nextCount = 0;
-let iterator = {
-  next() {
-    nextCount += 1;
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    return null;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-//- error
-TypeError
-//- elems
-[ x , ]
-//- vals
-iterable
-//- teardown
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, TypeError);
-}).then($DONE, $DONE);
-
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-err.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-err.case
deleted file mode 100644
index 284200130270f9ab60b4911ad758d8c6513e7ae2..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-err.case
+++ /dev/null
@@ -1,60 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: >
-    IteratorClose is invoked when evaluation of AssignmentElementList returns
-    a "return" completion and the iterator has not been marked as "done"
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
-features: [Symbol.iterator, generators]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let returnCount = 0;
-let unreachable = 0;
-let iterator = {
-  return() {
-    returnCount += 1;
-
-    throw new Test262Error();
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-//- elems
-[ {}[yield] , ]
-//- vals
-iterable
-//- body
-unreachable += 1;
-//- teardown
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(returnCount, 1);
-  assert.sameValue(unreachable, 0, 'Unreachable statement was not executed');
-  assert.sameValue(constructor, Test262Error);
-}).then($DONE, $DONE);
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-null.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-null.case
deleted file mode 100644
index 7b8971233e23bd52e8c51636281fa69ab9ed5e50..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-null.case
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: >
-    IteratorClose throws a TypeError when `return` returns a non-Object value
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-    8. If Type(innerResult.[[value]]) is not Object, throw a TypeError
-       exception.
-
-features: [Symbol.iterator, generators]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let iterator = {
-  return() {
-    return null;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-//- elems
-  [ {}[yield] , ]
-//- vals
-iterable
-//- teardown
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, TypeError);
-}).then($DONE, $DONE);
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close.case
deleted file mode 100644
index bb04127070d7171ffa4e1b4d5f97a9ac52becc2d..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close.case
+++ /dev/null
@@ -1,68 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: >
-    IteratorClose is invoked when evaluation of AssignmentElementList returns
-    a "return" completion and the iterator has not been marked as "done"
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
-features: [Symbol.iterator, generators]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let returnCount = 0;
-let unreachable = 0;
-let thisValue = null;
-let args = null;
-let iterator = {
-  return() {
-    returnCount += 1;
-    thisValue = this;
-    args = arguments;
-    return {};
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-//- elems
-[ {}[yield] , ]
-//- vals
-iterable
-//- body
-  unreachable += 1;
-//- teardown
-iter.return(888).then(result => {
-  assert.sameValue(returnCount, 1);
-  assert.sameValue(unreachable, 0, 'Unreachable statement was not executed');
-  assert.sameValue(result.value, 888);
-  assert(result.done, 'Iterator correctly closed');
-  assert.sameValue(thisValue, iterator, 'correct `this` value');
-  assert(!!args, 'arguments object provided');
-  assert.sameValue(args.length, 0, 'zero arguments specified');
-}).then($DONE, $DONE);
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-err.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-err.case
deleted file mode 100644
index c283de7cbfbd4b958e01c24d20e4d2025c296d96..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-err.case
+++ /dev/null
@@ -1,69 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: >
-    IteratorClose is called when AssignmentRestEvaluation produces a "return"
-    completion due to reference evaluation
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    6. If AssignmentRestElement is present, then
-       a. Let status be the result of performing
-          IteratorDestructuringAssignmentEvaluation of AssignmentRestElement
-          with iteratorRecord as the argument.
-    7. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-    8. Return Completion(status).
-
-    7.4.6 IteratorClose ( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
-features: [Symbol.iterator, generators]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let nextCount = 0;
-let returnCount = 0;
-let unreachable = 0;
-let x;
-let iterator = {
-  next() {
-    nextCount += 1;
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    returnCount += 1;
-
-    throw new Test262Error();
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-//- elems
-[ x , ...{}[yield] ]
-//- vals
-iterable
-//- body
-  unreachable += 1;
-//- teardown
-iter.next().then(() => {
-  iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-    assert.sameValue(nextCount, 1);
-    assert.sameValue(returnCount, 1);
-    assert.sameValue(constructor, Test262Error);
-  }).then($DONE, $DONE);
-}).then($DONE, $DONE);
diff --git a/src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-null.case b/src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-null.case
deleted file mode 100644
index 69681bac100da0fbb930dba8fa5ea89100ae2d9c..0000000000000000000000000000000000000000
--- a/src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-null.case
+++ /dev/null
@@ -1,60 +0,0 @@
-// Copyright (C) 2017 the V8 project authors. All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-/*---
-desc: >
-    IteratorClose throws a TypeError when `return` returns a non-Object value
-info: |
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    6. If AssignmentRestElement is present, then
-       a. Let status be the result of performing
-          IteratorDestructuringAssignmentEvaluation of AssignmentRestElement
-          with iteratorRecord as the argument.
-    7. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-    8. Return Completion(status).
-
-    7.4.6 IteratorClose ( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
-features: [Symbol.iterator, generators]
-template: async-generator
-es6id: 12.14.5.2
-esid: sec-runtime-semantics-destructuringassignmentevaluation
----*/
-
-//- setup
-let nextCount = 0;
-let x;
-let iterator = {
-  next() {
-    nextCount += 1;
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    return null;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-//- elems
-[ x , ...{}[yield] ]
-//- vals
-iterable
-//- teardown
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(nextCount, 1);
-  assert.sameValue(constructor, Test262Error);
-}).then($DONE, $DONE);
-
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-computed-name-empty-var-computed-name-empty-function.js
deleted file mode 100644
index 75a5bc66d11f173a7241107e40a8b64d087d32bd..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var not initialized, computed name function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']; ['b'](){}
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-empty-function.js b/test/language/expressions/class/class-field-computed-name-empty-var-empty-function.js
deleted file mode 100644
index cee1a3ed4b358a67d93ea39030ab279d415aa174..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var not initialized, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']; b(){}
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-empty-var.js b/test/language/expressions/class/class-field-computed-name-empty-var-empty-var.js
deleted file mode 100644
index 8a16e94124f0748f0bcabab1dc11daa0933a32cc..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-empty-var.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-empty-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var not initialized, var not initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']; b
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-generator-empty-function.js b/test/language/expressions/class/class-field-computed-name-empty-var-generator-empty-function.js
deleted file mode 100644
index 7219627a29b9a8888ff26fee57757983e1e89fe3..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-generator-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var not initialized, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']; *b(){}
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-asi.js b/test/language/expressions/class/class-field-computed-name-empty-var-new-line-asi.js
deleted file mode 100644
index d73fed6296f41b597961da821df19862d25656e2..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-asi.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name empty var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-computed-name-empty-function-asi.js b/test/language/expressions/class/class-field-computed-name-empty-var-new-line-computed-name-empty-function-asi.js
deleted file mode 100644
index 1f23ec7fc87bd531d3edbd169709b1d8e0200310..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-computed-name-empty-function-asi.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-computed-name-empty-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name empty var and newline, computed name empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']
-    ['b'](){}
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-computed-name-empty-var-new-line-empty-function-asi.js
deleted file mode 100644
index 25116da33c9817a299011358baf0a1b03c800623..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name empty var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']
-    b(){}
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-empty-var-asi.js b/test/language/expressions/class/class-field-computed-name-empty-var-new-line-empty-var-asi.js
deleted file mode 100644
index 0eeafa1b3414796d8d8c4592a00d8e15c101313b..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-empty-var-asi.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-empty-var-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name empty var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']
-    b
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-generator-empty-function-asi.js b/test/language/expressions/class/class-field-computed-name-empty-var-new-line-generator-empty-function-asi.js
deleted file mode 100644
index 122814aad6f2707e3f75d86934080bfffb59c5cc..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var-new-line-generator-empty-function-asi.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-generator-empty-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name empty var and newline, generator empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a']
-    *b(){}
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-empty-var.js b/test/language/expressions/class/class-field-computed-name-empty-var.js
deleted file mode 100644
index a4cd5c05dfd3ae7ea051051f36422459da5d8645..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-empty-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var not initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'];
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-bar-asi.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-bar-asi.js
deleted file mode 100644
index 35f9f7842fe67545c05d39160477eabfc3fd4143..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-bar-asi.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-new-line-empty-bar-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name zero initialized var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0
-    b
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-function-asi.js
deleted file mode 100644
index 14a6953b3b65d41577d9a2328bc3b88bd93eb829..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name zero initialized var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0
-    b(){}
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-var-asi.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-var-asi.js
deleted file mode 100644
index 9e34507362b42ce5fe971b73975a2e405bfc48c0..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-new-line-empty-var-asi.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-new-line-empty-var-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name zero initialized var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0
-    b
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-var-computed-name-empty-function.js
deleted file mode 100644
index bd4de49b3ac428d52eb3121fc9c8b1d529109c0c..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var zero initialized, computed name empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0; ['b'](){}
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-empty-function.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-var-empty-function.js
deleted file mode 100644
index 7697358a0b64c8caeaf3b151d52f2b61800e00c5..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var zero initialized, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0; b(){}
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-empty-var.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-var-empty-var.js
deleted file mode 100644
index 296b670e3ae9042bc8f4df920598c3d2d766ce67..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-empty-var.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-empty-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var zero initialized, empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0; b
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-generator-empty-function.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-var-generator-empty-function.js
deleted file mode 100644
index 69966f562467bd291f6ef38ea737e01010b9b4a0..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-generator-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var zero initialized, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0; *b(){}
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-new-line-asi.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-var-new-line-asi.js
deleted file mode 100644
index 82daad2a0013bfbf2b86b76f7d519aa366a23f09..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-var-new-line-asi.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-new-line-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: computed name zero initialized var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-computed-name-zero-initializer-var.js b/test/language/expressions/class/class-field-computed-name-zero-initializer-var.js
deleted file mode 100644
index b8bf900bcfa966e280d11e733543a8ef6ba5316a..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-computed-name-zero-initializer-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Computed name var zero initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  ['a'] = 0;
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-double-empty-var.js b/test/language/expressions/class/class-field-double-empty-var.js
deleted file mode 100644
index 91aa355831e3548e4f62fed0e17fe990ed2125d3..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-double-empty-var.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/double-empty-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Empty var, empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a; b;
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-string-var.js b/test/language/expressions/class/class-field-empty-string-var.js
deleted file mode 100644
index 09b2b910240ee6b6a7ac7d4438dfc62c06a858fa..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-string-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-string-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Empty string var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  'a';
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-empty-var-computed-name-empty-function.js
deleted file mode 100644
index 53b844373442ef906703bb06efaf5caf0abdde2e..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: empty var, computed name empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a; ['b'](){}
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-empty-function.js b/test/language/expressions/class/class-field-empty-var-empty-function.js
deleted file mode 100644
index 578c17950b7c2aa2f1120ce76ed1f299d16c555f..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Empty var, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a; b(){}
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-generator-empty-function.js b/test/language/expressions/class/class-field-empty-var-generator-empty-function.js
deleted file mode 100644
index eb6e97c66416693e786451d2a3d5c7701f20af27..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-generator-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Empty var, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a; *b(){}
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-new-line-asi.js b/test/language/expressions/class/class-field-empty-var-new-line-asi.js
deleted file mode 100644
index 7689c60398702138c1731dddcc3c54d892a43a51..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-new-line-asi.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: empty var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-new-line-computed-name-function-asi.js b/test/language/expressions/class/class-field-empty-var-new-line-computed-name-function-asi.js
deleted file mode 100644
index ace6a6db6f6b7e839a7b92ce9a6335463091d1c9..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-new-line-computed-name-function-asi.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-computed-name-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: empty var and newline, computed name empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a
-    ['b'](){}
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-empty-var-new-line-empty-function-asi.js
deleted file mode 100644
index 47f486064a2150d3a72eed2a8dec7a73cd6e9c48..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: empty var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a
-    b(){}
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-new-line-empty-var-new-line-asi.js b/test/language/expressions/class/class-field-empty-var-new-line-empty-var-new-line-asi.js
deleted file mode 100644
index 800831be87a0f2ca6bfd9ff343d3cc37edd5ca86..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-new-line-empty-var-new-line-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-empty-var-new-line-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: empty var and newline, empty var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a
-    b
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var-new-line-generator-empty-function-asi.js b/test/language/expressions/class/class-field-empty-var-new-line-generator-empty-function-asi.js
deleted file mode 100644
index 719d6308cb1220ba2a0454fa52ae5bac736033e8..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var-new-line-generator-empty-function-asi.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-generator-empty-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: empty var and newline, generator empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a
-    *b(){}
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-empty-var.js b/test/language/expressions/class/class-field-empty-var.js
deleted file mode 100644
index 3f57d9fe2650c916b6c5da7c7bd61e7ec9a6b39a..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-empty-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a;
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-computed-name-empty-function.js
deleted file mode 100644
index 3a427e8910a02c6da3e9f9ea0f209b627032e568..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var not initialized, computed name function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']; ['b'](){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-empty-function.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-empty-function.js
deleted file mode 100644
index ab0dded55b3a9cc83f7e44da2d906b6868a4de34..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var not initialized, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']; b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-empty-var.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-empty-var.js
deleted file mode 100644
index b023eb5f734e707c446615d234092f8a3b252fe7..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-empty-var.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-empty-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var not initialized, var not initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']; b
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-generator-empty-function.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-generator-empty-function.js
deleted file mode 100644
index edd50847d8c1ed6cc63101ccdf5b65c05ab99d4b..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-generator-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var not initialized, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']; *b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-asi.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-asi.js
deleted file mode 100644
index 8b3f892889e0146ab1e214740e1bb2fd7a2cb4c4..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-asi.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name empty var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-computed-name-empty-function-asi.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-computed-name-empty-function-asi.js
deleted file mode 100644
index fbce748026af7a44586a657b74c7b24ad376de75..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-computed-name-empty-function-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-computed-name-empty-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name empty var and newline, computed name empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']
-    ['b'](){}
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-empty-function-asi.js
deleted file mode 100644
index 58b2ce521881704eb753c4c2f3eb98b84d1d2dec..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name empty var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']
-    b(){}
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-empty-var-asi.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-empty-var-asi.js
deleted file mode 100644
index 05fc73a482e1fe2b4169c7d25554e884538d9e57..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-empty-var-asi.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-empty-var-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name empty var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']
-    b
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-generator-empty-function-asi.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-generator-empty-function-asi.js
deleted file mode 100644
index eadd1738419acb57b0b2a70f317e77ac8c8f268f..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var-new-line-generator-empty-function-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var-new-line-generator-empty-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name empty var and newline, generator empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a']
-    *b(){}
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-empty-var.js b/test/language/expressions/class/class-field-extends-computed-name-empty-var.js
deleted file mode 100644
index 2e4d656e34e3d31200e966dc73557f520f07b2cf..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-empty-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-empty-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var not initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'];
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-bar-asi.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-bar-asi.js
deleted file mode 100644
index 46853693c627adc93685b7520279ab9273916f81..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-bar-asi.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-new-line-empty-bar-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name zero initialized var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0
-    b
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-function-asi.js
deleted file mode 100644
index 596f63f0be50359120b1328e5837ff997131b79a..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name zero initialized var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0
-    b(){}
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-var-asi.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-var-asi.js
deleted file mode 100644
index 21ab24c76d346cc10338c49d27771246b7722fae..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-new-line-empty-var-asi.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-new-line-empty-var-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name zero initialized var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0
-    b
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-computed-name-empty-function.js
deleted file mode 100644
index d31242aa843f4130d90de3721b32802ee76d952c..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var zero initialized, computed name empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0; ['b'](){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-empty-function.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-empty-function.js
deleted file mode 100644
index 852e70812cfb51af20bf24c43b6cfcf7d5dd48d0..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var zero initialized, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0; b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-empty-var.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-empty-var.js
deleted file mode 100644
index 32510c3f235e57d61a9e1549400c3f6e1177ad18..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-empty-var.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-empty-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var zero initialized, empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0; b
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-generator-empty-function.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-generator-empty-function.js
deleted file mode 100644
index 34a07ecc7a45a1201f13018397149e51bb26668f..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-generator-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var zero initialized, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0; *b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-new-line-asi.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-new-line-asi.js
deleted file mode 100644
index 61552b3296bd4dac417e750cd2a725072c50d3ac..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var-new-line-asi.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var-new-line-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: computed name zero initialized var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var.js b/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var.js
deleted file mode 100644
index 809f8150355ee02912b51f7e0a95b5c002d4589e..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-computed-name-zero-initializer-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/computed-name-zero-initializer-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Computed name var zero initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  ['a'] = 0;
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-double-empty-var.js b/test/language/expressions/class/class-field-extends-double-empty-var.js
deleted file mode 100644
index 49e78c982e57320ccf457798bc6c4f6a161fc9ed..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-double-empty-var.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/double-empty-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Empty var, empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a; b;
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-string-var.js b/test/language/expressions/class/class-field-extends-empty-string-var.js
deleted file mode 100644
index a802e87cb023b60968fbf7196a7f53cbc1822220..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-string-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-string-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Empty string var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  'a';
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-extends-empty-var-computed-name-empty-function.js
deleted file mode 100644
index 8965439fba04b8f09f84355b652da44713d74622..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: empty var, computed name empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a; ['b'](){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-empty-function.js b/test/language/expressions/class/class-field-extends-empty-var-empty-function.js
deleted file mode 100644
index 30033ae668c22fc69d8c5655ccd580cccfa29af8..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Empty var, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a; b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-generator-empty-function.js b/test/language/expressions/class/class-field-extends-empty-var-generator-empty-function.js
deleted file mode 100644
index fd2ebdef05f59b76d9a9ea5164ecea5cc4e697c6..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-generator-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Empty var, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a; *b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-new-line-asi.js b/test/language/expressions/class/class-field-extends-empty-var-new-line-asi.js
deleted file mode 100644
index 5b3854a1cd64d27ff96b9522ad6177b6dda7707c..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-new-line-asi.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: empty var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-new-line-computed-name-function-asi.js b/test/language/expressions/class/class-field-extends-empty-var-new-line-computed-name-function-asi.js
deleted file mode 100644
index 0c0ff4a66475e780622ca63f11bbc57b1aae5a10..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-new-line-computed-name-function-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-computed-name-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: empty var and newline, computed name empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a
-    ['b'](){}
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-extends-empty-var-new-line-empty-function-asi.js
deleted file mode 100644
index af0371b76c625d06edc9dda3b719f08cda43c4cb..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: empty var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a
-    b(){}
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-new-line-empty-var-new-line-asi.js b/test/language/expressions/class/class-field-extends-empty-var-new-line-empty-var-new-line-asi.js
deleted file mode 100644
index 116a55252d6c1c858b3fbed5802dde4ca233521d..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-new-line-empty-var-new-line-asi.js
+++ /dev/null
@@ -1,39 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-empty-var-new-line-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: empty var and newline, empty var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a
-    b
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var-new-line-generator-empty-function-asi.js b/test/language/expressions/class/class-field-extends-empty-var-new-line-generator-empty-function-asi.js
deleted file mode 100644
index 000a240274bca876e50e74f5fcbdd391a0d7dbff..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var-new-line-generator-empty-function-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var-new-line-generator-empty-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: empty var and newline, generator empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a
-    *b(){}
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-empty-var.js b/test/language/expressions/class/class-field-extends-empty-var.js
deleted file mode 100644
index ce1433e78aafb7d4dafabfe1f9b804fbe35ef328..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-empty-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/empty-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a;
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-string-zero-initializer-var.js b/test/language/expressions/class/class-field-extends-string-zero-initializer-var.js
deleted file mode 100644
index 530de195c23d41a099e77187657a19119154bb18..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-string-zero-initializer-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/string-zero-initializer-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: string var zero initializer (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  'a' = 0;
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-undefined-initializer-var.js b/test/language/expressions/class/class-field-extends-undefined-initializer-var.js
deleted file mode 100644
index d93ae5eca1941624a4982d1041fd88caa0971ca4..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-undefined-initializer-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/undefined-initializer-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: Empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = undefined;
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-yield-var.js b/test/language/expressions/class/class-field-extends-yield-var.js
deleted file mode 100644
index 872aea4d908360eac13ba8a6c8708efa8267cde7..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-yield-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/yield-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: yield var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  yield
-
-  constructor() {
-    super();
-    assert.sameValue(this.yield, undefined);
-      verifyEnumerable(this, "yield");
-      verifyWritable(this, "yield");
-      verifyConfigurable(this, "yield");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-yield-zero-initializer-var.js b/test/language/expressions/class/class-field-extends-yield-zero-initializer-var.js
deleted file mode 100644
index 4c69047caf0617aea1fc61040d8029ae8eaf1d9c..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-yield-zero-initializer-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/yield-zero-initializer-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: yield var zero initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  yield = 0
-
-  constructor() {
-    super();
-    assert.sameValue(this.yield, 0);
-      verifyEnumerable(this, "yield");
-      verifyWritable(this, "yield");
-      verifyConfigurable(this, "yield");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-empty-var.js b/test/language/expressions/class/class-field-extends-zero-empty-var.js
deleted file mode 100644
index 2522582bbf5f8d9fbdee41c4c0ea0808d513a38b..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-empty-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-empty-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  0;
-
-  constructor() {
-    super();
-    assert.sameValue(this["0"], undefined);
-      verifyEnumerable(this, "0");
-      verifyWritable(this, "0");
-      verifyConfigurable(this, "0");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-extends-zero-initializer-var-computed-name-empty-function.js
deleted file mode 100644
index 41c6d918daa28af736cb32d86ad943bffcae4b33..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var, computed name empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0; ['b'](){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var-empty-function.js b/test/language/expressions/class/class-field-extends-zero-initializer-var-empty-function.js
deleted file mode 100644
index 5f76b1787a96c103dfc0cf81a769dcbe82935d42..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0; b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var-empty-var.js b/test/language/expressions/class/class-field-extends-zero-initializer-var-empty-var.js
deleted file mode 100644
index 19f12532b23a5f1905cca34bbab8c7eeeb867d1f..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var-empty-var.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-empty-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var, empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0; b
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var-generator-empty-function.js b/test/language/expressions/class/class-field-extends-zero-initializer-var-generator-empty-function.js
deleted file mode 100644
index 8f9e5974399844be36f3f3c3cf23b80dd74da25d..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var-generator-empty-function.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0; *b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-asi.js b/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-asi.js
deleted file mode 100644
index 7b964dbce420837d4317cad32f1ff98e1e66422c..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-asi.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-new-line-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-empty-function-asi.js
deleted file mode 100644
index d7b67421395723874ca8713d22814ab31969fda2..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0
-    b(){}
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-empty-var-asi.js b/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-empty-var-asi.js
deleted file mode 100644
index 74dbbf71ec347a023f798d84a871edcb206ceb02..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var-new-line-empty-var-asi.js
+++ /dev/null
@@ -1,39 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-new-line-empty-var-asi.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0
-    b
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-initializer-var.js b/test/language/expressions/class/class-field-extends-zero-initializer-var.js
deleted file mode 100644
index 5b58756f17dac5391c6a8d8f55a6656735e23020..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-initializer-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  a = 0;
-
-  constructor() {
-    super();
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-extends-zero-zero-initializer-var.js b/test/language/expressions/class/class-field-extends-zero-zero-initializer-var.js
deleted file mode 100644
index a91436194bca981671bf5a87a3f94fc360d079ba..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-extends-zero-zero-initializer-var.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-zero-initializer-var.case
-// - src/class-fields/default/cls-decl-extends.template
-/*---
-description: zero initialized zero var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class Base {}
-class C extends Base {
-  0 = 0;
-
-  constructor() {
-    super();
-    assert.sameValue(this["0"], 0);
-      verifyEnumerable(this, "0");
-      verifyWritable(this, "0");
-      verifyConfigurable(this, "0");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-string-zero-initializer-var.js b/test/language/expressions/class/class-field-string-zero-initializer-var.js
deleted file mode 100644
index 9254e0b7805dbcd7dd4f0b4e88073909a79ef0ef..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-string-zero-initializer-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/string-zero-initializer-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: string var zero initializer (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  'a' = 0;
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-undefined-initializer-var.js b/test/language/expressions/class/class-field-undefined-initializer-var.js
deleted file mode 100644
index 5d1c5c1eb320201c2d610772a2a30db7e418cf70..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-undefined-initializer-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/undefined-initializer-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: Empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = undefined;
-
-  constructor() {
-    assert.sameValue(this.a, undefined);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-yield-var.js b/test/language/expressions/class/class-field-yield-var.js
deleted file mode 100644
index 6e54b36c081285ea14f1dcfb439e297b9ceb5ac0..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-yield-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/yield-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: yield var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  yield
-
-  constructor() {
-    assert.sameValue(this.yield, undefined);
-      verifyEnumerable(this, "yield");
-      verifyWritable(this, "yield");
-      verifyConfigurable(this, "yield");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-yield-zero-initializer-var.js b/test/language/expressions/class/class-field-yield-zero-initializer-var.js
deleted file mode 100644
index e7ec11ceae748f65377ca2f438e023439306ac8e..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-yield-zero-initializer-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/yield-zero-initializer-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: yield var zero initialized (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  yield = 0
-
-  constructor() {
-    assert.sameValue(this.yield, 0);
-      verifyEnumerable(this, "yield");
-      verifyWritable(this, "yield");
-      verifyConfigurable(this, "yield");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-empty-var.js b/test/language/expressions/class/class-field-zero-empty-var.js
deleted file mode 100644
index c9f99d638f20a0e77705b7da020d9c19f1a5e1d5..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-empty-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-empty-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  0;
-
-  constructor() {
-    assert.sameValue(this["0"], undefined);
-      verifyEnumerable(this, "0");
-      verifyWritable(this, "0");
-      verifyConfigurable(this, "0");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var-computed-name-empty-function.js b/test/language/expressions/class/class-field-zero-initializer-var-computed-name-empty-function.js
deleted file mode 100644
index 76b766943bd1912163d653c0ffd4fea141c4533d..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var-computed-name-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-computed-name-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var, computed name empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0; ['b'](){}
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var-empty-function.js b/test/language/expressions/class/class-field-zero-initializer-var-empty-function.js
deleted file mode 100644
index d287e5031ec8065a6fbd47513e73e8e8f2ce091a..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var, empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0; b(){}
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var-empty-var.js b/test/language/expressions/class/class-field-zero-initializer-var-empty-var.js
deleted file mode 100644
index 81a70722eefbf6e9e959dbc0bc6a6f091d695581..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var-empty-var.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-empty-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var, empty var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0; b
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var-generator-empty-function.js b/test/language/expressions/class/class-field-zero-initializer-var-generator-empty-function.js
deleted file mode 100644
index 39846ac8bbd87dcfe9d9a3c28f117917407b1904..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var-generator-empty-function.js
+++ /dev/null
@@ -1,35 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-generator-empty-function.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var, generator empty function (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0; *b(){}
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var-new-line-asi.js b/test/language/expressions/class/class-field-zero-initializer-var-new-line-asi.js
deleted file mode 100644
index aab9907ef94711f00011328350cb980f3f88c1a2..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var-new-line-asi.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-new-line-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var and newline (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var-new-line-empty-function-asi.js b/test/language/expressions/class/class-field-zero-initializer-var-new-line-empty-function-asi.js
deleted file mode 100644
index 9d397a66c5f4b1402dc59245175ab4dadbd2f8ca..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var-new-line-empty-function-asi.js
+++ /dev/null
@@ -1,36 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-new-line-empty-function-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var and newline, empty function (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0
-    b(){}
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(typeof Object.getPrototypeOf(this).b, "function");
-      verifyNotEnumerable(Object.getPrototypeOf(this), "b");
-      verifyConfigurable(Object.getPrototypeOf(this), "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var-new-line-empty-var-asi.js b/test/language/expressions/class/class-field-zero-initializer-var-new-line-empty-var-asi.js
deleted file mode 100644
index 9366a410a9fb02bd456b4895cda1463846f0e789..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var-new-line-empty-var-asi.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var-new-line-empty-var-asi.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var and newline, empty var (ASI) (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0
-    b
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-
-      assert.sameValue(this.b, undefined);
-      verifyEnumerable(this, "b");
-      verifyWritable(this, "b");
-      verifyConfigurable(this, "b");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-initializer-var.js b/test/language/expressions/class/class-field-zero-initializer-var.js
deleted file mode 100644
index 32bbeb4a2ea66fa5988f8b799888d19aa1a3a591..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-initializer-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-initializer-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  a = 0;
-
-  constructor() {
-    assert.sameValue(this.a, 0);
-      verifyEnumerable(this, "a");
-      verifyWritable(this, "a");
-      verifyConfigurable(this, "a");
-  }
-}
-
-const c = new C();
diff --git a/test/language/expressions/class/class-field-zero-zero-initializer-var.js b/test/language/expressions/class/class-field-zero-zero-initializer-var.js
deleted file mode 100644
index 3f7aa2c754e8a029a57511257d78998805649894..0000000000000000000000000000000000000000
--- a/test/language/expressions/class/class-field-zero-zero-initializer-var.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/class-fields/zero-zero-initializer-var.case
-// - src/class-fields/default/cls-decl.template
-/*---
-description: zero initialized zero var (class fields)
-flags: [generated]
-includes: [propertyHelper.js]
-info: |
-    1.1 New Productions
-
-    [...]
-
-    FieldDefinitionList [Yield, Await]:
-      FieldDefinition [?Yield, ?Await]
-      FieldDefinitionList  [?Yield, ?Await], FieldDefinition [?Yield, ?Await]
-
----*/
-
-
-class C {
-  0 = 0;
-
-  constructor() {
-    assert.sameValue(this["0"], 0);
-      verifyEnumerable(this, "0");
-      verifyWritable(this, "0");
-      verifyConfigurable(this, "0");
-  }
-}
-
-const c = new C();
diff --git a/test/language/statements/for-await-of/async-func-decl-dstr-array-elem-init-let.js b/test/language/statements/for-await-of/async-func-decl-dstr-array-elem-init-let.js
deleted file mode 100644
index f986e64f300e67382e7579ea490e19398dd45949..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-func-decl-dstr-array-elem-init-let.js
+++ /dev/null
@@ -1,44 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-init-let.case
-// - src/dstr-assignment-for-await/default/async-func-decl.template
-/*---
-description: Value retrieval of Initializer obeys `let` semantics. (for-await-of statement in an async function declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [let, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
----*/
-let x;
-
-let iterCount = 0;
-async function fn() {
-  for await ([ x = y ] of [[]]) {
-    
-    iterCount += 1;
-  }
-}
-
-let promise = fn();
-
-promise.then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(constructor, ReferenceError);
-}).then($DONE, $DONE);
-
-let y;
-
diff --git a/test/language/statements/for-await-of/async-func-decl-dstr-array-elem-put-let.js b/test/language/statements/for-await-of/async-func-decl-dstr-array-elem-put-let.js
deleted file mode 100644
index 1568df9dd5fe1dd62a1a1b4236ee700b103cbf43..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-func-decl-dstr-array-elem-put-let.js
+++ /dev/null
@@ -1,43 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-put-let.case
-// - src/dstr-assignment-for-await/default/async-func-decl.template
-/*---
-description: The assignment target should obey `let` semantics. (for-await-of statement in an async function declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [let, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
----*/
-
-let iterCount = 0;
-async function fn() {
-  for await ([ x ] of [[]]) {
-    
-    iterCount += 1;
-  }
-}
-
-let promise = fn();
-
-promise.then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, ReferenceError);
-}).then($DONE, $DONE);
-
-let x;
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-init-let.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-init-let.js
deleted file mode 100644
index 2ea88b545b9c394c5b5db3b86de90817585498d1..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-init-let.js
+++ /dev/null
@@ -1,44 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-init-let.case
-// - src/dstr-assignment-for-await/default/async-gen-decl.template
-/*---
-description: Value retrieval of Initializer obeys `let` semantics. (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [let, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
----*/
-let x;
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ x = y ] of [[]]) {
-    
-    iterCount += 1;
-  }
-}
-
-let promise = fn().next();
-
-promise.then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(constructor, ReferenceError);
-}).then($DONE, $DONE);
-
-let y;
-
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-put-let.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-put-let.js
deleted file mode 100644
index ac115be487f01c94dae5150c00cdf9848822b210..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-put-let.js
+++ /dev/null
@@ -1,43 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-put-let.case
-// - src/dstr-assignment-for-await/default/async-gen-decl.template
-/*---
-description: The assignment target should obey `let` semantics. (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [let, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
----*/
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ x ] of [[]]) {
-    
-    iterCount += 1;
-  }
-}
-
-let promise = fn().next();
-
-promise.then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, ReferenceError);
-}).then($DONE, $DONE);
-
-let x;
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-elision-iter-abpt.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-elision-iter-abpt.js
deleted file mode 100644
index 81c2eb4337b2653742472c3c676e2ed4cc402486..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-elision-iter-abpt.js
+++ /dev/null
@@ -1,85 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-elision-iter-abpt.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: Abrupt completion returned during evaluation of elision (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    6. If Elision is present, then
-       a. Let status be the result of performing
-          IteratorDestructuringAssignmentEvaluation of Elision with
-          iteratorRecord as the argument.
-       b. If status is an abrupt completion, then
-          i. If iteratorRecord.[[done]] is false, return
-             IteratorClose(iterator, status).
-          ii. Return Completion(status).
-
----*/
-let nextCount = 0;
-let returnCount = 0;
-let x;
-let iterator = {
-  next() {
-    nextCount += 1;
-
-    if (nextCount === 2) {
-      throw new Test262Error();
-    }
-
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    returnCount += 1;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ x , , ] of [iterable]) {
-    
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-
-iter.next().then(() => {
-  iter.next().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-    assert.sameValue(nextCount, 2);
-    assert.sameValue(returnCount, 0);
-    assert.sameValue(constructor, Test262Error);
-
-  }).then($DONE, $DONE);
-}, $DONE);
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-get-err.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-get-err.js
deleted file mode 100644
index 5f2eb345662a9558aa2cba191e4456714d57d26e..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-get-err.js
+++ /dev/null
@@ -1,55 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-get-err.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: Abrupt completion returned from GetIterator (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    1. Let iterator be GetIterator(value).
-    2. ReturnIfAbrupt(iterator).
-
----*/
-let iterable = {
-  [Symbol.iterator]() {
-    throw new Test262Error();
-  }
-};
-let x;
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ x , ] of [iterable
-]) {
-    
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, Test262Error);
-}).then($DONE, $DONE);
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-nrml-close-null.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-nrml-close-null.js
deleted file mode 100644
index 95bd13242ab1bef200749d03ba46c995560a5ed6..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-nrml-close-null.js
+++ /dev/null
@@ -1,83 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-list-nrml-close-null.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: IteratorClose throws a TypeError when `return` returns a non-Object value (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-    8. If Type(innerResult.[[value]]) is not Object, throw a TypeError
-       exception.
-
----*/
-let x;
-let nextCount = 0;
-let iterator = {
-  next() {
-    nextCount += 1;
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    return null;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ x , ] of [iterable]) {
-    
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, TypeError);
-}).then($DONE, $DONE);
-
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-err.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-err.js
deleted file mode 100644
index 1f68ee6b521c0ca0423ec97cdeb55d1b0b4e5796..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-err.js
+++ /dev/null
@@ -1,77 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-err.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: IteratorClose is invoked when evaluation of AssignmentElementList returns a "return" completion and the iterator has not been marked as "done" (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, generators, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
----*/
-let returnCount = 0;
-let unreachable = 0;
-let iterator = {
-  return() {
-    returnCount += 1;
-
-    throw new Test262Error();
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ {}[yield] , ] of [iterable]) {
-    unreachable += 1;
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(returnCount, 1);
-  assert.sameValue(unreachable, 0, 'Unreachable statement was not executed');
-  assert.sameValue(constructor, Test262Error);
-}).then($DONE, $DONE);
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-null.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-null.js
deleted file mode 100644
index d894b5440413b2c49559cdc6001a6646534a0e2a..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-null.js
+++ /dev/null
@@ -1,75 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close-null.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: IteratorClose throws a TypeError when `return` returns a non-Object value (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, generators, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-    8. If Type(innerResult.[[value]]) is not Object, throw a TypeError
-       exception.
-
----*/
-let iterator = {
-  return() {
-    return null;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ {}[yield] , ] of [iterable]) {
-    
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(iterCount, 0);
-  assert.sameValue(constructor, TypeError);
-}).then($DONE, $DONE);
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close.js
deleted file mode 100644
index 32405bb5c43a3ff7caf61efc342623c4b47787f1..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close.js
+++ /dev/null
@@ -1,85 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-list-rtrn-close.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: IteratorClose is invoked when evaluation of AssignmentElementList returns a "return" completion and the iterator has not been marked as "done" (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, generators, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    2. Let iteratorRecord be Record {[[Iterator]]: iterator, [[Done]]: false}.
-    3. Let status be the result of performing
-       IteratorDestructuringAssignmentEvaluation of AssignmentElementList using
-       iteratorRecord as the argument.
-    4. If status is an abrupt completion, then
-       a. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-       b. Return Completion(status).
-
-    7.4.6 IteratorClose( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
----*/
-let returnCount = 0;
-let unreachable = 0;
-let thisValue = null;
-let args = null;
-let iterator = {
-  return() {
-    returnCount += 1;
-    thisValue = this;
-    args = arguments;
-    return {};
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ {}[yield] , ] of [iterable]) {
-    unreachable += 1;
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-iter.return(888).then(result => {
-  assert.sameValue(returnCount, 1);
-  assert.sameValue(unreachable, 0, 'Unreachable statement was not executed');
-  assert.sameValue(result.value, 888);
-  assert(result.done, 'Iterator correctly closed');
-  assert.sameValue(thisValue, iterator, 'correct `this` value');
-  assert(!!args, 'arguments object provided');
-  assert.sameValue(args.length, 0, 'zero arguments specified');
-}).then($DONE, $DONE);
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-err.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-err.js
deleted file mode 100644
index c894d48a5547776a984d9a992e463fe4550d210c..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-err.js
+++ /dev/null
@@ -1,86 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-err.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: IteratorClose is called when AssignmentRestEvaluation produces a "return" completion due to reference evaluation (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, generators, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    6. If AssignmentRestElement is present, then
-       a. Let status be the result of performing
-          IteratorDestructuringAssignmentEvaluation of AssignmentRestElement
-          with iteratorRecord as the argument.
-    7. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-    8. Return Completion(status).
-
-    7.4.6 IteratorClose ( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
----*/
-let nextCount = 0;
-let returnCount = 0;
-let unreachable = 0;
-let x;
-let iterator = {
-  next() {
-    nextCount += 1;
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    returnCount += 1;
-
-    throw new Test262Error();
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ x , ...{}[yield] ] of [iterable]) {
-    unreachable += 1;
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-iter.next().then(() => {
-  iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-    assert.sameValue(nextCount, 1);
-    assert.sameValue(returnCount, 1);
-    assert.sameValue(constructor, Test262Error);
-  }).then($DONE, $DONE);
-}).then($DONE, $DONE);
diff --git a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-null.js b/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-null.js
deleted file mode 100644
index c4ede1b4e25b94fe0383a1525a74540820808297..0000000000000000000000000000000000000000
--- a/test/language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-null.js
+++ /dev/null
@@ -1,80 +0,0 @@
-// This file was procedurally generated from the following sources:
-// - src/dstr-assignment-for-await/array-elem-trlg-iter-rest-rtrn-close-null.case
-// - src/dstr-assignment-for-await/async-generator/async-gen-decl.template
-/*---
-description: IteratorClose throws a TypeError when `return` returns a non-Object value (for-await-of statement in an async generator declaration)
-esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation
-features: [Symbol.iterator, generators, destructuring-binding, async-iteration]
-flags: [generated, async]
-info: |
-    IterationStatement :
-      for await ( LeftHandSideExpression of AssignmentExpression ) Statement
-
-    1. Let keyResult be the result of performing ? ForIn/OfHeadEvaluation(« »,
-       AssignmentExpression, iterate).
-    2. Return ? ForIn/OfBodyEvaluation(LeftHandSideExpression, Statement,
-       keyResult, assignment, labelSet).
-
-    13.7.5.13 Runtime Semantics: ForIn/OfBodyEvaluation
-
-    [...]
-    5. If destructuring is true and if lhsKind is assignment, then
-       a. Assert: lhs is a LeftHandSideExpression.
-       b. Let assignmentPattern be the parse of the source text corresponding to
-          lhs using AssignmentPattern as the goal symbol.
-    [...]
-
-    ArrayAssignmentPattern :
-        [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]
-
-    [...]
-    6. If AssignmentRestElement is present, then
-       a. Let status be the result of performing
-          IteratorDestructuringAssignmentEvaluation of AssignmentRestElement
-          with iteratorRecord as the argument.
-    7. If iteratorRecord.[[Done]] is false, return ? IteratorClose(iterator, status).
-    8. Return Completion(status).
-
-    7.4.6 IteratorClose ( iterator, completion )
-
-    [...]
-    5. Let innerResult be Call(return, iterator, « »).
-    6. If completion.[[type]] is throw, return Completion(completion).
-    7. If innerResult.[[type]] is throw, return Completion(innerResult).
-
----*/
-let nextCount = 0;
-let x;
-let iterator = {
-  next() {
-    nextCount += 1;
-    // Set an upper-bound to limit unnecessary iteration in non-conformant
-    // implementations
-    return { done: nextCount > 10 };
-  },
-  return() {
-    return null;
-  }
-};
-let iterable = {
-  [Symbol.iterator]() {
-    return iterator;
-  }
-};
-
-
-let iterCount = 0;
-async function * fn() {
-  for await ([ x , ...{}[yield] ] of [iterable]) {
-    
-    iterCount += 1;
-  }
-}
-
-let iter = fn();
-
-iter.return().then(() => $DONE('Promise incorrectly fulfilled.'), ({ constructor }) => {
-  assert.sameValue(nextCount, 1);
-  assert.sameValue(constructor, Test262Error);
-}).then($DONE, $DONE);
-