diff --git a/features.txt b/features.txt
index 66ad482cfbe4a90aefc16a10215e09c3ec007419..d30744f6b5b29e9ff1264fe83799962ab21d80fb 100644
--- a/features.txt
+++ b/features.txt
@@ -68,7 +68,6 @@ default-arg
 default-parameters
 destructuring-binding
 Float64Array
-generator
 generators
 Int8Array
 let
diff --git a/src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case b/src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case
index 2d7cd5094afa7a3deb2baf825b8ed496ec2141af..bc13eb840eace31397e6573514c9196e3afdc128 100644
--- a/src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case
+++ b/src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case
@@ -19,7 +19,7 @@ info: |
     1. If iteratorRecord.[[done]] is false, then
        [...]
     2. Return NormalCompletion(empty).
-features: [generator]
+features: [generators]
 ---*/
 
 //- setup
diff --git a/src/dstr-binding-for-await/ary-ptrn-elision-step-err.case b/src/dstr-binding-for-await/ary-ptrn-elision-step-err.case
index 1f1d69448001bae2b419a1720d37db33b49b9454..5b0d8a8b8640c02598d166940b2e45981d9f3b61 100644
--- a/src/dstr-binding-for-await/ary-ptrn-elision-step-err.case
+++ b/src/dstr-binding-for-await/ary-ptrn-elision-step-err.case
@@ -20,7 +20,7 @@ info: |
        a. Let next be IteratorStep(iteratorRecord.[[iterator]]).
        b. If next is an abrupt completion, set iteratorRecord.[[done]] to true.
        c. ReturnIfAbrupt(next).
-features: [generator]
+features: [generators]
 ---*/
 
 //- setup
diff --git a/src/dstr-binding-for-await/ary-ptrn-elision.case b/src/dstr-binding-for-await/ary-ptrn-elision.case
index 828e8413a323003e6faa807f3f900eb2171ed682..a7814c942d91f32caddb7fb86cb8e3699d1f0c8a 100644
--- a/src/dstr-binding-for-await/ary-ptrn-elision.case
+++ b/src/dstr-binding-for-await/ary-ptrn-elision.case
@@ -22,7 +22,7 @@ info: |
        c. ReturnIfAbrupt(next).
        d. If next is false, set iteratorRecord.[[done]] to true.
     2. Return NormalCompletion(empty).
-features: [generator]
+features: [generators]
 ---*/
 
 //- setup
diff --git a/src/dstr-binding/ary-ptrn-elision-exhausted.case b/src/dstr-binding/ary-ptrn-elision-exhausted.case
index 1f3b1fd8e61028fc5b2ab521ad4a3903dbeee32d..6d95dab7aa8753d41e6d79cd20e2ff2210217c4b 100644
--- a/src/dstr-binding/ary-ptrn-elision-exhausted.case
+++ b/src/dstr-binding/ary-ptrn-elision-exhausted.case
@@ -19,7 +19,7 @@ info: |
     1. If iteratorRecord.[[done]] is false, then
        [...]
     2. Return NormalCompletion(empty).
-features: [generator]
+features: [generators]
 ---*/
 
 //- setup
diff --git a/src/dstr-binding/ary-ptrn-elision-step-err.case b/src/dstr-binding/ary-ptrn-elision-step-err.case
index 296f6e6f67edb02487db6af18466e3c260e88845..2c780f17de8ed9cf46cdb98b3f4b5f008b7d37d8 100644
--- a/src/dstr-binding/ary-ptrn-elision-step-err.case
+++ b/src/dstr-binding/ary-ptrn-elision-step-err.case
@@ -20,7 +20,7 @@ info: |
        a. Let next be IteratorStep(iteratorRecord.[[iterator]]).
        b. If next is an abrupt completion, set iteratorRecord.[[done]] to true.
        c. ReturnIfAbrupt(next).
-features: [generator]
+features: [generators]
 ---*/
 
 //- setup
diff --git a/src/dstr-binding/ary-ptrn-elision.case b/src/dstr-binding/ary-ptrn-elision.case
index 9784dea4f266a42ef92d9e7fa09e281bdc2d1f1d..2344f788a635373705e6261066135eb14e09178b 100644
--- a/src/dstr-binding/ary-ptrn-elision.case
+++ b/src/dstr-binding/ary-ptrn-elision.case
@@ -22,7 +22,7 @@ info: |
        c. ReturnIfAbrupt(next).
        d. If next is false, set iteratorRecord.[[done]] to true.
     2. Return NormalCompletion(empty).
-features: [generator]
+features: [generators]
 ---*/
 
 //- setup