diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a839f18332a..a3319864aba 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -380,6 +380,7 @@ includes: [asyncHelpers.js] asyncTest(async function() { await assert.throwsAsync(TypeError, () => Array.fromAsync([], "not a function"), "Array.fromAsync should reject asynchronously"); }); +``` ## A Note on Python-based tools diff --git a/features.txt b/features.txt index 7742bd3fe84..a398ae2e15d 100644 --- a/features.txt +++ b/features.txt @@ -114,6 +114,7 @@ ArrayBuffer Array.prototype.at Array.prototype.flat Array.prototype.flatMap +Array.prototype.includes Array.prototype.values arrow-function async-iteration @@ -148,6 +149,7 @@ destructuring-assignment destructuring-binding dynamic-import error-cause +exponentiation export-star-as-namespace-from-module # https://github.com/tc39/ecma262/pull/1174 FinalizationRegistry for-in-order diff --git a/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-0.case b/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-0.case index 800f8afe823..675e2e68784 100644 --- a/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-0.case +++ b/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-0.case @@ -9,6 +9,7 @@ info: | UpdateExpression ** ExponentiationExpression Static Semantics AssignmentTargetType, Return invalid. template: invalid +features: [exponentiation] negative: phase: parse type: SyntaxError diff --git a/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-1.case b/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-1.case index fdbb6f50adf..6bd8c1050e7 100644 --- a/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-1.case +++ b/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-1.case @@ -9,6 +9,7 @@ info: | UpdateExpression ** ExponentiationExpression Static Semantics AssignmentTargetType, Return invalid. template: invalid +features: [exponentiation] negative: phase: parse type: SyntaxError diff --git a/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-2.case b/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-2.case index 92c51c0e5c5..65910c5e973 100644 --- a/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-2.case +++ b/src/assignment-target-type/updateexpression-star-star-exponentiationexpression-2.case @@ -9,6 +9,7 @@ info: | UpdateExpression ** ExponentiationExpression Static Semantics AssignmentTargetType, Return invalid. template: invalid +features: [exponentiation] negative: phase: parse type: SyntaxError diff --git a/src/compound-assignment-private/exp.case b/src/compound-assignment-private/exp.case index abe58ceaf6e..c7a41581cb2 100644 --- a/src/compound-assignment-private/exp.case +++ b/src/compound-assignment-private/exp.case @@ -4,6 +4,7 @@ /*--- template: default desc: Compound exponentiation assignment with target being a private reference +features: [exponentiation] ---*/ //- lhs diff --git a/src/computed-property-names/computed-property-name-from-exponetiation-expression.case b/src/computed-property-names/computed-property-name-from-exponetiation-expression.case index 897dd032c4b..544fce63a88 100644 --- a/src/computed-property-names/computed-property-name-from-exponetiation-expression.case +++ b/src/computed-property-names/computed-property-name-from-exponetiation-expression.case @@ -4,7 +4,7 @@ /*--- desc: Computed property name from exponentiation expression template: evaluation -features: [computed-property-names] +features: [computed-property-names, exponentiation] ---*/ //- ComputedPropertyName diff --git a/src/computed-property-names/computed-property-name-from-math.case b/src/computed-property-names/computed-property-name-from-math.case index 8edd0cbf94c..b6b8c214b35 100644 --- a/src/computed-property-names/computed-property-name-from-math.case +++ b/src/computed-property-names/computed-property-name-from-math.case @@ -4,7 +4,7 @@ /*--- desc: Computed property name from math template: evaluation -features: [computed-property-names] +features: [computed-property-names, exponentiation] ---*/ //- ComputedPropertyName 1 + 2 - 3 * 4 / 5 ** 6 diff --git a/test/built-ins/Array/prototype/includes/call-with-boolean.js b/test/built-ins/Array/prototype/includes/call-with-boolean.js index 695c249baa5..30b214243e6 100644 --- a/test/built-ins/Array/prototype/includes/call-with-boolean.js +++ b/test/built-ins/Array/prototype/includes/call-with-boolean.js @@ -4,6 +4,7 @@ /*--- esid: sec-array.prototype.includes description: Array.prototype.includes applied to boolean primitive +features: [Array.prototype.includes] ---*/ assert.sameValue(Array.prototype.includes.call(true), false, 'Array.prototype.includes.call(true) must return false'); diff --git a/test/built-ins/Array/prototype/includes/fromIndex-equal-or-greater-length-returns-false.js b/test/built-ins/Array/prototype/includes/fromIndex-equal-or-greater-length-returns-false.js index 84bb4526d8e..fbb10381b1b 100644 --- a/test/built-ins/Array/prototype/includes/fromIndex-equal-or-greater-length-returns-false.js +++ b/test/built-ins/Array/prototype/includes/fromIndex-equal-or-greater-length-returns-false.js @@ -16,6 +16,7 @@ info: | 7. Repeat, while k < len ... 8. Return false. +features: [Array.prototype.includes] ---*/ var sample = [7, 7, 7, 7]; diff --git a/test/built-ins/Array/prototype/includes/fromIndex-infinity.js b/test/built-ins/Array/prototype/includes/fromIndex-infinity.js index 0c5d3bb270b..86d0c76595e 100644 --- a/test/built-ins/Array/prototype/includes/fromIndex-infinity.js +++ b/test/built-ins/Array/prototype/includes/fromIndex-infinity.js @@ -18,6 +18,7 @@ info: | 7. Repeat, while k < len ... 8. Return false. +features: [Array.prototype.includes] ---*/ var sample = [42, 43, 43, 41]; diff --git a/test/built-ins/Array/prototype/includes/fromIndex-minus-zero.js b/test/built-ins/Array/prototype/includes/fromIndex-minus-zero.js index 7a6e0087a67..9751a40759f 100644 --- a/test/built-ins/Array/prototype/includes/fromIndex-minus-zero.js +++ b/test/built-ins/Array/prototype/includes/fromIndex-minus-zero.js @@ -13,6 +13,7 @@ info: | ... 7. Repeat, while k < len ... +features: [Array.prototype.includes] ---*/ var sample = [42, 43]; diff --git a/test/built-ins/Array/prototype/includes/get-prop.js b/test/built-ins/Array/prototype/includes/get-prop.js index bea3d5a9afe..1505b7719b2 100644 --- a/test/built-ins/Array/prototype/includes/get-prop.js +++ b/test/built-ins/Array/prototype/includes/get-prop.js @@ -12,7 +12,7 @@ info: | a. Let elementK be the result of ? Get(O, ! ToString(k)). ... includes: [compareArray.js] -features: [Proxy] +features: [Proxy, Array.prototype.includes] ---*/ var calls; diff --git a/test/built-ins/Array/prototype/includes/length-boundaries.js b/test/built-ins/Array/prototype/includes/length-boundaries.js index 84ac9579c47..bffb3996419 100644 --- a/test/built-ins/Array/prototype/includes/length-boundaries.js +++ b/test/built-ins/Array/prototype/includes/length-boundaries.js @@ -17,6 +17,7 @@ info: | 2. If len ≤ +0, return +0. 3. If len is +∞, return 2**53-1. 4. Return min(len, 2**53-1). +features: [Array.prototype.includes] ---*/ var obj = { diff --git a/test/built-ins/Array/prototype/includes/length-zero-returns-false.js b/test/built-ins/Array/prototype/includes/length-zero-returns-false.js index 7e247c26c69..098fe454771 100644 --- a/test/built-ins/Array/prototype/includes/length-zero-returns-false.js +++ b/test/built-ins/Array/prototype/includes/length-zero-returns-false.js @@ -11,6 +11,7 @@ info: | 2. Let len be ? ToLength(? Get(O, "length")). 3. If len is 0, return false. ... +features: [Array.prototype.includes] ---*/ var calls = 0; diff --git a/test/built-ins/Array/prototype/includes/length.js b/test/built-ins/Array/prototype/includes/length.js index 0abb6d35aef..259555a2ef5 100644 --- a/test/built-ins/Array/prototype/includes/length.js +++ b/test/built-ins/Array/prototype/includes/length.js @@ -20,6 +20,7 @@ info: | object has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] +features: [Array.prototype.includes] ---*/ assert.sameValue(Array.prototype.includes.length, 1); diff --git a/test/built-ins/Array/prototype/includes/name.js b/test/built-ins/Array/prototype/includes/name.js index 4391eb02f57..daf17197181 100644 --- a/test/built-ins/Array/prototype/includes/name.js +++ b/test/built-ins/Array/prototype/includes/name.js @@ -17,6 +17,7 @@ info: | object, if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] +features: [Array.prototype.includes] ---*/ assert.sameValue(Array.prototype.includes.name, "includes"); diff --git a/test/built-ins/Array/prototype/includes/no-arg.js b/test/built-ins/Array/prototype/includes/no-arg.js index 8c975a642fb..0480fddddd1 100644 --- a/test/built-ins/Array/prototype/includes/no-arg.js +++ b/test/built-ins/Array/prototype/includes/no-arg.js @@ -13,6 +13,7 @@ info: | b. If SameValueZero(searchElement, elementK) is true, return true. c. Increase k by 1. ... +features: [Array.prototype.includes] ---*/ assert.sameValue([0].includes(), false, "[0].includes()"); diff --git a/test/built-ins/Array/prototype/includes/not-a-constructor.js b/test/built-ins/Array/prototype/includes/not-a-constructor.js index d5052d19fb4..81aca092d0b 100644 --- a/test/built-ins/Array/prototype/includes/not-a-constructor.js +++ b/test/built-ins/Array/prototype/includes/not-a-constructor.js @@ -18,7 +18,7 @@ info: | 7. If IsConstructor(constructor) is false, throw a TypeError exception. ... includes: [isConstructor.js] -features: [Reflect.construct, arrow-function] +features: [Reflect.construct, arrow-function, Array.prototype.includes] ---*/ assert.sameValue( diff --git a/test/built-ins/Array/prototype/includes/prop-desc.js b/test/built-ins/Array/prototype/includes/prop-desc.js index b48a8955fe1..0d76e1cabad 100644 --- a/test/built-ins/Array/prototype/includes/prop-desc.js +++ b/test/built-ins/Array/prototype/includes/prop-desc.js @@ -9,6 +9,7 @@ info: | and in Annex B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true } unless otherwise specified. includes: [propertyHelper.js] +features: [Array.prototype.includes] ---*/ verifyNotEnumerable(Array.prototype, "includes"); diff --git a/test/built-ins/Array/prototype/includes/return-abrupt-get-length.js b/test/built-ins/Array/prototype/includes/return-abrupt-get-length.js index 19ea655e2c7..ef05100af9c 100644 --- a/test/built-ins/Array/prototype/includes/return-abrupt-get-length.js +++ b/test/built-ins/Array/prototype/includes/return-abrupt-get-length.js @@ -10,6 +10,7 @@ info: | ... 2. Let len be ? ToLength(? Get(O, "length")). ... +features: [Array.prototype.includes] ---*/ var obj = {}; diff --git a/test/built-ins/Array/prototype/includes/return-abrupt-get-prop.js b/test/built-ins/Array/prototype/includes/return-abrupt-get-prop.js index 7f8e2b99da7..87480f1c94c 100644 --- a/test/built-ins/Array/prototype/includes/return-abrupt-get-prop.js +++ b/test/built-ins/Array/prototype/includes/return-abrupt-get-prop.js @@ -11,6 +11,7 @@ info: | 7. Repeat, while k < len a. Let elementK be the result of ? Get(O, ! ToString(k)). ... +features: [Array.prototype.includes] ---*/ var stopped = 0; diff --git a/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex-symbol.js b/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex-symbol.js index 9321f8ade52..3e168d5391a 100644 --- a/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex-symbol.js +++ b/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex-symbol.js @@ -11,7 +11,7 @@ info: | 4. Let n be ? ToInteger(fromIndex). (If fromIndex is undefined, this step produces the value 0.) ... -features: [Symbol] +features: [Symbol, Array.prototype.includes] ---*/ var fromIndex = Symbol("1"); diff --git a/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex.js b/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex.js index 4ef4af35971..e79355f35e4 100644 --- a/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex.js +++ b/test/built-ins/Array/prototype/includes/return-abrupt-tointeger-fromindex.js @@ -11,6 +11,7 @@ info: | 4. Let n be ? ToInteger(fromIndex). (If fromIndex is undefined, this step produces the value 0.) ... +features: [Array.prototype.includes] ---*/ var fromIndex = { diff --git a/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length-symbol.js b/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length-symbol.js index 2c412574069..64c22ecc2a0 100644 --- a/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length-symbol.js +++ b/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length-symbol.js @@ -10,7 +10,7 @@ info: | ... 2. Let len be ? ToLength(? Get(O, "length")). ... -features: [Symbol] +features: [Symbol, Array.prototype.includes] ---*/ var obj = { diff --git a/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length.js b/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length.js index dcd2d50b352..f140713f6bb 100644 --- a/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length.js +++ b/test/built-ins/Array/prototype/includes/return-abrupt-tonumber-length.js @@ -10,6 +10,7 @@ info: | ... 2. Let len be ? ToLength(? Get(O, "length")). ... +features: [Array.prototype.includes] ---*/ var obj1 = { diff --git a/test/built-ins/Array/prototype/includes/samevaluezero.js b/test/built-ins/Array/prototype/includes/samevaluezero.js index 2481b651c0e..557da5b7b1b 100644 --- a/test/built-ins/Array/prototype/includes/samevaluezero.js +++ b/test/built-ins/Array/prototype/includes/samevaluezero.js @@ -13,6 +13,7 @@ info: | b. If SameValueZero(searchElement, elementK) is true, return true. c. Increase k by 1. ... +features: [Array.prototype.includes] ---*/ var sample = [42, 0, 1, NaN]; diff --git a/test/built-ins/Array/prototype/includes/search-found-returns-true.js b/test/built-ins/Array/prototype/includes/search-found-returns-true.js index e23e92c46fe..8239b9076b5 100644 --- a/test/built-ins/Array/prototype/includes/search-found-returns-true.js +++ b/test/built-ins/Array/prototype/includes/search-found-returns-true.js @@ -18,7 +18,7 @@ info: | b. If SameValueZero(searchElement, elementK) is true, return true. c. Increase k by 1. ... -features: [Symbol] +features: [Symbol, Array.prototype.includes] ---*/ var symbol = Symbol("1"); diff --git a/test/built-ins/Array/prototype/includes/search-not-found-returns-false.js b/test/built-ins/Array/prototype/includes/search-not-found-returns-false.js index 7d98d2a68bc..79c0ec0abe2 100644 --- a/test/built-ins/Array/prototype/includes/search-not-found-returns-false.js +++ b/test/built-ins/Array/prototype/includes/search-not-found-returns-false.js @@ -18,7 +18,7 @@ info: | b. If SameValueZero(searchElement, elementK) is true, return true. c. Increase k by 1. 8. Return false. -features: [Symbol] +features: [Symbol, Array.prototype.includes] ---*/ assert.sameValue([42].includes(43), false, "43"); diff --git a/test/built-ins/Array/prototype/includes/sparse.js b/test/built-ins/Array/prototype/includes/sparse.js index 751c2c928ed..e50d8bcf1c1 100644 --- a/test/built-ins/Array/prototype/includes/sparse.js +++ b/test/built-ins/Array/prototype/includes/sparse.js @@ -18,6 +18,7 @@ info: | b. If SameValueZero(searchElement, elementK) is true, return true. c. Increase k by 1. ... +features: [Array.prototype.includes] ---*/ assert.sameValue( diff --git a/test/built-ins/Array/prototype/includes/this-is-not-object.js b/test/built-ins/Array/prototype/includes/this-is-not-object.js index 895e17c964f..e073262d67d 100644 --- a/test/built-ins/Array/prototype/includes/this-is-not-object.js +++ b/test/built-ins/Array/prototype/includes/this-is-not-object.js @@ -9,6 +9,7 @@ info: | 1. Let O be ? ToObject(this value). ... +features: [Array.prototype.includes] ---*/ var includes = Array.prototype.includes; diff --git a/test/built-ins/Array/prototype/includes/tointeger-fromindex.js b/test/built-ins/Array/prototype/includes/tointeger-fromindex.js index d8d23229603..fb34d328078 100644 --- a/test/built-ins/Array/prototype/includes/tointeger-fromindex.js +++ b/test/built-ins/Array/prototype/includes/tointeger-fromindex.js @@ -18,6 +18,7 @@ info: | b. If SameValueZero(searchElement, elementK) is true, return true. c. Increase k by 1. 8. Return false. +features: [Array.prototype.includes] ---*/ var obj = { diff --git a/test/built-ins/Array/prototype/includes/tolength-length.js b/test/built-ins/Array/prototype/includes/tolength-length.js index c1e82b9da58..bbe9d4be51a 100644 --- a/test/built-ins/Array/prototype/includes/tolength-length.js +++ b/test/built-ins/Array/prototype/includes/tolength-length.js @@ -17,6 +17,7 @@ info: | 2. If len ≤ +0, return +0. 3. If len is +∞, return 253-1. 4. Return min(len, 253-1). +features: [Array.prototype.includes] ---*/ var obj = { diff --git a/test/built-ins/Array/prototype/includes/using-fromindex.js b/test/built-ins/Array/prototype/includes/using-fromindex.js index c6e3f1a6464..472ab2ccc89 100644 --- a/test/built-ins/Array/prototype/includes/using-fromindex.js +++ b/test/built-ins/Array/prototype/includes/using-fromindex.js @@ -18,6 +18,7 @@ info: | b. If SameValueZero(searchElement, elementK) is true, return true. c. Increase k by 1. ... +features: [Array.prototype.includes] ---*/ var sample = ["a", "b", "c"]; diff --git a/test/built-ins/Array/prototype/includes/values-are-not-cached.js b/test/built-ins/Array/prototype/includes/values-are-not-cached.js index a44f374f0ca..1f039ddb7d1 100644 --- a/test/built-ins/Array/prototype/includes/values-are-not-cached.js +++ b/test/built-ins/Array/prototype/includes/values-are-not-cached.js @@ -11,6 +11,7 @@ info: | 7. Repeat, while k < len a. Let elementK be the result of ? Get(O, ! ToString(k)). ... +features: [Array.prototype.includes] ---*/ function getCleanObj() { diff --git a/test/built-ins/Array/prototype/methods-called-as-functions.js b/test/built-ins/Array/prototype/methods-called-as-functions.js index 6d04e33905a..2b4e4c854a5 100644 --- a/test/built-ins/Array/prototype/methods-called-as-functions.js +++ b/test/built-ins/Array/prototype/methods-called-as-functions.js @@ -15,7 +15,7 @@ info: | Argument Type: Undefined Result: Throw a TypeError exception. -features: [Symbol, Symbol.isConcatSpreadable, Symbol.iterator, Symbol.species, Array.prototype.flat, Array.prototype.flatMap] +features: [Symbol, Symbol.isConcatSpreadable, Symbol.iterator, Symbol.species, Array.prototype.flat, Array.prototype.flatMap, Array.prototype.includes] ---*/ ["constructor", "length", "0", Symbol.isConcatSpreadable, Symbol.species].forEach(function(key) { diff --git a/test/built-ins/Array/prototype/pop/clamps-to-integer-limit.js b/test/built-ins/Array/prototype/pop/clamps-to-integer-limit.js index 0c5899a55eb..2fd7e4321a4 100644 --- a/test/built-ins/Array/prototype/pop/clamps-to-integer-limit.js +++ b/test/built-ins/Array/prototype/pop/clamps-to-integer-limit.js @@ -14,6 +14,7 @@ info: | ... e. Perform ? Set(O, "length", newLen, true). ... +features: [exponentiation] ---*/ var arrayLike = {}; diff --git a/test/built-ins/Array/prototype/pop/length-near-integer-limit.js b/test/built-ins/Array/prototype/pop/length-near-integer-limit.js index a480b9c6c87..9d0c7a7e48c 100644 --- a/test/built-ins/Array/prototype/pop/length-near-integer-limit.js +++ b/test/built-ins/Array/prototype/pop/length-near-integer-limit.js @@ -15,7 +15,8 @@ info: | c. Let element be ? Get(O, index). d. Perform ? DeletePropertyOrThrow(O, index). e. Perform ? Set(O, "length", newLen, true). - f. Return element. + f. Return element. +features: [exponentiation] ---*/ var arrayLike = { diff --git a/test/built-ins/Array/prototype/push/clamps-to-integer-limit.js b/test/built-ins/Array/prototype/push/clamps-to-integer-limit.js index 9cfc323fc30..6a29bf2aa9d 100644 --- a/test/built-ins/Array/prototype/push/clamps-to-integer-limit.js +++ b/test/built-ins/Array/prototype/push/clamps-to-integer-limit.js @@ -14,6 +14,7 @@ info: | ... 7. Perform ? Set(O, "length", len, true). ... +features: [exponentiation] ---*/ var arrayLike = {}; diff --git a/test/built-ins/Array/prototype/push/length-near-integer-limit.js b/test/built-ins/Array/prototype/push/length-near-integer-limit.js index 4c94e29873a..5b16f870665 100644 --- a/test/built-ins/Array/prototype/push/length-near-integer-limit.js +++ b/test/built-ins/Array/prototype/push/length-near-integer-limit.js @@ -15,6 +15,7 @@ info: | ... 7. Perform ? Set(O, "length", len, true). ... +features: [exponentiation] ---*/ var arrayLike = { diff --git a/test/built-ins/Array/prototype/push/throws-if-integer-limit-exceeded.js b/test/built-ins/Array/prototype/push/throws-if-integer-limit-exceeded.js index ae71cd417ae..76b64fcbe10 100644 --- a/test/built-ins/Array/prototype/push/throws-if-integer-limit-exceeded.js +++ b/test/built-ins/Array/prototype/push/throws-if-integer-limit-exceeded.js @@ -13,6 +13,7 @@ info: | 4. Let argCount be the number of elements in items. 5. If len + argCount > 2^53-1, throw a TypeError exception. ... +features: [exponentiation] ---*/ var arrayLike = {}; diff --git a/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-object.js b/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-object.js index dcfdb869b41..1351e92883f 100644 --- a/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-object.js +++ b/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-object.js @@ -9,6 +9,7 @@ info: | ... 2. Let len be ? ToLength(? Get(O, "length")). ... +features: [exponentiation] ---*/ function StopReverse() {} diff --git a/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-proxy.js b/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-proxy.js index f827f9f162c..e16b61fa57d 100644 --- a/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-proxy.js +++ b/test/built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-proxy.js @@ -6,6 +6,7 @@ esid: sec-array.prototype.reverse description: > Ensure correct MOP operations are called when length exceeds 2^53-1. includes: [compareArray.js, proxyTrapsHelper.js] +features: [exponentiation] ---*/ function StopReverse() {} diff --git a/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit-proxied-array.js b/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit-proxied-array.js index 79ca743e08e..ed771464b4b 100644 --- a/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit-proxied-array.js +++ b/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit-proxied-array.js @@ -17,6 +17,7 @@ info: | else let final be min(relativeEnd, len). ... includes: [compareArray.js] +features: [exponentiation] ---*/ var array = []; diff --git a/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit.js b/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit.js index 7adf639c7b0..619c0b95a75 100644 --- a/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit.js +++ b/test/built-ins/Array/prototype/slice/length-exceeding-integer-limit.js @@ -16,6 +16,7 @@ info: | else let final be min(relativeEnd, len). ... includes: [compareArray.js] +features: [exponentiation] ---*/ var arrayLike = { diff --git a/test/built-ins/Array/prototype/splice/clamps-length-to-integer-limit.js b/test/built-ins/Array/prototype/splice/clamps-length-to-integer-limit.js index 24584ba48a7..b72cc3e51e7 100644 --- a/test/built-ins/Array/prototype/splice/clamps-length-to-integer-limit.js +++ b/test/built-ins/Array/prototype/splice/clamps-length-to-integer-limit.js @@ -15,6 +15,7 @@ info: | ... 19. Perform ? Set(O, "length", len - actualDeleteCount + itemCount, true). ... +features: [exponentiation] ---*/ var arrayLike = {}; diff --git a/test/built-ins/Array/prototype/splice/create-species-length-exceeding-integer-limit.js b/test/built-ins/Array/prototype/splice/create-species-length-exceeding-integer-limit.js index 2efecc76b72..6b829ec646c 100644 --- a/test/built-ins/Array/prototype/splice/create-species-length-exceeding-integer-limit.js +++ b/test/built-ins/Array/prototype/splice/create-species-length-exceeding-integer-limit.js @@ -20,7 +20,7 @@ info: | 12. Perform ? Set(A, "length", actualDeleteCount, true). ... includes: [compareArray.js, proxyTrapsHelper.js] -features: [Symbol.species] +features: [Symbol.species, exponentiation] ---*/ function StopSplice() {} diff --git a/test/built-ins/Array/prototype/splice/length-and-deleteCount-exceeding-integer-limit.js b/test/built-ins/Array/prototype/splice/length-and-deleteCount-exceeding-integer-limit.js index 3c686712379..ebe9aea397d 100644 --- a/test/built-ins/Array/prototype/splice/length-and-deleteCount-exceeding-integer-limit.js +++ b/test/built-ins/Array/prototype/splice/length-and-deleteCount-exceeding-integer-limit.js @@ -23,6 +23,7 @@ info: | d. Increment k by 1. ... includes: [compareArray.js] +features: [exponentiation] ---*/ var arrayLike = { diff --git a/test/built-ins/Array/prototype/splice/length-exceeding-integer-limit-shrink-array.js b/test/built-ins/Array/prototype/splice/length-exceeding-integer-limit-shrink-array.js index 46a59a25f2a..436123d9609 100644 --- a/test/built-ins/Array/prototype/splice/length-exceeding-integer-limit-shrink-array.js +++ b/test/built-ins/Array/prototype/splice/length-exceeding-integer-limit-shrink-array.js @@ -25,6 +25,7 @@ info: | ii. Decrease k by 1. ... includes: [compareArray.js] +features: [exponentiation] ---*/ var arrayLike = { diff --git a/test/built-ins/Array/prototype/splice/length-near-integer-limit-grow-array.js b/test/built-ins/Array/prototype/splice/length-near-integer-limit-grow-array.js index a36b385a61b..ac3c0c975b6 100644 --- a/test/built-ins/Array/prototype/splice/length-near-integer-limit-grow-array.js +++ b/test/built-ins/Array/prototype/splice/length-near-integer-limit-grow-array.js @@ -21,6 +21,7 @@ info: | vi. Decrease k by 1. ... includes: [compareArray.js] +features: [exponentiation] ---*/ var arrayLike = { diff --git a/test/built-ins/Array/prototype/splice/throws-if-integer-limit-exceeded.js b/test/built-ins/Array/prototype/splice/throws-if-integer-limit-exceeded.js index 447eb4d0a5b..e2b1e921d54 100644 --- a/test/built-ins/Array/prototype/splice/throws-if-integer-limit-exceeded.js +++ b/test/built-ins/Array/prototype/splice/throws-if-integer-limit-exceeded.js @@ -15,6 +15,7 @@ info: | c. Let actualDeleteCount be min(max(dc, 0), len - actualStart). 8. If len+insertCount-actualDeleteCount > 2^53-1, throw a TypeError exception. ... +features: [exponentiation] ---*/ var arrayLike = {}; diff --git a/test/built-ins/Array/prototype/toReversed/length-exceeding-array-length-limit.js b/test/built-ins/Array/prototype/toReversed/length-exceeding-array-length-limit.js index e3a212a078f..3aa3bdb2802 100644 --- a/test/built-ins/Array/prototype/toReversed/length-exceeding-array-length-limit.js +++ b/test/built-ins/Array/prototype/toReversed/length-exceeding-array-length-limit.js @@ -16,7 +16,7 @@ info: | ArrayCreate ( length [, proto ] ) 1. If length > 2 ** 32 - 1, throw a RangeError exception. -features: [change-array-by-copy] +features: [change-array-by-copy, exponentiation] ---*/ // Object with large "length" property diff --git a/test/built-ins/Array/prototype/toSorted/length-exceeding-array-length-limit.js b/test/built-ins/Array/prototype/toSorted/length-exceeding-array-length-limit.js index 72ae5353a54..535ace463b9 100644 --- a/test/built-ins/Array/prototype/toSorted/length-exceeding-array-length-limit.js +++ b/test/built-ins/Array/prototype/toSorted/length-exceeding-array-length-limit.js @@ -17,7 +17,7 @@ info: | ArrayCreate ( length [, proto ] ) 1. If length > 2 ** 32 - 1, throw a RangeError exception. -features: [change-array-by-copy] +features: [change-array-by-copy, exponentiation] ---*/ // Object with large "length" property diff --git a/test/built-ins/Array/prototype/toSpliced/length-clamped-to-2pow53minus1.js b/test/built-ins/Array/prototype/toSpliced/length-clamped-to-2pow53minus1.js index 5938e729be1..a3bad9f9690 100644 --- a/test/built-ins/Array/prototype/toSpliced/length-clamped-to-2pow53minus1.js +++ b/test/built-ins/Array/prototype/toSpliced/length-clamped-to-2pow53minus1.js @@ -15,7 +15,7 @@ info: | 1. Let len be ? ToIntegerOrInfinity(argument). 2. If len ≤ 0, return +0𝔽. 3. Return 𝔽(min(len, 2^53 - 1)) -features: [change-array-by-copy] +features: [change-array-by-copy, exponentiation] includes: [compareArray.js] ---*/ diff --git a/test/built-ins/Array/prototype/toSpliced/length-exceeding-array-length-limit.js b/test/built-ins/Array/prototype/toSpliced/length-exceeding-array-length-limit.js index ddd2a4dce25..65b1bb122f2 100644 --- a/test/built-ins/Array/prototype/toSpliced/length-exceeding-array-length-limit.js +++ b/test/built-ins/Array/prototype/toSpliced/length-exceeding-array-length-limit.js @@ -19,7 +19,7 @@ info: | ArrayCreate ( length [, proto ] ) 1. If length > 2 ** 32 - 1, throw a RangeError exception. -features: [change-array-by-copy] +features: [change-array-by-copy, exponentiation] ---*/ // Object with large "length" property diff --git a/test/built-ins/Array/prototype/unshift/clamps-to-integer-limit.js b/test/built-ins/Array/prototype/unshift/clamps-to-integer-limit.js index 9f2e1418459..1c19a96eae6 100644 --- a/test/built-ins/Array/prototype/unshift/clamps-to-integer-limit.js +++ b/test/built-ins/Array/prototype/unshift/clamps-to-integer-limit.js @@ -11,6 +11,7 @@ info: | 3. Let argCount be the number of actual arguments. 4. If argCount > 0, then ... 5. Perform ? Set(O, "length", len+argCount, true). +features: [exponentiation] ---*/ var arrayLike = {}; diff --git a/test/built-ins/Array/prototype/unshift/length-near-integer-limit.js b/test/built-ins/Array/prototype/unshift/length-near-integer-limit.js index 5dff513e406..f4ff8320a08 100644 --- a/test/built-ins/Array/prototype/unshift/length-near-integer-limit.js +++ b/test/built-ins/Array/prototype/unshift/length-near-integer-limit.js @@ -21,6 +21,7 @@ info: | v. Else fromPresent is false, 1. Perform ? DeletePropertyOrThrow(O, to). vi. Decrease k by 1. +features: [exponentiation] ---*/ function StopUnshift() {} diff --git a/test/built-ins/Array/prototype/unshift/throws-if-integer-limit-exceeded.js b/test/built-ins/Array/prototype/unshift/throws-if-integer-limit-exceeded.js index 9ad723eca5b..14c2a6bc495 100644 --- a/test/built-ins/Array/prototype/unshift/throws-if-integer-limit-exceeded.js +++ b/test/built-ins/Array/prototype/unshift/throws-if-integer-limit-exceeded.js @@ -12,6 +12,7 @@ info: | 4. If argCount > 0, then a. If len+argCount > 2^53-1, throw a TypeError exception. b. ... +features: [exponentiation] ---*/ var arrayLike = {}; diff --git a/test/built-ins/Array/prototype/with/index-bigger-or-eq-than-length.js b/test/built-ins/Array/prototype/with/index-bigger-or-eq-than-length.js index 932f0861b6b..5b05d12b205 100644 --- a/test/built-ins/Array/prototype/with/index-bigger-or-eq-than-length.js +++ b/test/built-ins/Array/prototype/with/index-bigger-or-eq-than-length.js @@ -15,7 +15,7 @@ info: | 5. Else, let actualIndex be len + relativeIndex. 6. If actualIndex >= len or actualIndex < 0, throw a *RangeError* exception. ... -features: [change-array-by-copy] +features: [change-array-by-copy, exponentiation] ---*/ assert.throws(RangeError, function() { diff --git a/test/built-ins/Array/prototype/with/index-smaller-than-minus-length.js b/test/built-ins/Array/prototype/with/index-smaller-than-minus-length.js index 644718f66b1..a24a36fa0e3 100644 --- a/test/built-ins/Array/prototype/with/index-smaller-than-minus-length.js +++ b/test/built-ins/Array/prototype/with/index-smaller-than-minus-length.js @@ -15,7 +15,7 @@ info: | 5. Else, let actualIndex be len + relativeIndex. 6. If actualIndex >= len or actualIndex < 0, throw a *RangeError* exception. ... -features: [change-array-by-copy] +features: [change-array-by-copy, exponentiation] ---*/ [0, 1, 2].with(-3, 7); diff --git a/test/built-ins/Array/prototype/with/length-exceeding-array-length-limit.js b/test/built-ins/Array/prototype/with/length-exceeding-array-length-limit.js index f6f2d7de493..8e348cdd359 100644 --- a/test/built-ins/Array/prototype/with/length-exceeding-array-length-limit.js +++ b/test/built-ins/Array/prototype/with/length-exceeding-array-length-limit.js @@ -17,7 +17,7 @@ info: | ArrayCreate ( length [, proto ] ) 1. If length > 2 ** 32 - 1, throw a RangeError exception. -features: [change-array-by-copy] +features: [change-array-by-copy, exponentiation] ---*/ // Object with large "length" property diff --git a/test/built-ins/Atomics/isLockFree/expected-return-value.js b/test/built-ins/Atomics/isLockFree/expected-return-value.js index 969782d793c..fa380fc666f 100644 --- a/test/built-ins/Atomics/isLockFree/expected-return-value.js +++ b/test/built-ins/Atomics/isLockFree/expected-return-value.js @@ -12,7 +12,7 @@ description: > If n equals 4, return true. If n equals 8, return AR.[[IsLockFree8]]. Return false. -features: [Atomics] +features: [Atomics, Array.prototype.includes] ---*/ // These are the only counts that we care about tracking. diff --git a/test/built-ins/Function/prototype/toString/built-in-function-object.js b/test/built-ins/Function/prototype/toString/built-in-function-object.js index c7310c5c375..a64302c1d6d 100644 --- a/test/built-ins/Function/prototype/toString/built-in-function-object.js +++ b/test/built-ins/Function/prototype/toString/built-in-function-object.js @@ -17,7 +17,7 @@ info: | set includes: [nativeFunctionMatcher.js, wellKnownIntrinsicObjects.js] -features: [arrow-function, Reflect] +features: [arrow-function, Reflect, Array.prototype.includes] ---*/ const visited = []; diff --git a/test/built-ins/Map/valid-keys.js b/test/built-ins/Map/valid-keys.js index 3d417b67140..29908ffa925 100644 --- a/test/built-ins/Map/valid-keys.js +++ b/test/built-ins/Map/valid-keys.js @@ -11,7 +11,7 @@ info: | Append p as the last element of entries. ... -features: [BigInt, Symbol, TypedArray, WeakRef] +features: [BigInt, Symbol, TypedArray, WeakRef, exponentiation] ---*/ diff --git a/test/built-ins/Number/bigint-conversion.js b/test/built-ins/Number/bigint-conversion.js index 0397fb0266c..c4dd8513c2d 100644 --- a/test/built-ins/Number/bigint-conversion.js +++ b/test/built-ins/Number/bigint-conversion.js @@ -4,7 +4,7 @@ /*--- description: BigInt to Number conversion esid: pending -features: [BigInt] +features: [BigInt, exponentiation] ---*/ assert.sameValue(Number(0n), 0); diff --git a/test/built-ins/Proxy/has/trap-is-null-target-is-proxy.js b/test/built-ins/Proxy/has/trap-is-null-target-is-proxy.js index cce9fb9d5f5..a87eee65b1e 100644 --- a/test/built-ins/Proxy/has/trap-is-null-target-is-proxy.js +++ b/test/built-ins/Proxy/has/trap-is-null-target-is-proxy.js @@ -14,7 +14,7 @@ info: | 6. Let trap be ? GetMethod(handler, "has"). 7. If trap is undefined, then a. Return ? target.[[HasProperty]](P). -features: [Proxy, Symbol, Reflect] +features: [Proxy, Symbol, Reflect, Array.prototype.includes] ---*/ var stringTarget = new Proxy(new String("str"), {}); diff --git a/test/built-ins/RegExp/prototype/exec/failure-lastindex-set.js b/test/built-ins/RegExp/prototype/exec/failure-lastindex-set.js index 41f08e330b7..b543c81207f 100644 --- a/test/built-ins/RegExp/prototype/exec/failure-lastindex-set.js +++ b/test/built-ins/RegExp/prototype/exec/failure-lastindex-set.js @@ -23,6 +23,7 @@ info: | i. If _global_ is *true* or _sticky_ is *true*, then 1. Perform ? Set(_R_, *"lastIndex"*, *+0*𝔽, *true*). ii. Return *null*. +features: [exponentiation] ---*/ var R_g = /./g, R_y = /./y, R_gy = /./gy; diff --git a/test/built-ins/Set/valid-values.js b/test/built-ins/Set/valid-values.js index 2f7e6a33c69..9f93ba0ad52 100644 --- a/test/built-ins/Set/valid-values.js +++ b/test/built-ins/Set/valid-values.js @@ -14,7 +14,7 @@ info: | Append value as the last element of entries. ... -features: [BigInt, Symbol, TypedArray, WeakRef] +features: [BigInt, Symbol, TypedArray, WeakRef, exponentiation] ---*/ diff --git a/test/built-ins/ShadowRealm/prototype/evaluate/globalthis-config-only-properties.js b/test/built-ins/ShadowRealm/prototype/evaluate/globalthis-config-only-properties.js index 6b6857f6c1a..d630ddb43f6 100644 --- a/test/built-ins/ShadowRealm/prototype/evaluate/globalthis-config-only-properties.js +++ b/test/built-ins/ShadowRealm/prototype/evaluate/globalthis-config-only-properties.js @@ -25,7 +25,7 @@ info: | The host may use this hook to add properties to the ShadowRealm's global object. Those properties must be configurable. -features: [ShadowRealm] +features: [ShadowRealm, Array.prototype.includes] ---*/ assert.sameValue( diff --git a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/fixed-offset-near-date-time-limits.js b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/fixed-offset-near-date-time-limits.js index 27d97938da4..8aa1af72920 100644 --- a/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/fixed-offset-near-date-time-limits.js +++ b/test/built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/fixed-offset-near-date-time-limits.js @@ -5,7 +5,7 @@ esid: sec-temporal.timezone.prototype.getpossibleinstantsfor description: > Call getPossibleInstantsFor with values near the date/time limit and a fixed offset. -features: [Temporal] +features: [Temporal, exponentiation] ---*/ const oneHour = 1n * 60n * 60n * 1000n**3n; diff --git a/test/intl402/DateTimeFormat/casing-numbering-system-calendar-options.js b/test/intl402/DateTimeFormat/casing-numbering-system-calendar-options.js index 0753f79e0fb..bab8f45461c 100644 --- a/test/intl402/DateTimeFormat/casing-numbering-system-calendar-options.js +++ b/test/intl402/DateTimeFormat/casing-numbering-system-calendar-options.js @@ -7,6 +7,7 @@ description: > Tests that the options numberingSystem and calendar are mapped to lower case properly. author: Caio Lima +features: [Array.prototype.includes] ---*/ let defaultLocale = new Intl.DateTimeFormat().resolvedOptions().locale; diff --git a/test/intl402/DateTimeFormat/prototype/format/related-year-zh.js b/test/intl402/DateTimeFormat/prototype/format/related-year-zh.js index fd86e5092c3..c4b309b338c 100644 --- a/test/intl402/DateTimeFormat/prototype/format/related-year-zh.js +++ b/test/intl402/DateTimeFormat/prototype/format/related-year-zh.js @@ -8,6 +8,7 @@ description: > Checks the output of 'relatedYear' and 'yearName' type, and the choice of pattern based on calendar. locale: [zh-u-ca-chinese] +features: [Array.prototype.includes] ---*/ const df = new Intl.DateTimeFormat("zh-u-ca-chinese", {year: "numeric"}); diff --git a/test/intl402/DateTimeFormat/prototype/format/timedatestyle-en.js b/test/intl402/DateTimeFormat/prototype/format/timedatestyle-en.js index 282e39e1b21..5bdf1cd3d44 100644 --- a/test/intl402/DateTimeFormat/prototype/format/timedatestyle-en.js +++ b/test/intl402/DateTimeFormat/prototype/format/timedatestyle-en.js @@ -4,7 +4,7 @@ /*--- esid: sec-date-time-style-pattern description: Checks basic handling of timeStyle and dateStyle. -features: [Intl.DateTimeFormat-datetimestyle] +features: [Intl.DateTimeFormat-datetimestyle, Array.prototype.includes] locale: [en-US] ---*/ diff --git a/test/intl402/DateTimeFormat/prototype/formatToParts/main.js b/test/intl402/DateTimeFormat/prototype/formatToParts/main.js index b89711dac66..55330dc6e5a 100644 --- a/test/intl402/DateTimeFormat/prototype/formatToParts/main.js +++ b/test/intl402/DateTimeFormat/prototype/formatToParts/main.js @@ -3,6 +3,7 @@ /*--- description: Tests for existance and behavior of Intl.DateTimeFormat.prototype.formatToParts +features: [Array.prototype.includes] ---*/ function reduce(parts) { diff --git a/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-timeStyle.js b/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-timeStyle.js index 13795dae458..9c7ebc1171e 100644 --- a/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-timeStyle.js +++ b/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-timeStyle.js @@ -7,7 +7,7 @@ description: > Intl.DateTimeFormat.prototype.resolvedOptions properly reflect hourCycle settings when using timeStyle. includes: [propertyHelper.js] -features: [Intl.DateTimeFormat-datetimestyle] +features: [Intl.DateTimeFormat-datetimestyle, Array.prototype.includes] ---*/ const hcValues = ["h11", "h12", "h23", "h24"]; diff --git a/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle.js b/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle.js index 855edc6655b..4b3b4dc6ca4 100644 --- a/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle.js +++ b/test/intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle.js @@ -10,6 +10,7 @@ info: | 12.4.5 Intl.DateTimeFormat.prototype.resolvedOptions() includes: [propertyHelper.js] +features: [Array.prototype.includes] ---*/ /* Values passed via unicode extension key work */ diff --git a/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DateTimeFormat.js b/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DateTimeFormat.js index 901c6d4e64b..602168dbc3e 100644 --- a/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DateTimeFormat.js +++ b/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DateTimeFormat.js @@ -22,7 +22,7 @@ info: | Intl.DateTimeFormat objects. The list must include "gregory". includes: [testIntl.js] locale: [en] -features: [Intl-enumeration] +features: [Intl-enumeration, Array.prototype.includes] ---*/ const calendars = Intl.supportedValuesOf("calendar"); diff --git a/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DisplayNames.js b/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DisplayNames.js index 29e5ec5b242..06c17d37e25 100644 --- a/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DisplayNames.js +++ b/test/intl402/Intl/supportedValuesOf/calendars-accepted-by-DisplayNames.js @@ -22,7 +22,7 @@ info: | Intl.DateTimeFormat objects. The list must include "gregory". includes: [testIntl.js] locale: [en] -features: [Intl-enumeration, Intl.DisplayNames-v2] +features: [Intl-enumeration, Intl.DisplayNames-v2, Array.prototype.includes] ---*/ const calendars = Intl.supportedValuesOf("calendar"); diff --git a/test/intl402/Intl/supportedValuesOf/calendars.js b/test/intl402/Intl/supportedValuesOf/calendars.js index dadfc7213c6..8baef6d0fae 100644 --- a/test/intl402/Intl/supportedValuesOf/calendars.js +++ b/test/intl402/Intl/supportedValuesOf/calendars.js @@ -21,7 +21,7 @@ info: | calendars for which the implementation provides the functionality of Intl.DateTimeFormat objects. The list must include "gregory". includes: [compareArray.js] -features: [Intl-enumeration, Intl.Locale] +features: [Intl-enumeration, Intl.Locale, Array.prototype.includes] ---*/ const calendars = Intl.supportedValuesOf("calendar"); diff --git a/test/intl402/Intl/supportedValuesOf/collations-accepted-by-Collator.js b/test/intl402/Intl/supportedValuesOf/collations-accepted-by-Collator.js index d4c814906b6..af8c7a93446 100644 --- a/test/intl402/Intl/supportedValuesOf/collations-accepted-by-Collator.js +++ b/test/intl402/Intl/supportedValuesOf/collations-accepted-by-Collator.js @@ -23,7 +23,7 @@ info: | Intl.Collator objects. includes: [testIntl.js] locale: [en, ar, de, es, ko, ln, si, sv, zh] -features: [Intl-enumeration] +features: [Intl-enumeration, Array.prototype.includes] ---*/ const collations = Intl.supportedValuesOf("collation"); diff --git a/test/intl402/Intl/supportedValuesOf/collations.js b/test/intl402/Intl/supportedValuesOf/collations.js index d8ccffba691..dc923b86a89 100644 --- a/test/intl402/Intl/supportedValuesOf/collations.js +++ b/test/intl402/Intl/supportedValuesOf/collations.js @@ -22,7 +22,7 @@ info: | collations for which the implementation provides the functionality of Intl.Collator objects. includes: [compareArray.js] -features: [Intl-enumeration, Intl.Locale] +features: [Intl-enumeration, Intl.Locale, Array.prototype.includes] ---*/ const collations = Intl.supportedValuesOf("collation"); diff --git a/test/intl402/Intl/supportedValuesOf/currencies-accepted-by-DisplayNames.js b/test/intl402/Intl/supportedValuesOf/currencies-accepted-by-DisplayNames.js index 41545f5a999..b9930605d68 100644 --- a/test/intl402/Intl/supportedValuesOf/currencies-accepted-by-DisplayNames.js +++ b/test/intl402/Intl/supportedValuesOf/currencies-accepted-by-DisplayNames.js @@ -23,7 +23,7 @@ info: | for which the implementation provides the functionality of Intl.DisplayNames and Intl.NumberFormat objects. locale: [en] -features: [Intl-enumeration, Intl.DisplayNames] +features: [Intl-enumeration, Intl.DisplayNames, Array.prototype.includes] ---*/ const currencies = Intl.supportedValuesOf("currency"); diff --git a/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-DateTimeFormat.js b/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-DateTimeFormat.js index 32cdcb5da89..d4f70cb4ca2 100644 --- a/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-DateTimeFormat.js +++ b/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-DateTimeFormat.js @@ -25,7 +25,7 @@ info: | value of every row of Table 4, except the header row. includes: [testIntl.js] locale: [en] -features: [Intl-enumeration] +features: [Intl-enumeration, Array.prototype.includes] ---*/ const numberingSystems = Intl.supportedValuesOf("numberingSystem"); diff --git a/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-NumberFormat.js b/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-NumberFormat.js index 99b36942f50..67ee2ef9813 100644 --- a/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-NumberFormat.js +++ b/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-NumberFormat.js @@ -25,7 +25,7 @@ info: | value of every row of Table 4, except the header row. includes: [testIntl.js] locale: [en] -features: [Intl-enumeration] +features: [Intl-enumeration, Array.prototype.includes] ---*/ const numberingSystems = Intl.supportedValuesOf("numberingSystem"); diff --git a/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-RelativeTimeFormat.js b/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-RelativeTimeFormat.js index ec82f8b6b8d..5f0a5c1cde6 100644 --- a/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-RelativeTimeFormat.js +++ b/test/intl402/Intl/supportedValuesOf/numberingSystems-accepted-by-RelativeTimeFormat.js @@ -25,7 +25,7 @@ info: | value of every row of Table 4, except the header row. includes: [testIntl.js] locale: [en] -features: [Intl-enumeration, Intl.RelativeTimeFormat] +features: [Intl-enumeration, Intl.RelativeTimeFormat, Array.prototype.includes] ---*/ const numberingSystems = Intl.supportedValuesOf("numberingSystem"); diff --git a/test/intl402/Intl/supportedValuesOf/numberingSystems-with-simple-digit-mappings.js b/test/intl402/Intl/supportedValuesOf/numberingSystems-with-simple-digit-mappings.js index 62211a960c8..320f0f195de 100644 --- a/test/intl402/Intl/supportedValuesOf/numberingSystems-with-simple-digit-mappings.js +++ b/test/intl402/Intl/supportedValuesOf/numberingSystems-with-simple-digit-mappings.js @@ -24,7 +24,7 @@ info: | Intl.RelativeTimeFormat objects. The list must include the Numbering System value of every row of Table 4, except the header row. includes: [testIntl.js] -features: [Intl-enumeration] +features: [Intl-enumeration, Array.prototype.includes] ---*/ const numberingSystems = Intl.supportedValuesOf("numberingSystem"); diff --git a/test/intl402/Intl/supportedValuesOf/units-accepted-by-NumberFormat.js b/test/intl402/Intl/supportedValuesOf/units-accepted-by-NumberFormat.js index fa47e88c700..110972c79ad 100644 --- a/test/intl402/Intl/supportedValuesOf/units-accepted-by-NumberFormat.js +++ b/test/intl402/Intl/supportedValuesOf/units-accepted-by-NumberFormat.js @@ -22,7 +22,7 @@ info: | identifiers listed in every row of Table 1, except the header row. includes: [testIntl.js] locale: [en] -features: [Intl-enumeration] +features: [Intl-enumeration, Array.prototype.includes] ---*/ const units = Intl.supportedValuesOf("unit"); diff --git a/test/intl402/Intl/supportedValuesOf/units.js b/test/intl402/Intl/supportedValuesOf/units.js index d05e648f840..b3c37dcffe6 100644 --- a/test/intl402/Intl/supportedValuesOf/units.js +++ b/test/intl402/Intl/supportedValuesOf/units.js @@ -21,7 +21,7 @@ info: | undefined as comparefn, that contains the unique values of simple unit identifiers listed in every row of Table 1, except the header row. includes: [compareArray.js, testIntl.js] -features: [Intl-enumeration] +features: [Intl-enumeration, Array.prototype.includes] ---*/ const units = Intl.supportedValuesOf("unit"); diff --git a/test/intl402/Locale/prototype/collations/output-array-values.js b/test/intl402/Locale/prototype/collations/output-array-values.js index 04dce3ea5c5..7f1656d528d 100644 --- a/test/intl402/Locale/prototype/collations/output-array-values.js +++ b/test/intl402/Locale/prototype/collations/output-array-values.js @@ -14,7 +14,7 @@ info: | Unicode Locale Identifier, section 3.2, sorted in descending preference of those in common use for string comparison in locale. The values "standard" and "search" must be excluded from list. -features: [Intl.Locale,Intl.Locale-info] +features: [Intl.Locale, Intl.Locale-info, Array.prototype.includes] ---*/ const output = new Intl.Locale('en').collations; diff --git a/test/intl402/Locale/prototype/hourCycles/output-array-values.js b/test/intl402/Locale/prototype/hourCycles/output-array-values.js index 37cfe713eca..3d7976a964c 100644 --- a/test/intl402/Locale/prototype/hourCycles/output-array-values.js +++ b/test/intl402/Locale/prototype/hourCycles/output-array-values.js @@ -13,7 +13,7 @@ info: | be lower case String values indicating either the 12-hour format ("h11", "h12") or the 24-hour format ("h23", "h24"), sorted in descending preference of those in common use for date and time formatting in locale. -features: [Intl.Locale,Intl.Locale-info] +features: [Intl.Locale, Intl.Locale-info, Array.prototype.includes] ---*/ const output = new Intl.Locale('en').hourCycles; diff --git a/test/intl402/NumberFormat/casing-numbering-system-options.js b/test/intl402/NumberFormat/casing-numbering-system-options.js index 8e927a9c3a8..79d780e8565 100644 --- a/test/intl402/NumberFormat/casing-numbering-system-options.js +++ b/test/intl402/NumberFormat/casing-numbering-system-options.js @@ -6,6 +6,7 @@ esid: sec-initializenumberformat description: > Tests that the options numberingSystem are mapped to lower case. author: Caio Lima +features: [Array.prototype.includes] ---*/ let defaultLocale = new Intl.NumberFormat().resolvedOptions().locale; diff --git a/test/intl402/PluralRules/prototype/resolvedOptions/pluralCategories.js b/test/intl402/PluralRules/prototype/resolvedOptions/pluralCategories.js index 9481dc97877..173dde9f7d6 100644 --- a/test/intl402/PluralRules/prototype/resolvedOptions/pluralCategories.js +++ b/test/intl402/PluralRules/prototype/resolvedOptions/pluralCategories.js @@ -7,6 +7,7 @@ description: > Tests that Intl.PluralRules.prototype.resolvedOptions creates a new array for the pluralCategories property on every call. includes: [propertyHelper.js, compareArray.js] +features: [Array.prototype.includes] ---*/ const allowedValues = ["zero", "one", "two", "few", "many", "other"]; diff --git a/test/intl402/Segmenter/constructor/constructor/locales-valid.js b/test/intl402/Segmenter/constructor/constructor/locales-valid.js index 2361c6e37fa..5aa4324b605 100644 --- a/test/intl402/Segmenter/constructor/constructor/locales-valid.js +++ b/test/intl402/Segmenter/constructor/constructor/locales-valid.js @@ -8,7 +8,7 @@ info: | Intl.Segmenter ([ locales [ , options ]]) 3. Let _requestedLocales_ be ? CanonicalizeLocaleList(_locales_). -features: [Intl.Segmenter] +features: [Intl.Segmenter, Array.prototype.includes] ---*/ const defaultLocale = new Intl.Segmenter().resolvedOptions().locale; diff --git a/test/intl402/Temporal/TimeZone/prototype/getOffsetNanosecondsFor/nanoseconds-subtracted-or-added-at-dst-transition.js b/test/intl402/Temporal/TimeZone/prototype/getOffsetNanosecondsFor/nanoseconds-subtracted-or-added-at-dst-transition.js index 422b170d3ef..268924e79e2 100644 --- a/test/intl402/Temporal/TimeZone/prototype/getOffsetNanosecondsFor/nanoseconds-subtracted-or-added-at-dst-transition.js +++ b/test/intl402/Temporal/TimeZone/prototype/getOffsetNanosecondsFor/nanoseconds-subtracted-or-added-at-dst-transition.js @@ -5,7 +5,7 @@ esid: sec-temporal.timezone.prototype.getoffsetnanosecondsfor description: > Test offset when nanoseconds are subtracted or added from DST transition. -features: [Temporal] +features: [Temporal, exponentiation] ---*/ // From : diff --git a/test/intl402/fallback-locales-are-supported.js b/test/intl402/fallback-locales-are-supported.js index da91780b80b..5d289461a15 100644 --- a/test/intl402/fallback-locales-are-supported.js +++ b/test/intl402/fallback-locales-are-supported.js @@ -8,6 +8,7 @@ description: > supported locales. author: Norbert Lindenberg includes: [testIntl.js] +features: [Array.prototype.includes] ---*/ testWithIntlConstructors(function (Constructor) { diff --git a/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-0.js b/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-0.js index 2b534ff56b1..4bf6b37018f 100644 --- a/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-0.js +++ b/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-0.js @@ -3,6 +3,7 @@ // - src/assignment-target-type/invalid/direct.template /*--- description: Static Semantics AssignmentTargetType, Return invalid. (Direct assignment) +features: [exponentiation] flags: [generated] negative: phase: parse diff --git a/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-1.js b/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-1.js index 0f1b0caadc7..2f4eb8e7584 100644 --- a/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-1.js +++ b/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-1.js @@ -3,6 +3,7 @@ // - src/assignment-target-type/invalid/direct.template /*--- description: Static Semantics AssignmentTargetType, Return invalid. (Direct assignment) +features: [exponentiation] flags: [generated] negative: phase: parse diff --git a/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-2.js b/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-2.js index 9be01baaaf2..bf20a283508 100644 --- a/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-2.js +++ b/test/language/expressions/assignmenttargettype/direct-updateexpression-star-star-exponentiationexpression-2.js @@ -3,6 +3,7 @@ // - src/assignment-target-type/invalid/direct.template /*--- description: Static Semantics AssignmentTargetType, Return invalid. (Direct assignment) +features: [exponentiation] flags: [generated] negative: phase: parse diff --git a/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-0.js b/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-0.js index dfa2d5ca639..9bdf63166cf 100644 --- a/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-0.js +++ b/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-0.js @@ -4,6 +4,7 @@ /*--- description: Static Semantics AssignmentTargetType, Return invalid. (ParenthesizedExpression) esid: sec-grouping-operator-static-semantics-assignmenttargettype +features: [exponentiation] flags: [generated] negative: phase: parse diff --git a/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-1.js b/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-1.js index b6b530e85fb..fc9fb628cbf 100644 --- a/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-1.js +++ b/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-1.js @@ -4,6 +4,7 @@ /*--- description: Static Semantics AssignmentTargetType, Return invalid. (ParenthesizedExpression) esid: sec-grouping-operator-static-semantics-assignmenttargettype +features: [exponentiation] flags: [generated] negative: phase: parse diff --git a/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-2.js b/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-2.js index aa648bb582e..937a37b5a28 100644 --- a/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-2.js +++ b/test/language/expressions/assignmenttargettype/parenthesized-updateexpression-star-star-exponentiationexpression-2.js @@ -4,6 +4,7 @@ /*--- description: Static Semantics AssignmentTargetType, Return invalid. (ParenthesizedExpression) esid: sec-grouping-operator-static-semantics-assignmenttargettype +features: [exponentiation] flags: [generated] negative: phase: parse diff --git a/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-exponetiation-expression.js b/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-exponetiation-expression.js index f76f2608986..a227e222444 100644 --- a/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-exponetiation-expression.js +++ b/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-math.js b/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-math.js index 8257361e39f..2caf8f9ace6 100644 --- a/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-math.js +++ b/test/language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/class/cpn-class-expr-computed-property-name-from-exponetiation-expression.js b/test/language/expressions/class/cpn-class-expr-computed-property-name-from-exponetiation-expression.js index f1dab7637c8..d4bf478540a 100644 --- a/test/language/expressions/class/cpn-class-expr-computed-property-name-from-exponetiation-expression.js +++ b/test/language/expressions/class/cpn-class-expr-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/class/cpn-class-expr-computed-property-name-from-math.js b/test/language/expressions/class/cpn-class-expr-computed-property-name-from-math.js index f9387725828..bbeac1afaa3 100644 --- a/test/language/expressions/class/cpn-class-expr-computed-property-name-from-math.js +++ b/test/language/expressions/class/cpn-class-expr-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-exponetiation-expression.js b/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-exponetiation-expression.js index db184fef6ea..e88a5e62252 100644 --- a/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-exponetiation-expression.js +++ b/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-math.js b/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-math.js index 24bb837b850..afa864183ac 100644 --- a/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-math.js +++ b/test/language/expressions/class/cpn-class-expr-fields-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-exponetiation-expression.js b/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-exponetiation-expression.js index ef13282ffd3..0ca711152ed 100644 --- a/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-exponetiation-expression.js +++ b/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-math.js b/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-math.js index 1f2e2171b31..8b9b82d18c9 100644 --- a/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-math.js +++ b/test/language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-exp.js b/test/language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-exp.js index 96481395964..b27ea18c0fe 100644 --- a/test/language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-exp.js +++ b/test/language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-exp.js @@ -4,7 +4,7 @@ /*--- description: Compound exponentiation assignment with target being a private reference (to an accessor property with getter and setter) esid: sec-assignment-operators-runtime-semantics-evaluation -features: [class-fields-private] +features: [exponentiation, class-fields-private] flags: [generated] info: | sec-assignment-operators-runtime-semantics-evaluation diff --git a/test/language/expressions/compound-assignment/left-hand-side-private-reference-data-property-exp.js b/test/language/expressions/compound-assignment/left-hand-side-private-reference-data-property-exp.js index e62385acfb1..85bf0f2a7ee 100644 --- a/test/language/expressions/compound-assignment/left-hand-side-private-reference-data-property-exp.js +++ b/test/language/expressions/compound-assignment/left-hand-side-private-reference-data-property-exp.js @@ -4,7 +4,7 @@ /*--- description: Compound exponentiation assignment with target being a private reference (to a field) esid: sec-assignment-operators-runtime-semantics-evaluation -features: [class-fields-private] +features: [exponentiation, class-fields-private] flags: [generated] info: | sec-assignment-operators-runtime-semantics-evaluation diff --git a/test/language/expressions/compound-assignment/left-hand-side-private-reference-method-exp.js b/test/language/expressions/compound-assignment/left-hand-side-private-reference-method-exp.js index 25036c1d862..5d6ade31df2 100644 --- a/test/language/expressions/compound-assignment/left-hand-side-private-reference-method-exp.js +++ b/test/language/expressions/compound-assignment/left-hand-side-private-reference-method-exp.js @@ -4,7 +4,7 @@ /*--- description: Compound exponentiation assignment with target being a private reference (to a private method) esid: sec-assignment-operators-runtime-semantics-evaluation -features: [class-fields-private] +features: [exponentiation, class-fields-private] flags: [generated] info: | sec-assignment-operators-runtime-semantics-evaluation diff --git a/test/language/expressions/compound-assignment/left-hand-side-private-reference-readonly-accessor-property-exp.js b/test/language/expressions/compound-assignment/left-hand-side-private-reference-readonly-accessor-property-exp.js index b0e17bb8e73..72a5f8fbfdb 100644 --- a/test/language/expressions/compound-assignment/left-hand-side-private-reference-readonly-accessor-property-exp.js +++ b/test/language/expressions/compound-assignment/left-hand-side-private-reference-readonly-accessor-property-exp.js @@ -4,7 +4,7 @@ /*--- description: Compound exponentiation assignment with target being a private reference (to an accessor property with getter) esid: sec-assignment-operators-runtime-semantics-evaluation -features: [class-fields-private] +features: [exponentiation, class-fields-private] flags: [generated] info: | sec-assignment-operators-runtime-semantics-evaluation diff --git a/test/language/expressions/dynamic-import/syntax/invalid/invalid-assignmenttargettype-syntax-error-17-lhs-assignment-operator-assignment-expression.js b/test/language/expressions/dynamic-import/syntax/invalid/invalid-assignmenttargettype-syntax-error-17-lhs-assignment-operator-assignment-expression.js index d27455ea3f9..2ddc94f6f66 100644 --- a/test/language/expressions/dynamic-import/syntax/invalid/invalid-assignmenttargettype-syntax-error-17-lhs-assignment-operator-assignment-expression.js +++ b/test/language/expressions/dynamic-import/syntax/invalid/invalid-assignmenttargettype-syntax-error-17-lhs-assignment-operator-assignment-expression.js @@ -40,7 +40,7 @@ info: | negative: phase: parse type: SyntaxError -features: [dynamic-import] +features: [dynamic-import, exponentiation] ---*/ $DONOTEVALUATE(); diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A1.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A1.js index 02e2049cdff..5f1ea2008c6 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A1.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A1.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If exponent is NaN, the result is NaN. +features: [exponentiation] ---*/ var exponent = NaN; diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A11.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A11.js index feffb65d98f..293f985d41c 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A11.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A11.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is +∞ and exponent > 0, the result is +∞. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A12.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A12.js index d9f3084b57e..c3617f1d143 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A12.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A12.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is +∞ and exponent < 0, the result is +0. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A13.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A13.js index 4d955e55b45..2ae3ad3d054 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A13.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A13.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −∞ and exponent > 0 and exponent is an odd integer, the result is −∞. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A14.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A14.js index 8637ecca269..77b016d9662 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A14.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A14.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −∞ and exponent > 0 and exponent is not an odd integer, the result is +∞. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A15.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A15.js index e4ec599d6b2..7260e078e03 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A15.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A15.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −∞ and exponent < 0 and exponent is an odd integer, the result is −0. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A16.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A16.js index ecfc9e21a44..29fb080f9aa 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A16.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A16.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −∞ and exponent < 0 and exponent is not an odd integer, the result is +0. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A17.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A17.js index 5764dacd1ae..d04058da216 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A17.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A17.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is +0 and exponent > 0, the result is +0. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A18.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A18.js index f3ae5c7f270..0d48cf32824 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A18.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A18.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is +0 and exponent < 0, the result is +∞. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A19.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A19.js index d56b8a0daa7..7c9934c87d7 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A19.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A19.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −0 and exponent > 0 and exponent is an odd integer, the result is −0. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A2.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A2.js index 5eaf70151ad..1c94a7fa514 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A2.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A2.js @@ -5,6 +5,7 @@ esid: sec-applying-the-exp-operator description: > If exponent is +0, the result is 1, even if base is NaN. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A20.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A20.js index 93ae818e2b6..518ac4a9757 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A20.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A20.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −0 and exponent > 0 and exponent is not an odd integer, the result is +0. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A21.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A21.js index 361295d3c7a..b236eb201c0 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A21.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A21.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −0 and exponent < 0 and exponent is an odd integer, the result is −∞. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A22.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A22.js index 17786cebac4..c1bc09b81ee 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A22.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A22.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is −0 and exponent < 0 and exponent is not an odd integer, the result is +∞. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A23.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A23.js index c2010f3ee3d..836fddb66b0 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A23.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A23.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base < 0 and base is finite and exponent is finite and exponent is not an integer, the result is NaN. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A3.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A3.js index 629df3221b5..24dc972c1ef 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A3.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A3.js @@ -5,6 +5,7 @@ esid: sec-applying-the-exp-operator description: > If exponent is −0, the result is 1, even if base is NaN. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A4.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A4.js index f7af9993227..bf73c0de559 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A4.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A4.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If base is NaN and exponent is nonzero, the result is NaN. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A5.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A5.js index f0b0fd7674a..7deb3cf0cec 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A5.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A5.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If abs(base) > 1 and exponent is +∞, the result is +∞. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A6.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A6.js index 06c39324338..36c973093b7 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A6.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A6.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If abs(base) > 1 and exponent is −∞, the result is +0. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A7.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A7.js index 5420f64f894..bc7c7aa0bf7 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A7.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A7.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If abs(base) is 1 and exponent is +∞, the result is NaN. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A8.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A8.js index 0e3dcc3679f..68521e6902b 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A8.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A8.js @@ -4,6 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If abs(base) is 1 and exponent is −∞, the result is NaN. +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/applying-the-exp-operator_A9.js b/test/language/expressions/exponentiation/applying-the-exp-operator_A9.js index 6eee820d5b6..0a37bf930d8 100644 --- a/test/language/expressions/exponentiation/applying-the-exp-operator_A9.js +++ b/test/language/expressions/exponentiation/applying-the-exp-operator_A9.js @@ -4,7 +4,7 @@ /*--- esid: sec-applying-the-exp-operator description: If abs(base) < 1 and exponent is +∞, the result is +0. - +features: [exponentiation] ---*/ diff --git a/test/language/expressions/exponentiation/bigint-and-number.js b/test/language/expressions/exponentiation/bigint-and-number.js index 769bb4c9175..3c32d5b17f6 100644 --- a/test/language/expressions/exponentiation/bigint-and-number.js +++ b/test/language/expressions/exponentiation/bigint-and-number.js @@ -3,7 +3,7 @@ /*--- esid: sec-exp-operator-runtime-semantics-evaluation description: Mixing BigInt and Number produces a TypeError for exponentiation operator -features: [BigInt] +features: [BigInt, exponentiation] info: | Let base be ? ToNumeric(leftValue). Let exponent be ? ToNumeric(rightValue). diff --git a/test/language/expressions/exponentiation/bigint-arithmetic.js b/test/language/expressions/exponentiation/bigint-arithmetic.js index 2ccbce791d2..2ab0d90b085 100644 --- a/test/language/expressions/exponentiation/bigint-arithmetic.js +++ b/test/language/expressions/exponentiation/bigint-arithmetic.js @@ -3,7 +3,7 @@ /*--- esid: sec-exp-operator-runtime-semantics-evaluation description: BigInt exponentiation arithmetic -features: [BigInt] +features: [BigInt, exponentiation] ---*/ assert.sameValue( 0x123n ** 0x123n, diff --git a/test/language/expressions/exponentiation/bigint-errors.js b/test/language/expressions/exponentiation/bigint-errors.js index e563bc6528c..a18aec253b4 100644 --- a/test/language/expressions/exponentiation/bigint-errors.js +++ b/test/language/expressions/exponentiation/bigint-errors.js @@ -3,7 +3,7 @@ /*--- description: exponentiation operator ToNumeric with BigInt operands esid: sec-exp-operator-runtime-semantics-evaluation -features: [BigInt, Symbol, Symbol.toPrimitive, computed-property-names] +features: [BigInt, Symbol, Symbol.toPrimitive, computed-property-names, exponentiation] ---*/ assert.throws(TypeError, function() { Symbol('1') ** 0n; diff --git a/test/language/expressions/exponentiation/bigint-negative-exponent-throws.js b/test/language/expressions/exponentiation/bigint-negative-exponent-throws.js index 8e3b32c539b..ae49cb2b290 100644 --- a/test/language/expressions/exponentiation/bigint-negative-exponent-throws.js +++ b/test/language/expressions/exponentiation/bigint-negative-exponent-throws.js @@ -13,7 +13,7 @@ info: | 1. If exponent < 0, throw a RangeError exception. ... -features: [BigInt] +features: [BigInt, exponentiation] ---*/ assert.throws(RangeError, function() { 1n ** -1n; diff --git a/test/language/expressions/exponentiation/bigint-toprimitive.js b/test/language/expressions/exponentiation/bigint-toprimitive.js index 9cae71e6fc3..09c19c8a1b6 100644 --- a/test/language/expressions/exponentiation/bigint-toprimitive.js +++ b/test/language/expressions/exponentiation/bigint-toprimitive.js @@ -3,7 +3,7 @@ /*--- description: exponentiation operator ToNumeric with BigInt operands esid: sec-exp-operator-runtime-semantics-evaluation -features: [BigInt, Symbol.toPrimitive, computed-property-names] +features: [BigInt, Symbol.toPrimitive, computed-property-names, exponentiation] ---*/ function err() { throw new Test262Error(); diff --git a/test/language/expressions/exponentiation/bigint-wrapped-values.js b/test/language/expressions/exponentiation/bigint-wrapped-values.js index a5ba5070c37..13fd85202cf 100644 --- a/test/language/expressions/exponentiation/bigint-wrapped-values.js +++ b/test/language/expressions/exponentiation/bigint-wrapped-values.js @@ -3,7 +3,7 @@ /*--- description: exponentiation operator ToNumeric with BigInt operands esid: sec-exp-operator-runtime-semantics-evaluation -features: [BigInt, Symbol.toPrimitive, computed-property-names] +features: [BigInt, Symbol.toPrimitive, computed-property-names, exponentiation] ---*/ assert.sameValue(Object(2n) ** 1n, 2n, 'The result of (Object(2n) ** 1n) is 2n'); assert.sameValue(1n ** Object(2n), 1n, 'The result of (1n ** Object(2n)) is 1n'); diff --git a/test/language/expressions/exponentiation/bigint-zero-base-zero-exponent.js b/test/language/expressions/exponentiation/bigint-zero-base-zero-exponent.js index 425c46ff1ef..6c7218c53a4 100644 --- a/test/language/expressions/exponentiation/bigint-zero-base-zero-exponent.js +++ b/test/language/expressions/exponentiation/bigint-zero-base-zero-exponent.js @@ -15,6 +15,6 @@ info: | 2. If base is 0n and exponent is 0n, return 1n. 3. Return a BigInt representing the mathematical value of base raised to the power exponent. ... -features: [BigInt] +features: [BigInt, exponentiation] ---*/ assert.sameValue(0n ** 0n, 1n, 'The result of (0n ** 0n) is 1n'); diff --git a/test/language/expressions/exponentiation/exp-assignment-operator.js b/test/language/expressions/exponentiation/exp-assignment-operator.js index b00d15b8103..e1907de3aae 100644 --- a/test/language/expressions/exponentiation/exp-assignment-operator.js +++ b/test/language/expressions/exponentiation/exp-assignment-operator.js @@ -17,7 +17,7 @@ info: | 6. Let r be the result of applying op to lval and rval as if evaluating the expression lval op rval. 7. Perform ? PutValue(lref, r). 8. Return r. - +features: [exponentiation] ---*/ var base = -3; diff --git a/test/language/expressions/exponentiation/exp-operator-evaluation-order.js b/test/language/expressions/exponentiation/exp-operator-evaluation-order.js index eeef5863308..c1464ab324e 100644 --- a/test/language/expressions/exponentiation/exp-operator-evaluation-order.js +++ b/test/language/expressions/exponentiation/exp-operator-evaluation-order.js @@ -16,6 +16,7 @@ info: | 5. Let base be ? ToNumber(leftValue). 6. Let exponent be ? ToNumber(rightValue). 7. Return the result of Applying the ** operator with base and exponent as specified in 12.7.3.4. +features: [exponentiation] ---*/ var capture = []; diff --git a/test/language/expressions/exponentiation/exp-operator-precedence-unary-expression-semantics.js b/test/language/expressions/exponentiation/exp-operator-precedence-unary-expression-semantics.js index 03723c4d466..7c4b030538c 100644 --- a/test/language/expressions/exponentiation/exp-operator-precedence-unary-expression-semantics.js +++ b/test/language/expressions/exponentiation/exp-operator-precedence-unary-expression-semantics.js @@ -19,6 +19,7 @@ info: | `-` UnaryExpression `~` UnaryExpression `!` UnaryExpression +features: [exponentiation] ---*/ assert.sameValue(-(3 ** 2), -9, "-(3 ** 2) === -9"); diff --git a/test/language/expressions/exponentiation/exp-operator-precedence-update-expression-semantics.js b/test/language/expressions/exponentiation/exp-operator-precedence-update-expression-semantics.js index a87f92217f9..f728c0bf240 100644 --- a/test/language/expressions/exponentiation/exp-operator-precedence-update-expression-semantics.js +++ b/test/language/expressions/exponentiation/exp-operator-precedence-update-expression-semantics.js @@ -15,6 +15,7 @@ info: | LeftHandSideExpression `--` `++` UnaryExpression `--` UnaryExpression +features: [exponentiation] ---*/ var base = 4; diff --git a/test/language/expressions/exponentiation/exp-operator-syntax-error-bitnot-unary-expression-base.js b/test/language/expressions/exponentiation/exp-operator-syntax-error-bitnot-unary-expression-base.js index 5ccb8438b6d..dcccd7bbf4b 100644 --- a/test/language/expressions/exponentiation/exp-operator-syntax-error-bitnot-unary-expression-base.js +++ b/test/language/expressions/exponentiation/exp-operator-syntax-error-bitnot-unary-expression-base.js @@ -14,6 +14,7 @@ info: | ... `~` UnaryExpression ... +features: [exponentiation] negative: phase: parse diff --git a/test/language/expressions/exponentiation/exp-operator-syntax-error-delete-unary-expression-base.js b/test/language/expressions/exponentiation/exp-operator-syntax-error-delete-unary-expression-base.js index 6e112053e7b..95b7003b119 100644 --- a/test/language/expressions/exponentiation/exp-operator-syntax-error-delete-unary-expression-base.js +++ b/test/language/expressions/exponentiation/exp-operator-syntax-error-delete-unary-expression-base.js @@ -14,6 +14,7 @@ info: | ... `delete` UnaryExpression ... +features: [exponentiation] negative: phase: parse diff --git a/test/language/expressions/exponentiation/exp-operator-syntax-error-logical-not-unary-expression-base.js b/test/language/expressions/exponentiation/exp-operator-syntax-error-logical-not-unary-expression-base.js index b453969e347..82f12d1701f 100644 --- a/test/language/expressions/exponentiation/exp-operator-syntax-error-logical-not-unary-expression-base.js +++ b/test/language/expressions/exponentiation/exp-operator-syntax-error-logical-not-unary-expression-base.js @@ -14,6 +14,7 @@ info: | ... `!` UnaryExpression ... +features: [exponentiation] negative: phase: parse diff --git a/test/language/expressions/exponentiation/exp-operator-syntax-error-negate-unary-expression-base.js b/test/language/expressions/exponentiation/exp-operator-syntax-error-negate-unary-expression-base.js index 992e7925f0a..372ec1d503f 100644 --- a/test/language/expressions/exponentiation/exp-operator-syntax-error-negate-unary-expression-base.js +++ b/test/language/expressions/exponentiation/exp-operator-syntax-error-negate-unary-expression-base.js @@ -14,6 +14,7 @@ info: | ... `-` UnaryExpression ... +features: [exponentiation] negative: phase: parse diff --git a/test/language/expressions/exponentiation/exp-operator-syntax-error-plus-unary-expression-base.js b/test/language/expressions/exponentiation/exp-operator-syntax-error-plus-unary-expression-base.js index c475d138a14..b959e00852f 100644 --- a/test/language/expressions/exponentiation/exp-operator-syntax-error-plus-unary-expression-base.js +++ b/test/language/expressions/exponentiation/exp-operator-syntax-error-plus-unary-expression-base.js @@ -14,6 +14,7 @@ info: | ... `+` UnaryExpression ... +features: [exponentiation] negative: phase: parse diff --git a/test/language/expressions/exponentiation/exp-operator-syntax-error-typeof-unary-expression-base.js b/test/language/expressions/exponentiation/exp-operator-syntax-error-typeof-unary-expression-base.js index 2193981d695..3d901e969be 100644 --- a/test/language/expressions/exponentiation/exp-operator-syntax-error-typeof-unary-expression-base.js +++ b/test/language/expressions/exponentiation/exp-operator-syntax-error-typeof-unary-expression-base.js @@ -14,6 +14,7 @@ info: | ... `typeof` UnaryExpression ... +features: [exponentiation] negative: phase: parse diff --git a/test/language/expressions/exponentiation/exp-operator-syntax-error-void-unary-expression-base.js b/test/language/expressions/exponentiation/exp-operator-syntax-error-void-unary-expression-base.js index bf5ffc94c31..ef515afe36b 100644 --- a/test/language/expressions/exponentiation/exp-operator-syntax-error-void-unary-expression-base.js +++ b/test/language/expressions/exponentiation/exp-operator-syntax-error-void-unary-expression-base.js @@ -14,6 +14,7 @@ info: | ... `void` UnaryExpression ... +features: [exponentiation] negative: phase: parse diff --git a/test/language/expressions/exponentiation/exp-operator.js b/test/language/expressions/exponentiation/exp-operator.js index 7b46edcac95..fdf3c8fa246 100644 --- a/test/language/expressions/exponentiation/exp-operator.js +++ b/test/language/expressions/exponentiation/exp-operator.js @@ -6,6 +6,7 @@ author: Rick Waldron esid: sec-exp-operator description: > Performs exponential calculation on operands. Same algorithm as %MathPow%(base, exponent) +features: [exponentiation] ---*/ var exponent = 2; diff --git a/test/language/expressions/exponentiation/int32_min-exponent.js b/test/language/expressions/exponentiation/int32_min-exponent.js index 556c8885c6a..0d91d53f8bd 100644 --- a/test/language/expressions/exponentiation/int32_min-exponent.js +++ b/test/language/expressions/exponentiation/int32_min-exponent.js @@ -6,6 +6,7 @@ esid: sec-applying-the-exp-operator description: > Using -(2**31) as exponent with the exponentiation operator should behave as expected. +features: [exponentiation] ---*/ const INT32_MIN = -2147483648; diff --git a/test/language/expressions/exponentiation/order-of-evaluation.js b/test/language/expressions/exponentiation/order-of-evaluation.js index 4a933c63771..91c5e953f9f 100644 --- a/test/language/expressions/exponentiation/order-of-evaluation.js +++ b/test/language/expressions/exponentiation/order-of-evaluation.js @@ -3,7 +3,7 @@ /*--- esid: sec-exp-operator-runtime-semantics-evaluation description: Type coercion order of operations for exponentiation operator -features: [Symbol] +features: [Symbol, exponentiation] info: | Evaluate lhs Evaluate rhs diff --git a/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-exponetiation-expression.js b/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-exponetiation-expression.js index a3a51ba5ecb..301d48ac4a6 100644 --- a/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-exponetiation-expression.js +++ b/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ObjectLiteral: diff --git a/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-math.js b/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-math.js index f3218082c0a..b00930e79e6 100644 --- a/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-math.js +++ b/test/language/expressions/object/cpn-obj-lit-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ObjectLiteral: diff --git a/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-exponetiation-expression.js b/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-exponetiation-expression.js index 02e36b1715f..ff1d5a6f4bd 100644 --- a/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-exponetiation-expression.js +++ b/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassDeclaration) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-math.js b/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-math.js index d9d3b9f1186..13f88ea8323 100644 --- a/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-math.js +++ b/test/language/statements/class/cpn-class-decl-accessors-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassDeclaration) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/statements/class/cpn-class-decl-computed-property-name-from-exponetiation-expression.js b/test/language/statements/class/cpn-class-decl-computed-property-name-from-exponetiation-expression.js index 40038346b28..fee561912a9 100644 --- a/test/language/statements/class/cpn-class-decl-computed-property-name-from-exponetiation-expression.js +++ b/test/language/statements/class/cpn-class-decl-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassDeclaration) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/statements/class/cpn-class-decl-computed-property-name-from-math.js b/test/language/statements/class/cpn-class-decl-computed-property-name-from-math.js index bbcbfa70c53..4594c331434 100644 --- a/test/language/statements/class/cpn-class-decl-computed-property-name-from-math.js +++ b/test/language/statements/class/cpn-class-decl-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassDeclaration) esid: prod-ComputedPropertyName -features: [computed-property-names] +features: [computed-property-names, exponentiation] flags: [generated] info: | ClassExpression: diff --git a/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-exponetiation-expression.js b/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-exponetiation-expression.js index a00c8dcf0b0..b1fd2c55f01 100644 --- a/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-exponetiation-expression.js +++ b/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-math.js b/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-math.js index c512cb069d6..2f34703a500 100644 --- a/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-math.js +++ b/test/language/statements/class/cpn-class-decl-fields-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-exponetiation-expression.js b/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-exponetiation-expression.js index 02bd62297eb..fab8d63ab3f 100644 --- a/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-exponetiation-expression.js +++ b/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-exponetiation-expression.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from exponentiation expression (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-math.js b/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-math.js index 763688bb79d..1f384d411df 100644 --- a/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-math.js +++ b/test/language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-math.js @@ -4,7 +4,7 @@ /*--- description: Computed property name from math (ComputedPropertyName in ClassExpression) esid: prod-ComputedPropertyName -features: [computed-property-names, class-fields-public, class-static-fields-public] +features: [computed-property-names, exponentiation, class-fields-public, class-static-fields-public] flags: [generated] info: | ClassExpression: diff --git a/test/staging/ArrayBuffer/resizable/includes-parameter-conversion-resizes.js b/test/staging/ArrayBuffer/resizable/includes-parameter-conversion-resizes.js index 6d513ac39d7..0e9b1beb698 100644 --- a/test/staging/ArrayBuffer/resizable/includes-parameter-conversion-resizes.js +++ b/test/staging/ArrayBuffer/resizable/includes-parameter-conversion-resizes.js @@ -6,7 +6,7 @@ esid: sec-arraybuffer-length description: > Automatically ported from IncludesParameterConversionResizes test in V8's mjsunit test typedarray-resizablearraybuffer.js -features: [resizable-arraybuffer] +features: [resizable-arraybuffer, Array.prototype.includes] flags: [onlyStrict] ---*/ diff --git a/test/staging/ArrayBuffer/resizable/includes.js b/test/staging/ArrayBuffer/resizable/includes.js index 4ae996953eb..a33c7ca29af 100644 --- a/test/staging/ArrayBuffer/resizable/includes.js +++ b/test/staging/ArrayBuffer/resizable/includes.js @@ -6,7 +6,7 @@ esid: sec-arraybuffer-length description: > Automatically ported from Includes test in V8's mjsunit test typedarray-resizablearraybuffer.js -features: [resizable-arraybuffer] +features: [resizable-arraybuffer, Array.prototype.includes] flags: [onlyStrict] ---*/ diff --git a/test/staging/ArrayBuffer/resizable/sort-callback-shrinks.js b/test/staging/ArrayBuffer/resizable/sort-callback-shrinks.js index 47ef31ca1d3..0ba38348047 100644 --- a/test/staging/ArrayBuffer/resizable/sort-callback-shrinks.js +++ b/test/staging/ArrayBuffer/resizable/sort-callback-shrinks.js @@ -7,7 +7,7 @@ description: > Automatically ported from SortCallbackShrinks test in V8's mjsunit test typedarray-resizablearraybuffer.js includes: [compareArray.js] -features: [resizable-arraybuffer] +features: [resizable-arraybuffer, Array.prototype.includes] flags: [onlyStrict] ---*/ diff --git a/test/staging/Intl402/Temporal/old/non-iso-calendars.js b/test/staging/Intl402/Temporal/old/non-iso-calendars.js index e5ba2ac73b3..f6dd8981f23 100644 --- a/test/staging/Intl402/Temporal/old/non-iso-calendars.js +++ b/test/staging/Intl402/Temporal/old/non-iso-calendars.js @@ -4,7 +4,7 @@ /*--- esid: sec-temporal-intl description: Non-ISO Calendars -features: [Temporal] +features: [Temporal, Array.prototype.includes] ---*/ var testChineseData = new Date("2001-02-01T00:00Z").toLocaleString("en-US-u-ca-chinese", { diff --git a/test/staging/Temporal/UserCalendar/old/calendar-extra-fields.js b/test/staging/Temporal/UserCalendar/old/calendar-extra-fields.js index ee3b0062848..2ef1262540e 100644 --- a/test/staging/Temporal/UserCalendar/old/calendar-extra-fields.js +++ b/test/staging/Temporal/UserCalendar/old/calendar-extra-fields.js @@ -4,7 +4,7 @@ /*--- esid: sec-temporal-zoneddatetime-objects description: calendar with extra fields -features: [Temporal] +features: [Temporal, Array.prototype.includes] ---*/ class SeasonCalendar extends Temporal.Calendar { diff --git a/test/staging/Temporal/UserCalendar/old/calendar-non-trivial-mergefields.js b/test/staging/Temporal/UserCalendar/old/calendar-non-trivial-mergefields.js index 4a18631e075..f4262c66b43 100644 --- a/test/staging/Temporal/UserCalendar/old/calendar-non-trivial-mergefields.js +++ b/test/staging/Temporal/UserCalendar/old/calendar-non-trivial-mergefields.js @@ -4,7 +4,7 @@ /*--- esid: sec-temporal-zoneddatetime-objects description: calendar with nontrivial mergeFields implementation -features: [Temporal] +features: [Temporal, Array.prototype.includes] ---*/ class CenturyCalendar extends Temporal.Calendar {