From 4a6439e4a7aba77e305afc30977b02a34ad11b33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Juli=C3=A1n=20Espina?= Date: Thu, 23 Mar 2023 09:51:08 +0000 Subject: [PATCH] Add `Array.prototype.includes` and `exponentiation` features (#3799) --- CONTRIBUTING.md | 1 + features.txt | 2 ++ .../updateexpression-star-star-exponentiationexpression-0.case | 1 + .../updateexpression-star-star-exponentiationexpression-1.case | 1 + .../updateexpression-star-star-exponentiationexpression-2.case | 1 + src/compound-assignment-private/exp.case | 1 + .../computed-property-name-from-exponetiation-expression.case | 2 +- .../computed-property-name-from-math.case | 2 +- test/built-ins/Array/prototype/includes/call-with-boolean.js | 1 + .../fromIndex-equal-or-greater-length-returns-false.js | 1 + test/built-ins/Array/prototype/includes/fromIndex-infinity.js | 1 + .../built-ins/Array/prototype/includes/fromIndex-minus-zero.js | 1 + test/built-ins/Array/prototype/includes/get-prop.js | 2 +- test/built-ins/Array/prototype/includes/length-boundaries.js | 1 + .../Array/prototype/includes/length-zero-returns-false.js | 1 + test/built-ins/Array/prototype/includes/length.js | 1 + test/built-ins/Array/prototype/includes/name.js | 1 + test/built-ins/Array/prototype/includes/no-arg.js | 1 + test/built-ins/Array/prototype/includes/not-a-constructor.js | 2 +- test/built-ins/Array/prototype/includes/prop-desc.js | 1 + .../Array/prototype/includes/return-abrupt-get-length.js | 1 + .../Array/prototype/includes/return-abrupt-get-prop.js | 1 + .../includes/return-abrupt-tointeger-fromindex-symbol.js | 2 +- .../prototype/includes/return-abrupt-tointeger-fromindex.js | 1 + .../prototype/includes/return-abrupt-tonumber-length-symbol.js | 2 +- .../Array/prototype/includes/return-abrupt-tonumber-length.js | 1 + test/built-ins/Array/prototype/includes/samevaluezero.js | 1 + .../Array/prototype/includes/search-found-returns-true.js | 2 +- .../Array/prototype/includes/search-not-found-returns-false.js | 2 +- test/built-ins/Array/prototype/includes/sparse.js | 1 + test/built-ins/Array/prototype/includes/this-is-not-object.js | 1 + test/built-ins/Array/prototype/includes/tointeger-fromindex.js | 1 + test/built-ins/Array/prototype/includes/tolength-length.js | 1 + test/built-ins/Array/prototype/includes/using-fromindex.js | 1 + .../Array/prototype/includes/values-are-not-cached.js | 1 + test/built-ins/Array/prototype/methods-called-as-functions.js | 2 +- test/built-ins/Array/prototype/pop/clamps-to-integer-limit.js | 1 + .../built-ins/Array/prototype/pop/length-near-integer-limit.js | 3 ++- test/built-ins/Array/prototype/push/clamps-to-integer-limit.js | 1 + .../Array/prototype/push/length-near-integer-limit.js | 1 + .../Array/prototype/push/throws-if-integer-limit-exceeded.js | 1 + .../reverse/length-exceeding-integer-limit-with-object.js | 1 + .../reverse/length-exceeding-integer-limit-with-proxy.js | 1 + .../slice/length-exceeding-integer-limit-proxied-array.js | 1 + .../Array/prototype/slice/length-exceeding-integer-limit.js | 1 + .../Array/prototype/splice/clamps-length-to-integer-limit.js | 1 + .../splice/create-species-length-exceeding-integer-limit.js | 2 +- .../splice/length-and-deleteCount-exceeding-integer-limit.js | 1 + .../splice/length-exceeding-integer-limit-shrink-array.js | 1 + .../prototype/splice/length-near-integer-limit-grow-array.js | 1 + .../Array/prototype/splice/throws-if-integer-limit-exceeded.js | 1 + .../toReversed/length-exceeding-array-length-limit.js | 2 +- .../prototype/toSorted/length-exceeding-array-length-limit.js | 2 +- .../prototype/toSpliced/length-clamped-to-2pow53minus1.js | 2 +- .../prototype/toSpliced/length-exceeding-array-length-limit.js | 2 +- .../Array/prototype/unshift/clamps-to-integer-limit.js | 1 + .../Array/prototype/unshift/length-near-integer-limit.js | 1 + .../prototype/unshift/throws-if-integer-limit-exceeded.js | 1 + .../Array/prototype/with/index-bigger-or-eq-than-length.js | 2 +- .../Array/prototype/with/index-smaller-than-minus-length.js | 2 +- .../prototype/with/length-exceeding-array-length-limit.js | 2 +- test/built-ins/Atomics/isLockFree/expected-return-value.js | 2 +- .../Function/prototype/toString/built-in-function-object.js | 2 +- test/built-ins/Map/valid-keys.js | 2 +- test/built-ins/Number/bigint-conversion.js | 2 +- test/built-ins/Proxy/has/trap-is-null-target-is-proxy.js | 2 +- test/built-ins/RegExp/prototype/exec/failure-lastindex-set.js | 1 + test/built-ins/Set/valid-values.js | 2 +- .../prototype/evaluate/globalthis-config-only-properties.js | 2 +- .../fixed-offset-near-date-time-limits.js | 2 +- .../DateTimeFormat/casing-numbering-system-calendar-options.js | 1 + .../intl402/DateTimeFormat/prototype/format/related-year-zh.js | 1 + .../DateTimeFormat/prototype/format/timedatestyle-en.js | 2 +- test/intl402/DateTimeFormat/prototype/formatToParts/main.js | 1 + .../prototype/resolvedOptions/hourCycle-timeStyle.js | 2 +- .../DateTimeFormat/prototype/resolvedOptions/hourCycle.js | 1 + .../supportedValuesOf/calendars-accepted-by-DateTimeFormat.js | 2 +- .../supportedValuesOf/calendars-accepted-by-DisplayNames.js | 2 +- test/intl402/Intl/supportedValuesOf/calendars.js | 2 +- .../Intl/supportedValuesOf/collations-accepted-by-Collator.js | 2 +- test/intl402/Intl/supportedValuesOf/collations.js | 2 +- .../supportedValuesOf/currencies-accepted-by-DisplayNames.js | 2 +- .../numberingSystems-accepted-by-DateTimeFormat.js | 2 +- .../numberingSystems-accepted-by-NumberFormat.js | 2 +- .../numberingSystems-accepted-by-RelativeTimeFormat.js | 2 +- .../numberingSystems-with-simple-digit-mappings.js | 2 +- .../Intl/supportedValuesOf/units-accepted-by-NumberFormat.js | 2 +- test/intl402/Intl/supportedValuesOf/units.js | 2 +- .../intl402/Locale/prototype/collations/output-array-values.js | 2 +- .../intl402/Locale/prototype/hourCycles/output-array-values.js | 2 +- test/intl402/NumberFormat/casing-numbering-system-options.js | 1 + .../PluralRules/prototype/resolvedOptions/pluralCategories.js | 1 + .../intl402/Segmenter/constructor/constructor/locales-valid.js | 2 +- .../nanoseconds-subtracted-or-added-at-dst-transition.js | 2 +- test/intl402/fallback-locales-are-supported.js | 1 + ...ct-updateexpression-star-star-exponentiationexpression-0.js | 1 + ...ct-updateexpression-star-star-exponentiationexpression-1.js | 1 + ...ct-updateexpression-star-star-exponentiationexpression-2.js | 1 + ...ed-updateexpression-star-star-exponentiationexpression-0.js | 1 + ...ed-updateexpression-star-star-exponentiationexpression-1.js | 1 + ...ed-updateexpression-star-star-exponentiationexpression-2.js | 1 + ...ors-computed-property-name-from-exponetiation-expression.js | 2 +- ...pn-class-expr-accessors-computed-property-name-from-math.js | 2 +- ...xpr-computed-property-name-from-exponetiation-expression.js | 2 +- .../class/cpn-class-expr-computed-property-name-from-math.js | 2 +- ...lds-computed-property-name-from-exponetiation-expression.js | 2 +- .../cpn-class-expr-fields-computed-property-name-from-math.js | 2 +- ...ods-computed-property-name-from-exponetiation-expression.js | 2 +- ...ass-expr-fields-methods-computed-property-name-from-math.js | 2 +- .../left-hand-side-private-reference-accessor-property-exp.js | 2 +- .../left-hand-side-private-reference-data-property-exp.js | 2 +- .../left-hand-side-private-reference-method-exp.js | 2 +- ...nd-side-private-reference-readonly-accessor-property-exp.js | 2 +- ...x-error-17-lhs-assignment-operator-assignment-expression.js | 2 +- .../expressions/exponentiation/applying-the-exp-operator_A1.js | 1 + .../exponentiation/applying-the-exp-operator_A11.js | 1 + .../exponentiation/applying-the-exp-operator_A12.js | 1 + .../exponentiation/applying-the-exp-operator_A13.js | 1 + .../exponentiation/applying-the-exp-operator_A14.js | 1 + .../exponentiation/applying-the-exp-operator_A15.js | 1 + .../exponentiation/applying-the-exp-operator_A16.js | 1 + .../exponentiation/applying-the-exp-operator_A17.js | 1 + .../exponentiation/applying-the-exp-operator_A18.js | 1 + .../exponentiation/applying-the-exp-operator_A19.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A2.js | 1 + .../exponentiation/applying-the-exp-operator_A20.js | 1 + .../exponentiation/applying-the-exp-operator_A21.js | 1 + .../exponentiation/applying-the-exp-operator_A22.js | 1 + .../exponentiation/applying-the-exp-operator_A23.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A3.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A4.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A5.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A6.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A7.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A8.js | 1 + .../expressions/exponentiation/applying-the-exp-operator_A9.js | 2 +- test/language/expressions/exponentiation/bigint-and-number.js | 2 +- test/language/expressions/exponentiation/bigint-arithmetic.js | 2 +- test/language/expressions/exponentiation/bigint-errors.js | 2 +- .../exponentiation/bigint-negative-exponent-throws.js | 2 +- test/language/expressions/exponentiation/bigint-toprimitive.js | 2 +- .../expressions/exponentiation/bigint-wrapped-values.js | 2 +- .../exponentiation/bigint-zero-base-zero-exponent.js | 2 +- .../expressions/exponentiation/exp-assignment-operator.js | 2 +- .../exponentiation/exp-operator-evaluation-order.js | 1 + .../exp-operator-precedence-unary-expression-semantics.js | 1 + .../exp-operator-precedence-update-expression-semantics.js | 1 + .../exp-operator-syntax-error-bitnot-unary-expression-base.js | 1 + .../exp-operator-syntax-error-delete-unary-expression-base.js | 1 + ...-operator-syntax-error-logical-not-unary-expression-base.js | 1 + .../exp-operator-syntax-error-negate-unary-expression-base.js | 1 + .../exp-operator-syntax-error-plus-unary-expression-base.js | 1 + .../exp-operator-syntax-error-typeof-unary-expression-base.js | 1 + .../exp-operator-syntax-error-void-unary-expression-base.js | 1 + test/language/expressions/exponentiation/exp-operator.js | 1 + test/language/expressions/exponentiation/int32_min-exponent.js | 1 + .../language/expressions/exponentiation/order-of-evaluation.js | 2 +- ...lit-computed-property-name-from-exponetiation-expression.js | 2 +- .../object/cpn-obj-lit-computed-property-name-from-math.js | 2 +- ...ors-computed-property-name-from-exponetiation-expression.js | 2 +- ...pn-class-decl-accessors-computed-property-name-from-math.js | 2 +- ...ecl-computed-property-name-from-exponetiation-expression.js | 2 +- .../class/cpn-class-decl-computed-property-name-from-math.js | 2 +- ...lds-computed-property-name-from-exponetiation-expression.js | 2 +- .../cpn-class-decl-fields-computed-property-name-from-math.js | 2 +- ...ods-computed-property-name-from-exponetiation-expression.js | 2 +- ...ass-decl-fields-methods-computed-property-name-from-math.js | 2 +- .../resizable/includes-parameter-conversion-resizes.js | 2 +- test/staging/ArrayBuffer/resizable/includes.js | 2 +- test/staging/ArrayBuffer/resizable/sort-callback-shrinks.js | 2 +- test/staging/Intl402/Temporal/old/non-iso-calendars.js | 2 +- .../staging/Temporal/UserCalendar/old/calendar-extra-fields.js | 2 +- .../UserCalendar/old/calendar-non-trivial-mergefields.js | 2 +- 173 files changed, 175 insertions(+), 83 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a839f18332..a3319864ab 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 7742bd3fe8..a398ae2e15 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 800f8afe82..675e2e6878 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 fdbb6f50ad..6bd8c1050e 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 92c51c0e5c..65910c5e97 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 abe58ceaf6..c7a41581cb 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 897dd032c4..544fce63a8 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 8edd0cbf94..b6b8c214b3 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 695c249baa..30b214243e 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 84bb4526d8..fbb10381b1 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 0c5d3bb270..86d0c76595 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 7a6e0087a6..9751a40759 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 bea3d5a9af..1505b7719b 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 84ac9579c4..bffb399641 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 7e247c26c6..098fe45477 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 0abb6d35ae..259555a2ef 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 4391eb02f5..daf1719718 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 8c975a642f..0480fddddd 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 d5052d19fb..81aca092d0 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 b48a8955fe..0d76e1caba 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 19ea655e2c..ef05100af9 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 7f8e2b99da..87480f1c94 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 9321f8ade5..3e168d5391 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 4ef4af3597..e79355f35e 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 2c41257406..64c22ecc2a 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 dcd2d50b35..f140713f6b 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 2481b651c0..557da5b7b1 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 e23e92c46f..8239b9076b 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 7d98d2a68b..79c0ec0abe 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 751c2c928e..e50d8bcf1c 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 895e17c964..e073262d67 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 d8d2322960..fb34d32807 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 c1e82b9da5..bbe9d4be51 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 c6e3f1a646..472ab2ccc8 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 a44f374f0c..1f039ddb7d 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 6d04e33905..2b4e4c854a 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 0c5899a55e..2fd7e4321a 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 a480b9c6c8..9d0c7a7e48 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 9cfc323fc3..6a29bf2aa9 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 4c94e29873..5b16f87066 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 ae71cd417a..76b64fcbe1 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 dcfdb869b4..1351e92883 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 f827f9f162..e16b61fa57 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 79ca743e08..ed771464b4 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 7adf639c7b..619c0b95a7 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 24584ba48a..b72cc3e51e 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 2efecc76b7..6b829ec646 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 3c68671237..ebe9aea397 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 46a59a25f2..436123d960 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 a36b385a61..ac3c0c975b 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 447eb4d0a5..e2b1e921d5 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 e3a212a078..3aa3bdb280 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 72ae5353a5..535ace463b 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 5938e729be..a3bad9f969 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 ddd2a4dce2..65b1bb122f 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 9f2e141845..1c19a96eae 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 5dff513e40..f4ff8320a0 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 9ad723eca5..14c2a6bc49 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 932f0861b6..5b05d12b20 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 644718f66b..a24a36fa0e 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 f6f2d7de49..8e348cdd35 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 969782d793..fa380fc666 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 c7310c5c37..a64302c1d6 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 3d417b6714..29908ffa92 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 0397fb0266..c4dd8513c2 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 cce9fb9d5f..a87eee65b1 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 41f08e330b..b543c81207 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 2f7e6a33c6..9f93ba0ad5 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 6b6857f6c1..d630ddb43f 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 27d97938da..8aa1af7292 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 0753f79e0f..bab8f45461 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 fd86e5092c..c4b309b338 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 282e39e1b2..5bdf1cd3d4 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 b89711dac6..55330dc6e5 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 13795dae45..9c7ebc1171 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 855edc6655..4b3b4dc6ca 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 901c6d4e64..602168dbc3 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 29e5ec5b24..06c17d37e2 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 dadfc7213c..8baef6d0fa 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 d4c814906b..af8c7a9344 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 d8ccffba69..dc923b86a8 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 41545f5a99..b9930605d6 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 32cdcb5da8..d4f70cb4ca 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 99b36942f5..67ee2ef981 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 ec82f8b6b8..5f0a5c1cde 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 62211a960c..320f0f195d 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 fa47e88c70..110972c79a 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 d05e648f84..b3c37dcffe 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 04dce3ea5c..7f1656d528 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 37cfe713ec..3d7976a964 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 8e927a9c3a..79d780e856 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 9481dc9787..173dde9f7d 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 2361c6e37f..5aa4324b60 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 422b170d3e..268924e79e 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 da91780b80..5d289461a1 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 2b534ff56b..4bf6b37018 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 0f1b0caadc..2f4eb8e758 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 9be01baaaf..bf20a28350 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 dfa2d5ca63..9bdf63166c 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 b6b530e85f..fc9fb628cb 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 aa648bb582..937a37b5a2 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 f76f260898..a227e22244 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 8257361e39..2caf8f9ace 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 f1dab7637c..d4bf478540 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 f938772582..bbeac1afaa 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 db184fef6e..e88a5e6225 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 24bb837b85..afa864183a 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 ef13282ffd..0ca711152e 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 1f2e2171b3..8b9b82d18c 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 9648139596..b27ea18c0f 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 e62385acfb..85bf0f2a7e 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 25036c1d86..5d6ade31df 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 b0e17bb8e7..72a5f8fbfd 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 d27455ea3f..2ddc94f6f6 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 02e2049cdf..5f1ea2008c 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 feffb65d98..293f985d41 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 d9f3084b57..c3617f1d14 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 4d955e55b4..2ae3ad3d05 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 8637ecca26..77b016d966 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 e4ec599d6b..7260e078e0 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 ecfc9e21a4..29fb080f9a 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 5764dacd1a..d04058da21 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 f3ae5c7f27..0d48cf3282 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 d56b8a0daa..7c9934c87d 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 5eaf70151a..1c94a7fa51 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 93ae818e2b..518ac4a975 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 361295d3c7..b236eb201c 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 17786cebac..c1bc09b81e 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 c2010f3ee3..836fddb66b 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 629df3221b..24dc972c1e 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 f7af999322..bf73c0de55 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 f0b0fd7674..7deb3cf0ce 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 06c3932433..36c973093b 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 5420f64f89..bc7c7aa0bf 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 0e3dcc3679..68521e6902 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 6eee820d5b..0a37bf930d 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 769bb4c917..3c32d5b17f 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 2ccbce791d..2ab0d90b08 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 e563bc6528..a18aec253b 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 8e3b32c539..ae49cb2b29 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 9cae71e6fc..09c19c8a1b 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 a5ba5070c3..13fd85202c 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 425c46ff1e..6c7218c53a 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 b00d15b810..e1907de3aa 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 eeef586330..c1464ab324 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 03723c4d46..7c4b030538 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 a87f92217f..f728c0bf24 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 5ccb8438b6..dcccd7bbf4 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 6e112053e7..95b7003b11 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 b453969e34..82f12d1701 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 992e7925f0..372ec1d503 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 c475d138a1..b959e00852 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 2193981d69..3d901e969b 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 bf5ffc94c3..ef515afe36 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 7b46edcac9..fdf3c8fa24 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 556c8885c6..0d91d53f8b 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 4a933c6377..91c5e953f9 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 a3a51ba5ec..301d48ac4a 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 f3218082c0..b00930e79e 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 02e36b1715..ff1d5a6f4b 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 d9d3b9f118..13f88ea832 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 40038346b2..fee561912a 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 bbcbfa70c5..4594c33143 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 a00c8dcf0b..b1fd2c55f0 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 c512cb069d..2f34703a50 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 02bd62297e..fab8d63ab3 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 763688bb79..1f384d411d 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 6d513ac39d..0e9b1beb69 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 4ae996953e..a33c7ca29a 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 47ef31ca1d..0ba3834804 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 e5ba2ac73b..f6dd8981f2 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 ee3b006284..2ef1262540 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 4a18631e07..f4262c66b4 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 {