Changeset 260591 in webkit


Ignore:
Timestamp:
Apr 23, 2020 12:57:12 PM (4 years ago)
Author:
Alexey Shvayka
Message:

Update test262 to commit 31dabb5618e2
https://bugs.webkit.org/show_bug.cgi?id=210921

Reviewed by Ross Kirsling.

  • test262/config.yaml: Skip "Atomics.waitAsync" feature.
  • test262/expectations.yaml:
  • test262/harness/*: Updated.
  • test262/latest-changes-summary.txt:
  • test262/test/*: Updated.
  • test262/test262-Revision.txt:
Location:
trunk/JSTests
Files:
107 added
3 deleted
61 edited
2 copied
3 moved

Legend:

Unmodified
Added
Removed
  • trunk/JSTests/ChangeLog

    r260586 r260591  
     12020-04-23 Alexey Shvayka <shvaikalesh@gmail.com>
     2
     3        Update test262 to commit 31dabb5618e2
     4        https://bugs.webkit.org/show_bug.cgi?id=210921
     5
     6        Reviewed by Ross Kirsling.
     7
     8        * test262/config.yaml: Skip "Atomics.waitAsync" feature.
     9        * test262/expectations.yaml:
     10        * test262/harness/*: Updated.
     11        * test262/latest-changes-summary.txt:
     12        * test262/test/*: Updated.
     13        * test262/test262-Revision.txt:
     14
    1152020-04-23  Yusuke Suzuki  <ysuzuki@apple.com>
    216
  • trunk/JSTests/test262/config.yaml

    r260384 r260591  
    1111    - SharedArrayBuffer
    1212    - Atomics
     13    - Atomics.waitAsync
    1314    # https://bugs.webkit.org/show_bug.cgi?id=174931
    1415    - regexp-lookbehind
  • trunk/JSTests/test262/expectations.yaml

    r260447 r260591  
    299299test/annexB/language/eval-code/indirect/global-switch-dflt-eval-global-skip-early-err-try.js:
    300300  default: 'Test262Error: An initialized binding is not created prior to evaluation Expected a ReferenceError to be thrown but no exception was thrown at all'
     301test/annexB/language/expressions/assignment/dstr/array-pattern-emulates-undefined.js:
     302  default: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
     303  strict mode: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
     304test/annexB/language/expressions/assignment/dstr/object-pattern-emulates-undefined.js:
     305  default: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
     306  strict mode: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
    301307test/annexB/language/expressions/yield/star-iterable-return-emulates-undefined-throws-when-called.js:
    302308  default: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all'
    303309  strict mode: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all'
     310test/annexB/language/expressions/yield/star-iterable-throw-emulates-undefined-throws-when-called.js:
     311  default: "TypeError: Delegated generator does not have a 'throw' method."
     312  strict mode: "TypeError: Delegated generator does not have a 'throw' method."
    304313test/annexB/language/function-code/block-decl-func-skip-arguments.js:
    305314  default: 'Test262Error: Expected SameValue(«function arguments() {}», «[object Arguments]») to be true'
     
    610619test/annexB/language/global-code/switch-dflt-global-skip-early-err.js:
    611620  default: "SyntaxError: Cannot declare a function that shadows a let/const/class/function variable 'f' in strict mode."
     621test/annexB/language/statements/const/dstr/array-pattern-emulates-undefined.js:
     622  default: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
     623  strict mode: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
     624test/annexB/language/statements/const/dstr/object-pattern-emulates-undefined.js:
     625  default: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
     626  strict mode: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
    612627test/annexB/language/statements/for-await-of/iterator-close-return-emulates-undefined-throws-when-called.js:
    613628  default: "Test262:AsyncTestFailure:Test262Error: Test262Error: expected TypeError because `iter[Symbol.asyncIterator]() returned a non-object: Test262Error: shouldn't touch Symbol.iterator Expected SameValue(«function Test262Error(message) {"
     
    616631  default: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all'
    617632  strict mode: 'Test262Error: Expected a TypeError to be thrown but no exception was thrown at all'
     633test/annexB/language/statements/function/default-parameters-emulates-undefined.js:
     634  default: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
     635  strict mode: 'Test262Error: Expected SameValue(«undefined», «[object Function]») to be true'
    618636test/built-ins/Array/proto-from-ctor-realm-one.js:
    619637  default: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«», «») to be true'
     
    730748  default: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Expected SameValue(«1», «0») to be true'
    731749  strict mode: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Expected SameValue(«1», «0») to be true'
    732 test/built-ins/AsyncFromSyncIteratorPrototype/throw/absent-value-not-passed.js:
    733   default: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Promise should be rejected, got: undefined'
    734   strict mode: 'Test262:AsyncTestFailure:Test262Error: Test262Error: Promise should be rejected, got: undefined'
    735750test/built-ins/AsyncFunction/proto-from-ctor-realm.js:
    736751  default: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object AsyncFunction]», «[object AsyncFunction]») to be true'
     
    802817  default: 'Test262Error: Expected SameValue(«0», «2») to be true'
    803818  strict mode: 'Test262Error: Expected SameValue(«0», «2») to be true'
    804 test/built-ins/BigInt/constructor-integer.js:
    805   default: 'RangeError: Not safe integer'
    806   strict mode: 'RangeError: Not safe integer'
    807819test/built-ins/Boolean/proto-from-ctor-realm.js:
    808820  default: 'Test262Error: Expected SameValue(«false», «false») to be true'
     
    955967  default: 'Test262Error: Expected SameValue(«function () {'
    956968  strict mode: 'Test262Error: Expected SameValue(«function () {'
     969test/built-ins/Function/prototype/bind/get-fn-realm-recursive.js:
     970  default: 'Test262Error: Expected true but got false'
     971  strict mode: 'Test262Error: Expected true but got false'
     972test/built-ins/Function/prototype/bind/get-fn-realm.js:
     973  default: 'Test262Error: Expected true but got false'
     974  strict mode: 'Test262Error: Expected true but got false'
    957975test/built-ins/Function/prototype/bind/length-exceeds-int32.js:
    958976  default: 'Test262Error: Expected SameValue(«0», «2147483648») to be true'
     
    12441262  default: "TypeError: A Proxy's 'target' shouldn't be a revoked Proxy"
    12451263  strict mode: "TypeError: A Proxy's 'target' shouldn't be a revoked Proxy"
     1264test/built-ins/Proxy/get-fn-realm-recursive.js:
     1265  default: 'Test262Error: Expected true but got false'
     1266  strict mode: 'Test262Error: Expected true but got false'
     1267test/built-ins/Proxy/get-fn-realm.js:
     1268  default: 'Test262Error: Expected true but got false'
     1269  strict mode: 'Test262Error: Expected true but got false'
    12461270test/built-ins/Proxy/ownKeys/trap-is-undefined-target-is-proxy.js:
    12471271  default: 'Test262Error: Expected [length, foo, 0, Symbol()] and [Symbol(), length, foo, 0] to have the same contents. '
    12481272  strict mode: 'Test262Error: Expected [length, foo, 0, Symbol()] and [Symbol(), length, foo, 0] to have the same contents. '
     1273test/built-ins/Proxy/revocable/builtin.js:
     1274  default: 'Test262Error: Expected SameValue(«true», «false») to be true'
     1275  strict mode: 'Test262Error: Expected SameValue(«true», «false») to be true'
     1276test/built-ins/Proxy/revocable/handler-is-revoked-proxy.js:
     1277  default: "TypeError: A Proxy's 'handler' shouldn't be a revoked Proxy"
     1278  strict mode: "TypeError: A Proxy's 'handler' shouldn't be a revoked Proxy"
     1279test/built-ins/Proxy/revocable/target-is-revoked-function-proxy.js:
     1280  default: "TypeError: A Proxy's 'target' shouldn't be a revoked Proxy"
     1281  strict mode: "TypeError: A Proxy's 'target' shouldn't be a revoked Proxy"
     1282test/built-ins/Proxy/revocable/target-is-revoked-proxy.js:
     1283  default: "TypeError: A Proxy's 'target' shouldn't be a revoked Proxy"
     1284  strict mode: "TypeError: A Proxy's 'target' shouldn't be a revoked Proxy"
    12491285test/built-ins/Reflect/ownKeys/order-after-define-property.js:
    12501286  default: 'Test262Error: Expected [Symbol(b), Symbol(a)] and [Symbol(a), Symbol(b)] to have the same contents. '
     
    16881724  default: 'Test262Error: Expected SameValue(«», «») to be true'
    16891725  strict mode: 'Test262Error: Expected SameValue(«», «») to be true'
     1726test/built-ins/String/prototype/replace/cstm-replace-is-null.js:
     1727  default: 'TypeError: null is not a function'
     1728  strict mode: 'TypeError: null is not a function'
     1729test/built-ins/String/prototype/replaceAll/searchValue-replacer-is-null.js:
     1730  default: 'TypeError: null is not a function'
     1731  strict mode: 'TypeError: null is not a function'
     1732test/built-ins/Symbol/is-constructor.js:
     1733  default: 'Test262Error: Expected true but got false'
     1734  strict mode: 'Test262Error: Expected true but got false'
    16901735test/built-ins/ThrowTypeError/extensible.js:
    16911736  default: 'Test262Error: Expected SameValue(«true», «false») to be true'
     
    19091954  default: 'Test262Error: Expected SameValue(«cmn», «zh») to be true'
    19101955  strict mode: 'Test262Error: Expected SameValue(«cmn», «zh») to be true'
     1956test/intl402/Intl/getCanonicalLocales/complex-language-subtag-replacement.js:
     1957  default: 'Test262Error: Expected SameValue(«sh», «sr-Latn») to be true'
     1958  strict mode: 'Test262Error: Expected SameValue(«sh», «sr-Latn») to be true'
     1959test/intl402/Intl/getCanonicalLocales/complex-region-subtag-replacement.js:
     1960  default: 'Test262Error: Expected SameValue(«ru-SU», «ru-RU») to be true'
     1961  strict mode: 'Test262Error: Expected SameValue(«ru-SU», «ru-RU») to be true'
    19111962test/intl402/Intl/getCanonicalLocales/grandfathered.js:
    19121963  default: 'Test262Error: Expected SameValue(«cmn», «zh») to be true'
    19131964  strict mode: 'Test262Error: Expected SameValue(«cmn», «zh») to be true'
    19141965test/intl402/Intl/getCanonicalLocales/invalid-tags.js:
    1915   default: 'Test262Error: Test data "de-gregory-gregory" is a canonicalized and structurally valid language tag.'
    1916   strict mode: 'Test262Error: Test data "de-gregory-gregory" is a canonicalized and structurally valid language tag.'
     1966  default: 'Test262Error: Language tag: no-nyn Expected a RangeError to be thrown but no exception was thrown at all'
     1967  strict mode: 'Test262Error: Language tag: no-nyn Expected a RangeError to be thrown but no exception was thrown at all'
    19171968test/intl402/Intl/getCanonicalLocales/non-iana-canon.js:
    19181969  default: 'Test262Error: The value of Intl.getCanonicalLocales(tag)[0] equals the value of `canonical` Expected SameValue(«aar-x-private», «aa-x-private») to be true'
     
    19221973  strict mode: 'Test262Error: Expected SameValue(«cel-gaulish», «xtg-x-cel-gaulish») to be true'
    19231974test/intl402/Intl/getCanonicalLocales/preferred-variant.js:
    1924   default: 'Test262Error: Expected SameValue(«ja-Latn-alalc97», «ja-Latn-hepburn-heploc») to be true'
    1925   strict mode: 'Test262Error: Expected SameValue(«ja-Latn-alalc97», «ja-Latn-hepburn-heploc») to be true'
     1975  default: 'Test262Error: Expected SameValue(«ja-Latn-alalc97», «ja-Latn-alalc97-hepburn») to be true'
     1976  strict mode: 'Test262Error: Expected SameValue(«ja-Latn-alalc97», «ja-Latn-alalc97-hepburn») to be true'
     1977test/intl402/Intl/getCanonicalLocales/transformed-ext-canonical.js:
     1978  default: 'Test262Error: Expected SameValue(«sl-t-sl-rozaj-biske-1994», «sl-t-sl-1994-biske-rozaj») to be true'
     1979  strict mode: 'Test262Error: Expected SameValue(«sl-t-sl-rozaj-biske-1994», «sl-t-sl-1994-biske-rozaj») to be true'
     1980test/intl402/Intl/getCanonicalLocales/transformed-ext-invalid.js:
     1981  default: 'Test262Error: en-t-root Expected a RangeError to be thrown but no exception was thrown at all'
     1982  strict mode: 'Test262Error: en-t-root Expected a RangeError to be thrown but no exception was thrown at all'
     1983test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-calendar.js:
     1984  default: 'Test262Error: Expected SameValue(«und-u-ca-ethiopic-amete-alem», «und-u-ca-ethioaa») to be true'
     1985  strict mode: 'Test262Error: Expected SameValue(«und-u-ca-ethiopic-amete-alem», «und-u-ca-ethioaa») to be true'
     1986test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-col-strength.js:
     1987  default: 'Test262Error: Expected SameValue(«und-u-ks-primary», «und-u-ks-level1») to be true'
     1988  strict mode: 'Test262Error: Expected SameValue(«und-u-ks-primary», «und-u-ks-level1») to be true'
     1989test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-measurement-system.js:
     1990  default: 'Test262Error: Expected SameValue(«und-u-ms-imperial», «und-u-ms-uksystem») to be true'
     1991  strict mode: 'Test262Error: Expected SameValue(«und-u-ms-imperial», «und-u-ms-uksystem») to be true'
     1992test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-region.js:
     1993  default: 'Test262Error: Expected SameValue(«und-u-rg-no23», «und-u-rg-no50») to be true'
     1994  strict mode: 'Test262Error: Expected SameValue(«und-u-rg-no23», «und-u-rg-no50») to be true'
     1995test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-subdivision.js:
     1996  default: 'Test262Error: Expected SameValue(«und-NO-u-sd-no23», «und-NO-u-sd-no50») to be true'
     1997  strict mode: 'Test262Error: Expected SameValue(«und-NO-u-sd-no23», «und-NO-u-sd-no50») to be true'
     1998test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-timezone.js:
     1999  default: 'Test262Error: Expected SameValue(«und-u-tz-cnckg», «und-u-tz-cnsha») to be true'
     2000  strict mode: 'Test262Error: Expected SameValue(«und-u-tz-cnckg», «und-u-tz-cnsha») to be true'
     2001test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-yes-to-true.js:
     2002  default: 'Test262Error: Expected SameValue(«und-u-kb-yes», «und-u-kb») to be true'
     2003  strict mode: 'Test262Error: Expected SameValue(«und-u-kb-yes», «und-u-kb») to be true'
     2004test/intl402/Intl/getCanonicalLocales/unicode-ext-key-with-digit.js:
     2005  default: 'Test262Error: Expected a RangeError to be thrown but no exception was thrown at all'
     2006  strict mode: 'Test262Error: Expected a RangeError to be thrown but no exception was thrown at all'
    19262007test/intl402/NumberFormat/proto-from-ctor-realm.js:
    19272008  default: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object Object]», «[object Object]») to be true'
     
    19362017  default: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object Intl.RelativeTimeFormat]», «[object Intl.RelativeTimeFormat]») to be true'
    19372018  strict mode: 'Test262Error: newTarget.prototype is undefined Expected SameValue(«[object Intl.RelativeTimeFormat]», «[object Intl.RelativeTimeFormat]») to be true'
     2019test/intl402/RelativeTimeFormat/prototype/format/en-us-numeric-always.js:
     2020  default: 'TypeError: failed to format relative time'
     2021  strict mode: 'TypeError: failed to format relative time'
     2022test/intl402/RelativeTimeFormat/prototype/format/en-us-style-short.js:
     2023  default: 'TypeError: failed to format relative time'
     2024  strict mode: 'TypeError: failed to format relative time'
    19382025test/intl402/RelativeTimeFormat/prototype/format/pl-pl-style-long.js:
    1939   default: 'Test262Error: Expected SameValue(«za 1000 sekund», «za 1 000 sekund») to be true'
    1940   strict mode: 'Test262Error: Expected SameValue(«za 1000 sekund», «za 1 000 sekund») to be true'
     2026  default: 'TypeError: failed to format relative time'
     2027  strict mode: 'TypeError: failed to format relative time'
    19412028test/intl402/RelativeTimeFormat/prototype/format/pl-pl-style-narrow.js:
    1942   default: 'Test262Error: Expected SameValue(«za 1000 s», «za 1 000 s») to be true'
    1943   strict mode: 'Test262Error: Expected SameValue(«za 1000 s», «za 1 000 s») to be true'
     2029  default: 'TypeError: failed to format relative time'
     2030  strict mode: 'TypeError: failed to format relative time'
    19442031test/intl402/RelativeTimeFormat/prototype/format/pl-pl-style-short.js:
    1945   default: 'Test262Error: Expected SameValue(«za 1000 sek.», «za 1 000 sek.») to be true'
    1946   strict mode: 'Test262Error: Expected SameValue(«za 1000 sek.», «za 1 000 sek.») to be true'
     2032  default: 'TypeError: failed to format relative time'
     2033  strict mode: 'TypeError: failed to format relative time'
     2034test/intl402/RelativeTimeFormat/prototype/format/unit-plural.js:
     2035  default: 'TypeError: failed to format relative time'
     2036  strict mode: 'TypeError: failed to format relative time'
     2037test/intl402/RelativeTimeFormat/prototype/formatToParts/en-us-numeric-always.js:
     2038  default: 'TypeError: failed to format relative time'
     2039  strict mode: 'TypeError: failed to format relative time'
     2040test/intl402/RelativeTimeFormat/prototype/formatToParts/en-us-style-short.js:
     2041  default: 'TypeError: failed to format relative time'
     2042  strict mode: 'TypeError: failed to format relative time'
    19472043test/intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-long.js:
    1948   default: 'Test262Error: formatToParts(1000, second): length Expected SameValue(«3», «5») to be true'
    1949   strict mode: 'Test262Error: formatToParts(1000, second): length Expected SameValue(«3», «5») to be true'
     2044  default: 'TypeError: failed to format relative time'
     2045  strict mode: 'TypeError: failed to format relative time'
    19502046test/intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-narrow.js:
    1951   default: 'Test262Error: formatToParts(1000, second): length Expected SameValue(«3», «5») to be true'
    1952   strict mode: 'Test262Error: formatToParts(1000, second): length Expected SameValue(«3», «5») to be true'
     2047  default: 'TypeError: failed to format relative time'
     2048  strict mode: 'TypeError: failed to format relative time'
    19532049test/intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-short.js:
    1954   default: 'Test262Error: formatToParts(1000, second): length Expected SameValue(«3», «5») to be true'
    1955   strict mode: 'Test262Error: formatToParts(1000, second): length Expected SameValue(«3», «5») to be true'
     2050  default: 'TypeError: failed to format relative time'
     2051  strict mode: 'TypeError: failed to format relative time'
     2052test/intl402/RelativeTimeFormat/prototype/formatToParts/unit-plural.js:
     2053  default: 'TypeError: failed to format relative time'
     2054  strict mode: 'TypeError: failed to format relative time'
    19562055test/intl402/language-tags-invalid.js:
    1957   default: 'Test262Error: Test data "de-gregory-gregory" is a canonicalized and structurally valid language tag.'
    1958   strict mode: 'Test262Error: Test data "de-gregory-gregory" is a canonicalized and structurally valid language tag.'
     2056  default: 'Test262Error: Invalid language tag no-nyn was not rejected. Expected a RangeError to be thrown but no exception was thrown at all (Testing with Collator.)'
     2057  strict mode: 'Test262Error: Invalid language tag no-nyn was not rejected. Expected a RangeError to be thrown but no exception was thrown at all (Testing with Collator.)'
    19592058test/language/arguments-object/mapped/nonconfigurable-nonenumerable-nonwritable-descriptors-set-by-arguments.js:
    19602059  default: 'Test262Error: Expected obj[0] to have enumerable:false.'
     
    32133312  default: "SyntaxError: Invalid character '\\u08be'"
    32143313  strict mode: "SyntaxError: Invalid character '\\u08be'"
    3215 test/language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier.js:
    3216   default: 'Test262: This statement should not be evaluated.'
    3217   strict mode: 'Test262: This statement should not be evaluated.'
    3218 test/language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3.js:
    3219   default: 'Test262: This statement should not be evaluated.'
    3220   strict mode: 'Test262: This statement should not be evaluated.'
    3221 test/language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6.js:
    3222   default: 'Test262: This statement should not be evaluated.'
    3223   strict mode: 'Test262: This statement should not be evaluated.'
    3224 test/language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier-2.js:
    3225   default: 'Test262: This statement should not be evaluated.'
    3226   strict mode: 'Test262: This statement should not be evaluated.'
    3227 test/language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier.js:
    3228   default: 'Test262: This statement should not be evaluated.'
    3229   strict mode: 'Test262: This statement should not be evaluated.'
    32303314test/language/literals/regexp/u-astral-char-class-invert.js:
    32313315  default: 'Test262Error: Expected SameValue(«�», «null») to be true'
     
    32493333test/language/module-code/namespace/internals/get-nested-namespace-props-nrml.js:
    32503334  module: "SyntaxError: Unexpected identifier 'as'. Expected 'from' before exported module name."
    3251 test/language/module-code/namespace/internals/set.js:
    3252   module: 'Test262Error: Reflect.defineProperty: local1 Expected SameValue(«false», «true») to be true'
    32533335test/language/module-code/parse-err-hoist-lex-fun.js:
    32543336  module: 'Test262: This statement should not be evaluated.'
  • trunk/JSTests/test262/harness/atomicsHelper.js

    r250571 r260591  
    55    Collection of functions used to interact with Atomics.* operations across agent boundaries.
    66defines:
     7  - $262.agent.getReportAsync
    78  - $262.agent.getReport
     9  - $262.agent.safeBroadcastAsync
    810  - $262.agent.safeBroadcast
    911  - $262.agent.tryYield
    10   - $262.trySleep
     12  - $262.agent.trySleep
    1113---*/
    1214
     
    3234    }
    3335    return r;
     36  };
     37
     38  if (this.setTimeout === undefined) {
     39    (function(that) {
     40      that.setTimeout = function(callback, delay) {
     41        let p = Promise.resolve();
     42        let start = Date.now();
     43        let end = start + delay;
     44        function check() {
     45          if ((end - Date.now()) > 0) {
     46            p.then(check);
     47          }
     48          else {
     49            callback();
     50          }
     51        }
     52        p.then(check);
     53      }
     54    })(this);
     55  }
     56
     57  $262.agent.getReportAsync = function() {
     58    return new Promise(function(resolve) {
     59      (function loop() {
     60        let result = getReport();
     61        if (!result) {
     62          setTimeout(loop, 1000);
     63        } else {
     64          resolve(result);
     65        }
     66      })();
     67    });
    3468  };
    3569}
     
    75109};
    76110
     111$262.agent.safeBroadcastAsync = async function(ta, index, expected) {
     112  await $262.agent.broadcast(ta.buffer);
     113  await $262.agent.waitUntil(ta, index, expected);
     114  await $262.agent.tryYield();
     115  return await Atomics.load(ta, index);
     116};
     117
     118
    77119/**
    78120 * With a given Int32Array or BigInt64Array, wait until the expected number of agents have
  • trunk/JSTests/test262/harness/testIntl.js

    r250571 r260591  
    4040
    4141  // Optionally supported Intl constructors.
    42   ["PluralRules"].forEach(function(constructor) {
     42  // NB: Intl.Locale isn't an Intl service constructor!
     43  ["PluralRules", "RelativeTimeFormat", "ListFormat", "DisplayNames"].forEach(function(constructor) {
    4344    if (typeof Intl[constructor] === "function") {
    4445      constructors[constructors.length] = constructor;
     
    272273   * Spec: https://unicode.org/reports/tr35/#Unicode_locale_identifier
    273274   */
    274   var alpha = "[a-z]",
     275  var alpha = "[A-Za-z]",
    275276    digit = "[0-9]",
    276     alphanum = "(" + alpha + "|" + digit + ")",
    277     variant = "(" + alphanum + "{5,8}|(" + digit + alphanum + "{3}))",
     277    alphanum = "[A-Za-z0-9]",
     278    variant = "(" + alphanum + "{5,8}|(?:" + digit + alphanum + "{3}))",
    278279    region = "(" + alpha + "{2}|" + digit + "{3})",
    279280    script = "(" + alpha + "{4})",
     
    292293    locale_id = language + "(-" + script + ")?(-" + region + ")?(-" + variant + ")*(-" + extension + ")*(-" + privateuse + ")?",
    293294    languageTag = "^(" + locale_id + ")$",
    294     languageTagRE = new RegExp(languageTag, "i");
     295    languageTagRE = new RegExp(languageTag);
    295296
    296297  var duplicateSingleton = "-" + singleton + "-(.*-)?\\1(?!" + alphanum + ")",
    297     duplicateSingletonRE = new RegExp(duplicateSingleton, "i"),
    298     duplicateVariant = "(" + alphanum + "{2,8}-)+" + variant + "-(" + alphanum + "{2,8}-)*\\3(?!" + alphanum + ")",
    299     duplicateVariantRE = new RegExp(duplicateVariant, "i");
    300 
     298    duplicateSingletonRE = new RegExp(duplicateSingleton),
     299    duplicateVariant = "(" + alphanum + "{2,8}-)+" + variant + "-(" + alphanum + "{2,8}-)*\\2(?!" + alphanum + ")",
     300    duplicateVariantRE = new RegExp(duplicateVariant);
     301
     302  var transformKeyRE = new RegExp("^" + alpha + digit + "$");
    301303
    302304  /**
     
    319321   *
    320322   * Spec: http://unicode.org/reports/tr35/#Identifiers
    321    * Version: CLDR, version 35
     323   * Version: CLDR, version 36.1
    322324   */
    323325  var __tagMappings = {
     
    336338   *
    337339   * Spec: http://unicode.org/reports/tr35/#Identifiers
    338    * Version: CLDR, version 35
     340   * Version: CLDR, version 36.1
    339341   */
    340342  var __languageMappings = {
     
    355357    "arg": "an",
    356358    "arm": "hy",
     359    "asd": "snz",
    357360    "asm": "as",
    358361    "aue": "ktz",
     
    410413    "dik": "din",
    411414    "diq": "zza",
     415    "dit": "dif",
    412416    "div": "dv",
    413417    "drh": "mn",
     
    525529    "lin": "ln",
    526530    "lit": "lt",
     531    "llo": "ngt",
    527532    "lmm": "rmx",
    528533    "ltz": "lb",
     
    551556    "mwj": "vaj",
    552557    "mya": "my",
     558    "myd": "aog",
    553559    "myt": "mry",
    554560    "nad": "xny",
     
    562568    "nld": "nl",
    563569    "nno": "nn",
     570    "nns": "nbr",
    564571    "nnx": "ngv",
    565572    "no": "nb",
     
    690697    "zul": "zu",
    691698    "zyb": "za",
    692   }
     699  };
    693700
    694701
     
    697704   *
    698705   * Spec: http://unicode.org/reports/tr35/#Identifiers
    699    * Version: CLDR, version 35
     706   * Version: CLDR, version 36.1
    700707   */
    701708  var __regionMappings = {
     
    10291036
    10301037  /**
     1038   * Complex mappings from language subtags to preferred values.
     1039   *
     1040   * Spec: http://unicode.org/reports/tr35/#Identifiers
     1041   * Version: CLDR, version 36.1
     1042   */
     1043  var __complexLanguageMappings = {
     1044    // property names and values must be in canonical case
     1045
     1046    "cnr": {language: "sr", region: "ME"},
     1047    "drw": {language: "fa", region: "AF"},
     1048    "hbs": {language: "sr", script: "Latn"},
     1049    "prs": {language: "fa", region: "AF"},
     1050    "sh": {language: "sr", script: "Latn"},
     1051    "swc": {language: "sw", region: "CD"},
     1052    "tnf": {language: "fa", region: "AF"},
     1053  };
     1054
     1055
     1056  /**
     1057   * Complex mappings from region subtags to preferred values.
     1058   *
     1059   * Spec: http://unicode.org/reports/tr35/#Identifiers
     1060   * Version: CLDR, version 36.1
     1061   */
     1062  var __complexRegionMappings = {
     1063    // property names and values must be in canonical case
     1064
     1065    "172": {
     1066      default: "RU",
     1067      "ab": "GE",
     1068      "az": "AZ",
     1069      "be": "BY",
     1070      "crh": "UA",
     1071      "gag": "MD",
     1072      "got": "UA",
     1073      "hy": "AM",
     1074      "ji": "UA",
     1075      "ka": "GE",
     1076      "kaa": "UZ",
     1077      "kk": "KZ",
     1078      "ku-Yezi": "GE",
     1079      "ky": "KG",
     1080      "os": "GE",
     1081      "rue": "UA",
     1082      "sog": "UZ",
     1083      "tg": "TJ",
     1084      "tk": "TM",
     1085      "tkr": "AZ",
     1086      "tly": "AZ",
     1087      "ttt": "AZ",
     1088      "ug-Cyrl": "KZ",
     1089      "uk": "UA",
     1090      "und-Armn": "AM",
     1091      "und-Chrs": "UZ",
     1092      "und-Geor": "GE",
     1093      "und-Goth": "UA",
     1094      "und-Sogd": "UZ",
     1095      "und-Sogo": "UZ",
     1096      "und-Yezi": "GE",
     1097      "uz": "UZ",
     1098      "xco": "UZ",
     1099      "xmf": "GE",
     1100    },
     1101    "200": {
     1102      default: "CZ",
     1103      "sk": "SK",
     1104    },
     1105    "530": {
     1106      default: "CW",
     1107      "vic": "SX",
     1108    },
     1109    "532": {
     1110      default: "CW",
     1111      "vic": "SX",
     1112    },
     1113    "536": {
     1114      default: "SA",
     1115      "akk": "IQ",
     1116      "ckb": "IQ",
     1117      "ku-Arab": "IQ",
     1118      "mis": "IQ",
     1119      "syr": "IQ",
     1120      "und-Hatr": "IQ",
     1121      "und-Syrc": "IQ",
     1122      "und-Xsux": "IQ",
     1123    },
     1124    "582": {
     1125      default: "FM",
     1126      "mh": "MH",
     1127      "pau": "PW",
     1128    },
     1129    "810": {
     1130      default: "RU",
     1131      "ab": "GE",
     1132      "az": "AZ",
     1133      "be": "BY",
     1134      "crh": "UA",
     1135      "et": "EE",
     1136      "gag": "MD",
     1137      "got": "UA",
     1138      "hy": "AM",
     1139      "ji": "UA",
     1140      "ka": "GE",
     1141      "kaa": "UZ",
     1142      "kk": "KZ",
     1143      "ku-Yezi": "GE",
     1144      "ky": "KG",
     1145      "lt": "LT",
     1146      "ltg": "LV",
     1147      "lv": "LV",
     1148      "os": "GE",
     1149      "rue": "UA",
     1150      "sgs": "LT",
     1151      "sog": "UZ",
     1152      "tg": "TJ",
     1153      "tk": "TM",
     1154      "tkr": "AZ",
     1155      "tly": "AZ",
     1156      "ttt": "AZ",
     1157      "ug-Cyrl": "KZ",
     1158      "uk": "UA",
     1159      "und-Armn": "AM",
     1160      "und-Chrs": "UZ",
     1161      "und-Geor": "GE",
     1162      "und-Goth": "UA",
     1163      "und-Sogd": "UZ",
     1164      "und-Sogo": "UZ",
     1165      "und-Yezi": "GE",
     1166      "uz": "UZ",
     1167      "vro": "EE",
     1168      "xco": "UZ",
     1169      "xmf": "GE",
     1170    },
     1171    "890": {
     1172      default: "RS",
     1173      "bs": "BA",
     1174      "hr": "HR",
     1175      "mk": "MK",
     1176      "sl": "SI",
     1177    },
     1178    "AN": {
     1179      default: "CW",
     1180      "vic": "SX",
     1181    },
     1182    "NT": {
     1183      default: "SA",
     1184      "akk": "IQ",
     1185      "ckb": "IQ",
     1186      "ku-Arab": "IQ",
     1187      "mis": "IQ",
     1188      "syr": "IQ",
     1189      "und-Hatr": "IQ",
     1190      "und-Syrc": "IQ",
     1191      "und-Xsux": "IQ",
     1192    },
     1193    "PC": {
     1194      default: "FM",
     1195      "mh": "MH",
     1196      "pau": "PW",
     1197    },
     1198    "SU": {
     1199      default: "RU",
     1200      "ab": "GE",
     1201      "az": "AZ",
     1202      "be": "BY",
     1203      "crh": "UA",
     1204      "et": "EE",
     1205      "gag": "MD",
     1206      "got": "UA",
     1207      "hy": "AM",
     1208      "ji": "UA",
     1209      "ka": "GE",
     1210      "kaa": "UZ",
     1211      "kk": "KZ",
     1212      "ku-Yezi": "GE",
     1213      "ky": "KG",
     1214      "lt": "LT",
     1215      "ltg": "LV",
     1216      "lv": "LV",
     1217      "os": "GE",
     1218      "rue": "UA",
     1219      "sgs": "LT",
     1220      "sog": "UZ",
     1221      "tg": "TJ",
     1222      "tk": "TM",
     1223      "tkr": "AZ",
     1224      "tly": "AZ",
     1225      "ttt": "AZ",
     1226      "ug-Cyrl": "KZ",
     1227      "uk": "UA",
     1228      "und-Armn": "AM",
     1229      "und-Chrs": "UZ",
     1230      "und-Geor": "GE",
     1231      "und-Goth": "UA",
     1232      "und-Sogd": "UZ",
     1233      "und-Sogo": "UZ",
     1234      "und-Yezi": "GE",
     1235      "uz": "UZ",
     1236      "vro": "EE",
     1237      "xco": "UZ",
     1238      "xmf": "GE",
     1239    },
     1240  };
     1241
     1242
     1243  /**
     1244   * Mappings from variant subtags to preferred values.
     1245   *
     1246   * Spec: http://unicode.org/reports/tr35/#Identifiers
     1247   * Version: CLDR, version 36.1
     1248   */
     1249  var __variantMappings = {
     1250    // property names and values must be in canonical case
     1251
     1252    "aaland": {type: "region", replacement: "AX"},
     1253    "arevela": {type: "language", replacement: "hy"},
     1254    "arevmda": {type: "language", replacement: "hyw"},
     1255    "heploc": {type: "variant", replacement: "alalc97"},
     1256    "polytoni": {type: "variant", replacement: "polyton"},
     1257  };
     1258
     1259
     1260  /**
     1261   * Mappings from Unicode extension subtags to preferred values.
     1262   *
     1263   * Spec: http://unicode.org/reports/tr35/#Identifiers
     1264   * Version: CLDR, version 36.1
     1265   */
     1266  var __unicodeMappings = {
     1267    // property names and values must be in canonical case
     1268
     1269    "ca": {
     1270      "ethiopic-amete-alem": "ethioaa",
     1271      "islamicc": "islamic-civil",
     1272    },
     1273    "kb": {
     1274      "yes": "true",
     1275    },
     1276    "kc": {
     1277      "yes": "true",
     1278    },
     1279    "kh": {
     1280      "yes": "true",
     1281    },
     1282    "kk": {
     1283      "yes": "true",
     1284    },
     1285    "kn": {
     1286      "yes": "true",
     1287    },
     1288    "ks": {
     1289      "primary": "level1",
     1290      "tertiary": "level3",
     1291    },
     1292    "ms": {
     1293      "imperial": "uksystem",
     1294    },
     1295    "rg": {
     1296      "cn11": "cnbj",
     1297      "cn12": "cntj",
     1298      "cn13": "cnhe",
     1299      "cn14": "cnsx",
     1300      "cn15": "cnmn",
     1301      "cn21": "cnln",
     1302      "cn22": "cnjl",
     1303      "cn23": "cnhl",
     1304      "cn31": "cnsh",
     1305      "cn32": "cnjs",
     1306      "cn33": "cnzj",
     1307      "cn34": "cnah",
     1308      "cn35": "cnfj",
     1309      "cn36": "cnjx",
     1310      "cn37": "cnsd",
     1311      "cn41": "cnha",
     1312      "cn42": "cnhb",
     1313      "cn43": "cnhn",
     1314      "cn44": "cngd",
     1315      "cn45": "cngx",
     1316      "cn46": "cnhi",
     1317      "cn50": "cncq",
     1318      "cn51": "cnsc",
     1319      "cn52": "cngz",
     1320      "cn53": "cnyn",
     1321      "cn54": "cnxz",
     1322      "cn61": "cnsn",
     1323      "cn62": "cngs",
     1324      "cn63": "cnqh",
     1325      "cn64": "cnnx",
     1326      "cn65": "cnxj",
     1327      "cz10a": "cz110",
     1328      "cz10b": "cz111",
     1329      "cz10c": "cz112",
     1330      "cz10d": "cz113",
     1331      "cz10e": "cz114",
     1332      "cz10f": "cz115",
     1333      "cz611": "cz663",
     1334      "cz612": "cz632",
     1335      "cz613": "cz633",
     1336      "cz614": "cz634",
     1337      "cz615": "cz635",
     1338      "cz621": "cz641",
     1339      "cz622": "cz642",
     1340      "cz623": "cz643",
     1341      "cz624": "cz644",
     1342      "cz626": "cz646",
     1343      "cz627": "cz647",
     1344      "czjc": "cz31",
     1345      "czjm": "cz64",
     1346      "czka": "cz41",
     1347      "czkr": "cz52",
     1348      "czli": "cz51",
     1349      "czmo": "cz80",
     1350      "czol": "cz71",
     1351      "czpa": "cz53",
     1352      "czpl": "cz32",
     1353      "czpr": "cz10",
     1354      "czst": "cz20",
     1355      "czus": "cz42",
     1356      "czvy": "cz63",
     1357      "czzl": "cz72",
     1358      "fra": "frges",
     1359      "frb": "frnaq",
     1360      "frc": "frara",
     1361      "frd": "frbfc",
     1362      "fre": "frbre",
     1363      "frf": "frcvl",
     1364      "frg": "frges",
     1365      "frh": "frcor",
     1366      "fri": "frbfc",
     1367      "frj": "fridf",
     1368      "frk": "frocc",
     1369      "frl": "frnaq",
     1370      "frm": "frges",
     1371      "frn": "frocc",
     1372      "fro": "frhdf",
     1373      "frp": "frnor",
     1374      "frq": "frnor",
     1375      "frr": "frpdl",
     1376      "frs": "frhdf",
     1377      "frt": "frnaq",
     1378      "fru": "frpac",
     1379      "frv": "frara",
     1380      "laxn": "laxs",
     1381      "lud": "lucl",
     1382      "lug": "luec",
     1383      "lul": "luca",
     1384      "mrnkc": "mr13",
     1385      "no23": "no50",
     1386      "nzn": "nzauk",
     1387      "nzs": "nzcan",
     1388      "omba": "ombj",
     1389      "omsh": "omsj",
     1390      "plds": "pl02",
     1391      "plkp": "pl04",
     1392      "pllb": "pl08",
     1393      "plld": "pl10",
     1394      "pllu": "pl06",
     1395      "plma": "pl12",
     1396      "plmz": "pl14",
     1397      "plop": "pl16",
     1398      "plpd": "pl20",
     1399      "plpk": "pl18",
     1400      "plpm": "pl22",
     1401      "plsk": "pl26",
     1402      "plsl": "pl24",
     1403      "plwn": "pl28",
     1404      "plwp": "pl30",
     1405      "plzp": "pl32",
     1406      "tteto": "tttob",
     1407      "ttrcm": "ttmrc",
     1408      "ttwto": "tttob",
     1409      "twkhq": "twkhh",
     1410      "twtnq": "twtnn",
     1411      "twtpq": "twnwt",
     1412      "twtxq": "twtxg",
     1413    },
     1414    "sd": {
     1415      "cn11": "cnbj",
     1416      "cn12": "cntj",
     1417      "cn13": "cnhe",
     1418      "cn14": "cnsx",
     1419      "cn15": "cnmn",
     1420      "cn21": "cnln",
     1421      "cn22": "cnjl",
     1422      "cn23": "cnhl",
     1423      "cn31": "cnsh",
     1424      "cn32": "cnjs",
     1425      "cn33": "cnzj",
     1426      "cn34": "cnah",
     1427      "cn35": "cnfj",
     1428      "cn36": "cnjx",
     1429      "cn37": "cnsd",
     1430      "cn41": "cnha",
     1431      "cn42": "cnhb",
     1432      "cn43": "cnhn",
     1433      "cn44": "cngd",
     1434      "cn45": "cngx",
     1435      "cn46": "cnhi",
     1436      "cn50": "cncq",
     1437      "cn51": "cnsc",
     1438      "cn52": "cngz",
     1439      "cn53": "cnyn",
     1440      "cn54": "cnxz",
     1441      "cn61": "cnsn",
     1442      "cn62": "cngs",
     1443      "cn63": "cnqh",
     1444      "cn64": "cnnx",
     1445      "cn65": "cnxj",
     1446      "cz10a": "cz110",
     1447      "cz10b": "cz111",
     1448      "cz10c": "cz112",
     1449      "cz10d": "cz113",
     1450      "cz10e": "cz114",
     1451      "cz10f": "cz115",
     1452      "cz611": "cz663",
     1453      "cz612": "cz632",
     1454      "cz613": "cz633",
     1455      "cz614": "cz634",
     1456      "cz615": "cz635",
     1457      "cz621": "cz641",
     1458      "cz622": "cz642",
     1459      "cz623": "cz643",
     1460      "cz624": "cz644",
     1461      "cz626": "cz646",
     1462      "cz627": "cz647",
     1463      "czjc": "cz31",
     1464      "czjm": "cz64",
     1465      "czka": "cz41",
     1466      "czkr": "cz52",
     1467      "czli": "cz51",
     1468      "czmo": "cz80",
     1469      "czol": "cz71",
     1470      "czpa": "cz53",
     1471      "czpl": "cz32",
     1472      "czpr": "cz10",
     1473      "czst": "cz20",
     1474      "czus": "cz42",
     1475      "czvy": "cz63",
     1476      "czzl": "cz72",
     1477      "fra": "frges",
     1478      "frb": "frnaq",
     1479      "frc": "frara",
     1480      "frd": "frbfc",
     1481      "fre": "frbre",
     1482      "frf": "frcvl",
     1483      "frg": "frges",
     1484      "frh": "frcor",
     1485      "fri": "frbfc",
     1486      "frj": "fridf",
     1487      "frk": "frocc",
     1488      "frl": "frnaq",
     1489      "frm": "frges",
     1490      "frn": "frocc",
     1491      "fro": "frhdf",
     1492      "frp": "frnor",
     1493      "frq": "frnor",
     1494      "frr": "frpdl",
     1495      "frs": "frhdf",
     1496      "frt": "frnaq",
     1497      "fru": "frpac",
     1498      "frv": "frara",
     1499      "laxn": "laxs",
     1500      "lud": "lucl",
     1501      "lug": "luec",
     1502      "lul": "luca",
     1503      "mrnkc": "mr13",
     1504      "no23": "no50",
     1505      "nzn": "nzauk",
     1506      "nzs": "nzcan",
     1507      "omba": "ombj",
     1508      "omsh": "omsj",
     1509      "plds": "pl02",
     1510      "plkp": "pl04",
     1511      "pllb": "pl08",
     1512      "plld": "pl10",
     1513      "pllu": "pl06",
     1514      "plma": "pl12",
     1515      "plmz": "pl14",
     1516      "plop": "pl16",
     1517      "plpd": "pl20",
     1518      "plpk": "pl18",
     1519      "plpm": "pl22",
     1520      "plsk": "pl26",
     1521      "plsl": "pl24",
     1522      "plwn": "pl28",
     1523      "plwp": "pl30",
     1524      "plzp": "pl32",
     1525      "tteto": "tttob",
     1526      "ttrcm": "ttmrc",
     1527      "ttwto": "tttob",
     1528      "twkhq": "twkhh",
     1529      "twtnq": "twtnn",
     1530      "twtpq": "twnwt",
     1531      "twtxq": "twtxg",
     1532    },
     1533    "tz": {
     1534      "aqams": "nzakl",
     1535      "cnckg": "cnsha",
     1536      "cnhrb": "cnsha",
     1537      "cnkhg": "cnurc",
     1538      "cuba": "cuhav",
     1539      "egypt": "egcai",
     1540      "eire": "iedub",
     1541      "est": "utcw05",
     1542      "gmt0": "gmt",
     1543      "hongkong": "hkhkg",
     1544      "hst": "utcw10",
     1545      "iceland": "isrey",
     1546      "iran": "irthr",
     1547      "israel": "jeruslm",
     1548      "jamaica": "jmkin",
     1549      "japan": "jptyo",
     1550      "libya": "lytip",
     1551      "mst": "utcw07",
     1552      "navajo": "usden",
     1553      "poland": "plwaw",
     1554      "portugal": "ptlis",
     1555      "prc": "cnsha",
     1556      "roc": "twtpe",
     1557      "rok": "krsel",
     1558      "turkey": "trist",
     1559      "uct": "utc",
     1560      "usnavajo": "usden",
     1561      "zulu": "utc",
     1562    },
     1563  };
     1564
     1565
     1566  /**
     1567   * Mappings from Unicode extension subtags to preferred values.
     1568   *
     1569   * Spec: http://unicode.org/reports/tr35/#Identifiers
     1570   * Version: CLDR, version 36.1
     1571   */
     1572  var __transformMappings = {
     1573    // property names and values must be in canonical case
     1574
     1575    "d0": {
     1576      "name": "charname",
     1577    },
     1578    "m0": {
     1579      "names": "prprname",
     1580    },
     1581  };
     1582
     1583  /**
    10311584   * Canonicalizes the given well-formed BCP 47 language tag, including regularized case of subtags.
    10321585   *
     
    10671620    if (__languageMappings.hasOwnProperty(language)) {
    10681621      language = __languageMappings[language];
    1069     } else {
    1070       // Language subtags with complex mappings, CLDR 35.
    1071       switch (language) {
    1072       case "cnr":
    1073         language = "sr";
    1074         if (region === undefined) {
    1075           region = "ME";
    1076         }
    1077         break;
    1078       case "drw":
    1079       case "prs":
    1080       case "tnf":
    1081         language = "fa";
    1082         if (region === undefined) {
    1083           region = "AF";
    1084         }
    1085         break;
    1086       case "hbs":
    1087       case "sh":
    1088         language = "sr";
    1089         if (script === undefined) {
    1090           script = "Latn";
    1091         }
    1092         break;
    1093       case "swc":
    1094         language = "sw";
    1095         if (region === undefined) {
    1096           region = "CD";
    1097         }
    1098         break;
     1622    } else if (__complexLanguageMappings.hasOwnProperty(language)) {
     1623      var mapping = __complexLanguageMappings[language];
     1624
     1625      language = mapping.language;
     1626      if (script === undefined && mapping.hasOwnProperty("script")) {
     1627        script = mapping.script;
     1628      }
     1629      if (region === undefined && mapping.hasOwnProperty("region")) {
     1630        region = mapping.region;
    10991631      }
    11001632    }
     
    11031635      if (__regionMappings.hasOwnProperty(region)) {
    11041636        region = __regionMappings[region];
    1105       } else {
    1106         // Region subtags with complex mappings, CLDR 35.
    1107         switch (region) {
    1108         case "172":
    1109           if (language === "ab" || language === "ka" || language === "os" ||
    1110               (language === "und" && script === "Geor") || language === "xmf") {
    1111             region = "GE";
    1112           }
    1113           else if (language === "az" || language === "tkr" || language === "tly" || language === "ttt") {
    1114             region = "AZ";
    1115           }
    1116           else if (language === "be") {
    1117             region = "BY";
    1118           }
    1119           else if (language === "crh" || language === "got" || language === "ji" || language === "rue" ||
    1120                    language === "uk" || (language === "und" && script === "Goth")) {
    1121             region = "UA";
    1122           }
    1123           else if (language === "gag") {
    1124             region = "MD";
    1125           }
    1126           else if (language === "hy" || (language === "und" && script === "Armn")) {
    1127             region = "AM";
    1128           }
    1129           else if (language === "kaa" || language === "sog" || (language === "und" && script === "Sogd") ||
    1130                    (language === "und" && script === "Sogo") || language === "uz") {
    1131             region = "UZ";
    1132           }
    1133           else if (language === "kk" || (language === "ug" && script === "Cyrl")) {
    1134             region = "KZ";
    1135           }
    1136           else if (language === "ky") {
    1137             region = "KG";
    1138           }
    1139           else if (language === "tg") {
    1140             region = "TJ";
    1141           }
    1142           else if (language === "tk") {
    1143             region = "TM";
    1144           }
    1145           else {
    1146             region = "RU";
    1147           }
    1148           break;
    1149         case "200":
    1150           if (language === "sk") {
    1151             region = "SK";
    1152           }
    1153           else {
    1154             region = "CZ";
    1155           }
    1156           break;
    1157         case "530":
    1158         case "532":
    1159         case "AN":
    1160           if (language === "vic") {
    1161             region = "SX";
    1162           }
    1163           else {
    1164             region = "CW";
    1165           }
    1166           break;
    1167         case "536":
    1168         case "NT":
    1169           if (language === "akk" || language === "ckb" || (language === "ku" && script === "Arab") ||
    1170               language === "mis" || language === "syr" || (language === "und" && script === "Xsux") ||
    1171               (language === "und" && script === "Hatr") || (language === "und" && script === "Syrc")) {
    1172             region = "IQ";
    1173           }
    1174           else {
    1175             region = "SA";
    1176           }
    1177           break;
    1178         case "582":
    1179         case "PC":
    1180           if (language === "mh") {
    1181             region = "MH";
    1182           }
    1183           else if (language === "pau") {
    1184             region = "PW";
    1185           }
    1186           else {
    1187             region = "FM";
    1188           }
    1189           break;
    1190         case "810":
    1191         case "SU":
    1192           if (language === "ab" || language === "ka" || language === "os" || language === "xmf" ||
    1193               (language === "und" && script === "Geor")) {
    1194             region = "GE";
    1195           }
    1196           else if (language === "az" || language === "tkr" || language === "tly" || language === "ttt") {
    1197             region = "AZ";
    1198           }
    1199           else if (language === "be") {
    1200             region = "BY";
    1201           }
    1202           else if (language === "crh" || language === "got" || language === "ji" || language === "rue" ||
    1203                    language === "uk" || (language === "und" && script === "Goth")) {
    1204             region = "UA";
    1205           }
    1206           else if (language === "et" || language === "vro") {
    1207             region = "EE";
    1208           }
    1209           else if (language === "gag") {
    1210             region = "MD";
    1211           }
    1212           else if (language === "hy" || (language === "und" && script === "Armn")) {
    1213             region = "AM";
    1214           }
    1215           else if (language === "kaa" || language === "sog" || (language === "und" && script === "Sogd") ||
    1216                    (language === "und" && script === "Sogo") || language === "uz") {
    1217             region = "UZ";
    1218           }
    1219           else if (language === "kk" || (language === "ug" && script === "Cyrl")) {
    1220             region = "KZ";
    1221           }
    1222           else if (language === "ky") {
    1223             region = "KG";
    1224           }
    1225           else if (language === "lt" || language === "sgs") {
    1226             region = "LT";
    1227           }
    1228           else if (language === "ltg" || language === "lv") {
    1229             region = "LV";
    1230           }
    1231           else if (language === "tg") {
    1232             region = "TJ";
    1233           }
    1234           else if (language === "tk") {
    1235             region = "TM";
    1236           }
    1237           else {
    1238             region = "RU";
    1239           }
    1240           break;
    1241         case "890":
    1242           if (language === "bs") {
    1243             region = "BA";
    1244           }
    1245           else if (language === "hr") {
    1246             region = "HR";
    1247           }
    1248           else if (language === "mk") {
    1249             region = "MK";
    1250           }
    1251           else if (language === "sl") {
    1252             region = "SI";
    1253           }
    1254           else {
    1255             region = "RS";
    1256           }
    1257           break;
     1637      } else if (__complexRegionMappings.hasOwnProperty(region)) {
     1638        var mapping = __complexRegionMappings[region];
     1639
     1640        var mappingKey = language;
     1641        if (script !== undefined) {
     1642          mappingKey += "-" + script;
     1643        }
     1644
     1645        if (mapping.hasOwnProperty(mappingKey)) {
     1646          region = mapping[mappingKey];
     1647        } else {
     1648          region = mapping.default;
    12581649        }
    12591650      }
     
    12631654    var variants = [];
    12641655    while (i < subtags.length && subtags[i].length > 1) {
    1265         variants.push(subtags[i]);
    1266         i += 1;
     1656      var variant = subtags[i];
     1657
     1658      if (__variantMappings.hasOwnProperty(variant)) {
     1659        var mapping = __variantMappings[variant];
     1660        switch (mapping.type) {
     1661          case "language":
     1662            language = mapping.replacement;
     1663            break;
     1664
     1665          case "region":
     1666            region = mapping.replacement;
     1667            break;
     1668
     1669          case "variant":
     1670            variants.push(mapping.replacement);
     1671            break;
     1672
     1673          default:
     1674            throw new Error("illegal variant mapping type");
     1675        }
     1676      } else {
     1677        variants.push(variant);
     1678      }
     1679
     1680      i += 1;
    12671681    }
    12681682    variants.sort();
     
    12761690        i++;
    12771691      }
    1278       var extension = subtags.slice(extensionStart, i).join("-");
     1692
     1693      var extension;
     1694      var extensionKey = subtags[extensionStart];
     1695      if (extensionKey === "u") {
     1696        var j = extensionStart + 1;
     1697
     1698        // skip over leading attributes
     1699        while (j < i && subtags[j].length > 2) {
     1700          j++;
     1701        }
     1702
     1703        extension = subtags.slice(extensionStart, j).join("-");
     1704
     1705        while (j < i) {
     1706          var keyStart = j;
     1707          j++;
     1708
     1709          while (j < i && subtags[j].length > 2) {
     1710            j++;
     1711          }
     1712
     1713          var key = subtags[keyStart];
     1714          var value = subtags.slice(keyStart + 1, j).join("-");
     1715
     1716          if (__unicodeMappings.hasOwnProperty(key)) {
     1717            var mapping = __unicodeMappings[key];
     1718            if (mapping.hasOwnProperty(value)) {
     1719              value = mapping[value];
     1720            }
     1721          }
     1722
     1723          extension += "-" + key;
     1724          if (value !== "" && value !== "true") {
     1725            extension += "-" + value;
     1726          }
     1727        }
     1728      } else if (extensionKey === "t") {
     1729        var j = extensionStart + 1;
     1730
     1731        while (j < i && !transformKeyRE.test(subtags[j])) {
     1732          j++;
     1733        }
     1734
     1735        extension = "t";
     1736
     1737        var transformLanguage = subtags.slice(extensionStart + 1, j).join("-");
     1738        if (transformLanguage !== "") {
     1739          extension += "-" + canonicalizeLanguageTag(transformLanguage).toLowerCase();
     1740        }
     1741
     1742        while (j < i) {
     1743          var keyStart = j;
     1744          j++;
     1745
     1746          while (j < i && subtags[j].length > 2) {
     1747            j++;
     1748          }
     1749
     1750          var key = subtags[keyStart];
     1751          var value = subtags.slice(keyStart + 1, j).join("-");
     1752
     1753          if (__transformMappings.hasOwnProperty(key)) {
     1754            var mapping = __transformMappings[key];
     1755            if (mapping.hasOwnProperty(value)) {
     1756              value = mapping[value];
     1757            }
     1758          }
     1759
     1760          extension += "-" + key + "-" + value;
     1761        }
     1762      } else {
     1763        extension = subtags.slice(extensionStart, i).join("-");
     1764      }
     1765
    12791766      extensions.push(extension);
    12801767    }
     
    15502037function isValidNumberingSystem(name) {
    15512038
    1552   // source: CLDR file common/bcp47/number.xml; version CLDR 32.
     2039  // source: CLDR file common/bcp47/number.xml; version CLDR 36.1.
    15532040  var numberingSystems = [
    15542041    "adlm",
     
    15662053    "cyrl",
    15672054    "deva",
     2055    "diak",
    15682056    "ethi",
    15692057    "finance",
    15702058    "fullwide",
    15712059    "geor",
     2060    "gong",
    15722061    "gonm",
    15732062    "grek",
     
    15832072    "hebr",
    15842073    "hmng",
     2074    "hmnp",
    15852075    "java",
    15862076    "jpan",
    15872077    "jpanfin",
     2078    "jpanyear",
    15882079    "kali",
    15892080    "khmr",
     
    16142105    "orya",
    16152106    "osma",
     2107    "rohg",
    16162108    "roman",
    16172109    "romanlow",
     
    16332125    "vaii",
    16342126    "wara",
     2127    "wcho",
    16352128  ];
    16362129
  • trunk/JSTests/test262/latest-changes-summary.txt

    r259529 r260591  
    1 M harness/async-gc.js
    2 M test/annexB/language/literals/regexp/legacy-octal-escape.js
    3 D test/built-ins/AsyncFromSyncIteratorPrototype/.DS_Store
    4 D test/built-ins/AsyncFromSyncIteratorPrototype/next/.DS_Store
    5 A test/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js
    6 A test/built-ins/AsyncFromSyncIteratorPrototype/return/absent-value-not-passed.js
    7 A test/built-ins/AsyncFromSyncIteratorPrototype/throw/absent-value-not-passed.js
    8 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/Symbol.toStringTag.js
    9 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/next-job-not-active-throws.js
    10 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/next-length.js
    11 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/next-missing-internal-throws.js
    12 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/next-name.js
    13 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/next-not-object-throws.js
    14 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/next-prop-desc.js
    15 D test/built-ins/FinalizationRegistry/FinalizationRegistryCleanupIteratorPrototype/proto.js
    16 M test/built-ins/FinalizationRegistry/gc-has-one-chance-to-call-cleanupCallback.js
    17 D test/built-ins/FinalizationRegistry/prototype/cleanupSome/callback-iterator-proto.js
    18 M test/built-ins/FinalizationRegistry/prototype/cleanupSome/cleanup-prevented-with-reference.js
    19 M test/built-ins/FinalizationRegistry/prototype/cleanupSome/cleanup-prevented-with-unregister.js
    20 D test/built-ins/FinalizationRegistry/prototype/cleanupSome/cleanupcallback-iterator-proto.js
    21 R076 test/built-ins/FinalizationRegistry/prototype/cleanupSome/iterator-holdings-multiple-values.js test/built-ins/FinalizationRegistry/prototype/cleanupSome/holdings-multiple-values.js
    22 D test/built-ins/FinalizationRegistry/prototype/cleanupSome/poisoned-callback-throws.js
    23 R069 test/built-ins/FinalizationRegistry/prototype/cleanupSome/cleanup-throws-in-callback.js test/built-ins/FinalizationRegistry/prototype/cleanupSome/reentrancy.js
    24 M test/built-ins/FinalizationRegistry/prototype/cleanupSome/return-undefined-with-gc.js
    25 M test/built-ins/FinalizationRegistry/prototype/unregister/unregister-cleaned-up-cell.js
    26 A test/built-ins/Promise/any/capability-executor-called-twice.js
    27 A test/built-ins/Promise/any/capability-executor-not-callable.js
    28 A test/built-ins/Promise/any/ctx-ctor-throws.js
    29 A test/built-ins/Promise/any/ctx-ctor.js
    30 A test/built-ins/Promise/any/ctx-non-ctor.js
    31 A test/built-ins/Promise/any/invoke-resolve-error-close.js
    32 A test/built-ins/Promise/any/invoke-resolve-error-reject.js
    33 A test/built-ins/Promise/any/invoke-resolve-get-error-close.js
    34 A test/built-ins/Promise/any/invoke-resolve-get-error-reject.js
    35 A test/built-ins/Promise/any/invoke-resolve-get-once-multiple-calls.js
    36 A test/built-ins/Promise/any/invoke-resolve-get-once-no-calls.js
    37 A test/built-ins/Promise/any/invoke-resolve-not-callable-rejects-with-typerror.js
    38 A test/built-ins/Promise/any/invoke-resolve-on-promises-every-iteration-of-custom.js
    39 A test/built-ins/Promise/any/invoke-resolve-on-promises-every-iteration-of-promise.js
    40 A test/built-ins/Promise/any/invoke-resolve-on-values-every-iteration-of-custom.js
    41 A test/built-ins/Promise/any/invoke-resolve-on-values-every-iteration-of-promise.js
    42 A test/built-ins/Promise/any/invoke-resolve.js
    43 A test/built-ins/Promise/any/invoke-then-error-close.js
    44 A test/built-ins/Promise/any/invoke-then-error-reject.js
    45 A test/built-ins/Promise/any/invoke-then-get-error-close.js
    46 A test/built-ins/Promise/any/invoke-then-get-error-reject.js
    47 A test/built-ins/Promise/any/invoke-then-on-promises-every-iteration.js
    48 A test/built-ins/Promise/any/invoke-then.js
    49 A test/built-ins/Promise/any/is-function.js
    50 A test/built-ins/Promise/any/iter-arg-is-empty-iterable-reject.js
    51 A test/built-ins/Promise/any/iter-arg-is-empty-string-reject.js
    52 A test/built-ins/Promise/any/iter-arg-is-false-reject.js
    53 A test/built-ins/Promise/any/iter-arg-is-null-reject.js
    54 A test/built-ins/Promise/any/iter-arg-is-number-reject.js
    55 A test/built-ins/Promise/any/iter-arg-is-poisoned.js
    56 A test/built-ins/Promise/any/iter-arg-is-string-resolve.js
    57 A test/built-ins/Promise/any/iter-arg-is-symbol-reject.js
    58 A test/built-ins/Promise/any/iter-arg-is-true-reject.js
    59 A test/built-ins/Promise/any/iter-arg-is-undefined-reject.js
    60 A test/built-ins/Promise/any/iter-assigned-false-reject.js
    61 A test/built-ins/Promise/any/iter-assigned-null-reject.js
    62 A test/built-ins/Promise/any/iter-assigned-number-reject.js
    63 A test/built-ins/Promise/any/iter-assigned-string-reject.js
    64 A test/built-ins/Promise/any/iter-assigned-symbol-reject.js
    65 A test/built-ins/Promise/any/iter-assigned-true-reject.js
    66 A test/built-ins/Promise/any/iter-assigned-undefined-reject.js
    67 A test/built-ins/Promise/any/iter-step-err-no-close.js
    68 A test/built-ins/Promise/any/iter-step-err-reject.js
    69 A test/built-ins/Promise/any/length.js
    70 A test/built-ins/Promise/any/name.js
    71 A test/built-ins/Promise/any/new-reject-function.js
    72 A test/built-ins/Promise/any/prop-desc.js
    73 A test/built-ins/Promise/any/reject-all-mixed.js
    74 A test/built-ins/Promise/any/reject-deferred.js
    75 A test/built-ins/Promise/any/reject-element-function-extensible.js
    76 A test/built-ins/Promise/any/reject-element-function-length.js
    77 A test/built-ins/Promise/any/reject-element-function-name.js
    78 A test/built-ins/Promise/any/reject-element-function-nonconstructor.js
    79 A test/built-ins/Promise/any/reject-element-function-prototype.js
    80 A test/built-ins/Promise/any/resolve-from-reject-catch.js
    81 A test/built-ins/Promise/any/resolve-from-resolve-reject-catch.js
    82 A test/built-ins/Promise/any/resolve-ignores-late-rejection-deferred.js
    83 A test/built-ins/Promise/any/resolve-ignores-late-rejection.js
    84 A test/built-ins/Promise/any/returns-promise.js
    85 M test/built-ins/Proxy/create-handler-is-revoked-proxy.js
    86 M test/built-ins/Proxy/create-target-is-not-callable.js
    87 A test/built-ins/Proxy/create-target-is-revoked-function-proxy.js
    88 M test/built-ins/Proxy/create-target-is-revoked-proxy.js
    89 A test/built-ins/Proxy/set/trap-is-missing-receiver-multiple-calls-index.js
    90 A test/built-ins/Proxy/set/trap-is-missing-receiver-multiple-calls.js
    91 R100 test/built-ins/Proxy/set/trap-is-undefined-receiver.js test/built-ins/Proxy/set/trap-is-null-receiver.js
    92 A test/intl402/DateTimeFormat/constructor-options-calendar-invalid.js
    93 A test/intl402/DateTimeFormat/constructor-options-numberingSystem-invalid.js
    94 D test/intl402/DateTimeFormat/invalid-numbering-system-calendar-options.js
    95 A test/intl402/NumberFormat/constructor-options-numberingSystem-invalid.js
    96 D test/intl402/NumberFormat/invalid-numbering-system-options.js
    97 M test/intl402/RelativeTimeFormat/constructor/constructor/options-numberingSystem-invalid.js
    98 A test/language/expressions/class/elements/grammar-private-field-optional-chaining.js
    99 A test/language/expressions/class/elements/static-as-valid-instance-field-assigned.js
    100 A test/language/expressions/class/elements/static-as-valid-instance-field.js
    101 A test/language/expressions/class/elements/static-as-valid-static-field-assigned.js
    102 A test/language/expressions/class/elements/static-as-valid-static-field.js
    103 D test/language/expressions/class/elements/syntax/early-errors/grammar-private-field-optional-chaining.js
    104 A test/language/expressions/logical-assignment/lgcl-and-arguments-strict.js
    105 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-bigint.js
    106 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-lhs-before-rhs.js
    107 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-no-set-put.js
    108 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-no-set.js
    109 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-non-extensible.js
    110 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-non-simple-lhs.js
    111 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-non-writeable-put.js
    112 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-non-writeable.js
    113 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-unresolved-lhs.js
    114 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-unresolved-rhs-put.js
    115 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator-unresolved-rhs.js
    116 A test/language/expressions/logical-assignment/lgcl-and-assignment-operator.js
    117 A test/language/expressions/logical-assignment/lgcl-and-eval-strict.js
    118 A test/language/expressions/logical-assignment/lgcl-and-non-simple.js
    119 A test/language/expressions/logical-assignment/lgcl-and-whitespace.js
    120 A test/language/expressions/logical-assignment/lgcl-nullish-arguments-strict.js
    121 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-bigint.js
    122 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-lhs-before-rhs.js
    123 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-no-set-put.js
    124 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-no-set.js
    125 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-non-extensible.js
    126 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-non-simple-lhs.js
    127 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-non-writeable-put.js
    128 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-non-writeable.js
    129 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-unresolved-lhs.js
    130 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-unresolved-rhs-put.js
    131 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator-unresolved-rhs.js
    132 A test/language/expressions/logical-assignment/lgcl-nullish-assignment-operator.js
    133 A test/language/expressions/logical-assignment/lgcl-nullish-eval-strict.js
    134 A test/language/expressions/logical-assignment/lgcl-nullish-non-simple.js
    135 A test/language/expressions/logical-assignment/lgcl-nullish-whitespace.js
    136 A test/language/expressions/logical-assignment/lgcl-or-arguments-strict.js
    137 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-bigint.js
    138 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-lhs-before-rhs.js
    139 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-no-set-put.js
    140 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-no-set.js
    141 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-non-extensible.js
    142 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-non-simple-lhs.js
    143 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-non-writeable-put.js
    144 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-non-writeable.js
    145 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-unresolved-lhs.js
    146 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-unresolved-rhs-put.js
    147 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator-unresolved-rhs.js
    148 A test/language/expressions/logical-assignment/lgcl-or-assignment-operator.js
    149 A test/language/expressions/logical-assignment/lgcl-or-eval-strict.js
    150 A test/language/expressions/logical-assignment/lgcl-or-non-simple.js
    151 A test/language/expressions/logical-assignment/lgcl-or-whitespace.js
    152 A test/language/expressions/template-literal/unicode-escape-no-hex-err.js
    153 A test/language/literals/string/unicode-escape-no-hex-err-double.js
    154 A test/language/literals/string/unicode-escape-no-hex-err-single.js
    155 A test/language/statements/class/elements/grammar-private-field-optional-chaining.js
    156 A test/language/statements/class/elements/static-as-valid-instance-field-assigned.js
    157 A test/language/statements/class/elements/static-as-valid-instance-field.js
    158 A test/language/statements/class/elements/static-as-valid-static-field-assigned.js
    159 A test/language/statements/class/elements/static-as-valid-static-field.js
    160 D test/language/statements/class/elements/syntax/early-errors/grammar-private-field-optional-chaining.js
    161 A test/language/statements/for-await-of/iterator-close-non-throw-get-method-abrupt.js
    162 A test/language/statements/for-await-of/iterator-close-non-throw-get-method-non-callable.js
    163 A test/language/statements/for-await-of/iterator-close-throw-get-method-abrupt.js
    164 A test/language/statements/for-await-of/iterator-close-throw-get-method-non-callable.js
    165 R051 test/language/statements/for-of/iterator-close-get-method-error.js test/language/statements/for-of/iterator-close-non-throw-get-method-abrupt.js
    166 A test/language/statements/for-of/iterator-close-non-throw-get-method-non-callable.js
    167 A test/language/statements/for-of/iterator-close-throw-get-method-abrupt.js
    168 A test/language/statements/for-of/iterator-close-throw-get-method-non-callable.js
     1M harness/atomicsHelper.js
     2M harness/testIntl.js
     3D test/.DS_Store
     4D test/annexB/.DS_Store
     5D test/annexB/built-ins/.DS_Store
     6R100 test/built-ins/JSON/parse/S15.12.2_A1.js test/annexB/built-ins/JSON/parse/S15.12.2_A1.js
     7R100 test/built-ins/Proxy/set/call-parameters-prototype-dunder-proto.js test/annexB/built-ins/Proxy/set/call-parameters-prototype-dunder-proto.js
     8D test/annexB/built-ins/RegExp/.DS_Store
     9A test/annexB/built-ins/RegExp/match-indices/indices-groups-object.js
     10A test/annexB/built-ins/RegExp/named-groups/groups-object.js
     11A test/annexB/built-ins/RegExp/named-groups/non-unicode-malformed-lookbehind.js
     12M test/annexB/built-ins/RegExp/named-groups/non-unicode-malformed.js
     13A test/annexB/language/expressions/assignment/dstr/array-pattern-emulates-undefined.js
     14A test/annexB/language/expressions/assignment/dstr/object-pattern-emulates-undefined.js
     15A test/annexB/language/expressions/yield/star-iterable-throw-emulates-undefined-throws-when-called.js
     16A test/annexB/language/statements/const/dstr/array-pattern-emulates-undefined.js
     17A test/annexB/language/statements/const/dstr/object-pattern-emulates-undefined.js
     18A test/annexB/language/statements/function/default-parameters-emulates-undefined.js
     19M test/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js
     20M test/built-ins/AsyncFromSyncIteratorPrototype/return/absent-value-not-passed.js
     21D test/built-ins/AsyncFromSyncIteratorPrototype/throw/absent-value-not-passed.js
     22M test/built-ins/Atomics/wait/bigint/negative-timeout-agent.js
     23M test/built-ins/Atomics/wait/bigint/no-spurious-wakeup-no-operation.js
     24M test/built-ins/Atomics/wait/negative-timeout-agent.js
     25M test/built-ins/Atomics/wait/no-spurious-wakeup-no-operation.js
     26M test/built-ins/Atomics/wait/validate-arraytype-before-index-coercion.js
     27A test/built-ins/Atomics/waitAsync/bad-range.js
     28A test/built-ins/Atomics/waitAsync/descriptor.js
     29A test/built-ins/Atomics/waitAsync/false-for-timeout-agent.js
     30A test/built-ins/Atomics/waitAsync/false-for-timeout.js
     31A test/built-ins/Atomics/waitAsync/good-views.js
     32A test/built-ins/Atomics/waitAsync/is-function.js
     33A test/built-ins/Atomics/waitAsync/length.js
     34A test/built-ins/Atomics/waitAsync/name.js
     35A test/built-ins/Atomics/waitAsync/nan-for-timeout-agent.js
     36A test/built-ins/Atomics/waitAsync/negative-index-throws.js
     37A test/built-ins/Atomics/waitAsync/negative-timeout-agent.js
     38A test/built-ins/Atomics/waitAsync/negative-timeout.js
     39A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-no-operation.js
     40A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-add.js
     41A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-and.js
     42A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-compareExchange.js
     43A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-exchange.js
     44A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-or.js
     45A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-store.js
     46A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-sub.js
     47A test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-xor.js
     48A test/built-ins/Atomics/waitAsync/non-int32-typedarray-throws.js
     49A test/built-ins/Atomics/waitAsync/non-shared-bufferdata-throws.js
     50A test/built-ins/Atomics/waitAsync/not-a-typedarray-throws.js
     51A test/built-ins/Atomics/waitAsync/not-an-object-throws.js
     52A test/built-ins/Atomics/waitAsync/null-bufferdata-throws.js
     53A test/built-ins/Atomics/waitAsync/null-for-timeout-agent.js
     54A test/built-ins/Atomics/waitAsync/null-for-timeout.js
     55A test/built-ins/Atomics/waitAsync/object-for-timeout-agent.js
     56A test/built-ins/Atomics/waitAsync/object-for-timeout.js
     57A test/built-ins/Atomics/waitAsync/out-of-range-index-throws.js
     58A test/built-ins/Atomics/waitAsync/poisoned-object-for-timeout-throws-agent.js
     59A test/built-ins/Atomics/waitAsync/poisoned-object-for-timeout-throws.js
     60A test/built-ins/Atomics/waitAsync/returns-result-object-value-is-promise-resolves-to-ok.js
     61A test/built-ins/Atomics/waitAsync/returns-result-object-value-is-promise-resolves-to-timed-out.js
     62A test/built-ins/Atomics/waitAsync/returns-result-object-value-is-string-not-equal.js
     63A test/built-ins/Atomics/waitAsync/returns-result-object-value-is-string-timed-out.js
     64A test/built-ins/Atomics/waitAsync/symbol-for-index-throws-agent.js
     65A test/built-ins/Atomics/waitAsync/symbol-for-index-throws.js
     66A test/built-ins/Atomics/waitAsync/symbol-for-timeout-throws-agent.js
     67A test/built-ins/Atomics/waitAsync/symbol-for-timeout-throws.js
     68A test/built-ins/Atomics/waitAsync/symbol-for-value-throws-agent.js
     69A test/built-ins/Atomics/waitAsync/symbol-for-value-throws.js
     70A test/built-ins/Atomics/waitAsync/true-for-timeout-agent.js
     71A test/built-ins/Atomics/waitAsync/true-for-timeout.js
     72A test/built-ins/Atomics/waitAsync/undefined-for-timeout-agent.js
     73A test/built-ins/Atomics/waitAsync/undefined-for-timeout.js
     74A test/built-ins/Atomics/waitAsync/undefined-index-defaults-to-zero-agent.js
     75A test/built-ins/Atomics/waitAsync/validate-arraytype-before-index-coercion.js
     76A test/built-ins/Atomics/waitAsync/validate-arraytype-before-timeout-coercion.js
     77A test/built-ins/Atomics/waitAsync/validate-arraytype-before-value-coercion.js
     78A test/built-ins/Atomics/waitAsync/value-not-equal-agent.js
     79A test/built-ins/Atomics/waitAsync/value-not-equal.js
     80A test/built-ins/Atomics/waitAsync/waiterlist-block-indexedposition-wake.js
     81A test/built-ins/Atomics/waitAsync/was-woken-before-timeout.js
     82M test/built-ins/Function/prototype/bind/get-fn-realm-recursive.js
     83M test/built-ins/Function/prototype/bind/get-fn-realm.js
     84A test/built-ins/NativeErrors/AggregateError/proto-from-ctor-realm.js
     85M test/built-ins/Object/prototype/toString/proxy-function.js
     86M test/built-ins/Object/prototype/toString/symbol-tag-non-str-proxy-function.js
     87M test/built-ins/Promise/all/invoke-resolve-get-once-no-calls.js
     88M test/built-ins/Proxy/get/trap-is-missing-target-is-proxy.js
     89M test/built-ins/Proxy/get-fn-realm-recursive.js
     90M test/built-ins/Proxy/get-fn-realm.js
     91M test/built-ins/Proxy/has/trap-is-missing-target-is-proxy.js
     92A test/built-ins/Proxy/revocable/builtin.js
     93A test/built-ins/Proxy/revocable/handler-is-revoked-proxy.js
     94M test/built-ins/Proxy/revocable/revocation-function-nonconstructor.js
     95A test/built-ins/Proxy/revocable/target-is-revoked-function-proxy.js
     96A test/built-ins/Proxy/revocable/target-is-revoked-proxy.js
     97M test/built-ins/Proxy/set/trap-is-missing-target-is-proxy.js
     98M test/built-ins/RegExp/lookBehind/sliced-strings.js
     99M test/built-ins/RegExp/match-indices/indices-groups-object.js
     100M test/built-ins/RegExp/named-groups/groups-object.js
     101A test/built-ins/RegExp/named-groups/non-unicode-property-names-invalid.js
     102A test/built-ins/RegExp/named-groups/non-unicode-property-names-valid.js
     103A test/built-ins/RegExp/named-groups/unicode-property-names-invalid.js
     104A test/built-ins/RegExp/named-groups/unicode-property-names-valid.js
     105A test/built-ins/RegExp/prototype/Symbol.replace/named-groups-fn.js
     106A test/built-ins/RegExp/prototype/Symbol.replace/named-groups.js
     107M test/built-ins/RegExp/prototype/Symbol.replace/result-coerce-groups-prop.js
     108A test/built-ins/String/prototype/match/cstm-matcher-is-null.js
     109A test/built-ins/String/prototype/replace/cstm-replace-is-null.js
     110A test/built-ins/String/prototype/replaceAll/searchValue-replacer-is-null.js
     111R097 test/built-ins/String/prototype/replaceAll/searchValue-replace-method-abrupt.js test/built-ins/String/prototype/replaceAll/searchValue-replacer-method-abrupt.js
     112A test/built-ins/String/prototype/search/cstm-search-is-null.js
     113A test/built-ins/String/prototype/split/cstm-split-is-null.js
     114A test/built-ins/Symbol/is-constructor.js
     115A test/intl402/Intl/getCanonicalLocales/complex-language-subtag-replacement.js
     116A test/intl402/Intl/getCanonicalLocales/complex-region-subtag-replacement.js
     117M test/intl402/Intl/getCanonicalLocales/non-iana-canon.js
     118M test/intl402/Intl/getCanonicalLocales/preferred-variant.js
     119A test/intl402/Intl/getCanonicalLocales/transformed-ext-canonical.js
     120A test/intl402/Intl/getCanonicalLocales/transformed-ext-invalid.js
     121A test/intl402/Intl/getCanonicalLocales/transformed-ext-valid.js
     122A test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-calendar.js
     123A test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-col-strength.js
     124A test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-measurement-system.js
     125A test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-region.js
     126A test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-subdivision.js
     127A test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-timezone.js
     128A test/intl402/Intl/getCanonicalLocales/unicode-ext-canonicalize-yes-to-true.js
     129A test/intl402/Intl/getCanonicalLocales/unicode-ext-key-with-digit.js
     130A test/intl402/Locale/constructor-apply-options-canonicalizes-twice.js
     131M test/intl402/Locale/constructor-non-iana-canon.js
     132A test/intl402/Locale/constructor-options-canonicalized.js
     133M test/intl402/Locale/extensions-grandfathered.js
     134M test/intl402/Locale/getters-grandfathered.js
     135M test/intl402/Locale/likely-subtags-grandfathered.js
     136M test/intl402/Locale/likely-subtags.js
     137A test/intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js
     138M test/intl402/NumberFormat/prototype/format/signDisplay-currency-de-DE.js
     139M test/intl402/NumberFormat/prototype/format/signDisplay-currency-en-US.js
     140M test/intl402/NumberFormat/prototype/format/signDisplay-currency-ja-JP.js
     141M test/intl402/NumberFormat/prototype/format/signDisplay-currency-ko-KR.js
     142M test/intl402/NumberFormat/prototype/format/signDisplay-currency-zh-TW.js
     143M test/intl402/NumberFormat/prototype/format/signDisplay-de-DE.js
     144M test/intl402/NumberFormat/prototype/format/signDisplay-en-US.js
     145M test/intl402/NumberFormat/prototype/format/signDisplay-ja-JP.js
     146M test/intl402/NumberFormat/prototype/format/signDisplay-ko-KR.js
     147M test/intl402/NumberFormat/prototype/format/signDisplay-zh-TW.js
     148M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-de-DE.js
     149M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-en-US.js
     150M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-ja-JP.js
     151M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-ko-KR.js
     152M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-zh-TW.js
     153M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-de-DE.js
     154M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-en-US.js
     155M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-ja-JP.js
     156M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-ko-KR.js
     157M test/intl402/NumberFormat/prototype/formatToParts/signDisplay-zh-TW.js
     158D test/language/literals/regexp/.DS_Store
     159M test/language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier.js
     160M test/language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3.js
     161M test/language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6.js
     162D test/language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier-2.js
     163D test/language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier.js
     164A test/language/literals/regexp/u-null-character-escape.js
     165M test/language/module-code/namespace/internals/set.js
  • trunk/JSTests/test262/test/annexB/built-ins/RegExp/match-indices/indices-groups-object.js

    r260590 r260591  
    44/*---
    55description: The groups object of indices is created with CreateDataProperty
    6 includes: [compareArray.js, propertyHelper.js]
     6includes: [compareArray.js]
    77esid: sec-makeindicesarray
    88features: [regexp-named-groups, regexp-match-indices]
     
    1616---*/
    1717
    18 
    19 // `groups` is created with Define, not Set.
    20 let counter = 0;
    21 Object.defineProperty(Array.prototype, "groups", {
    22   set() { counter++; }
    23 });
    24 
    25 let indices = /(?<x>.)/.exec("a").indices;
    26 assert.sameValue(counter, 0);
    27 
    28 // `groups` is writable, enumerable and configurable
    29 // (from CreateDataProperty).
    30 verifyProperty(indices, 'groups', {
    31     writable: true,
    32     enumerable: true,
    33     configurable: true
    34 });
    35 
    3618// The `__proto__` property on the groups object is not special,
    3719// and does not affect the [[Prototype]] of the resulting groups object.
  • trunk/JSTests/test262/test/annexB/built-ins/RegExp/named-groups/groups-object.js

    r260590 r260591  
    44/*---
    55description: Properties of the groups object are created with CreateDataProperty
    6 includes: [propertyHelper.js]
    76esid: sec-regexpbuiltinexec
    87features: [regexp-named-groups]
     
    1615---*/
    1716
    18 // `groups` is created with Define, not Set.
    19 let counter = 0;
    20 Object.defineProperty(Array.prototype, "groups", {
    21   set() { counter++; }
    22 });
    23 
    24 let match = /(?<x>.)/.exec("a");
    25 assert.sameValue(counter, 0);
    26 
    27 // `groups` is writable, enumerable and configurable
    28 // (from CreateDataProperty).
    29 verifyProperty(match, "groups", {
    30   writable: true,
    31   enumerable: true,
    32   configurable: true,
    33 });
    34 
    3517// The `__proto__` property on the groups object is not special,
    3618// and does not affect the [[Prototype]] of the resulting groups object.
  • trunk/JSTests/test262/test/annexB/built-ins/RegExp/named-groups/non-unicode-malformed.js

    r222311 r260591  
    77  compatibility escape fallback behavior.
    88esid: prod-GroupSpecifier
    9 features: [regexp-named-groups, regexp-lookbehind]
     9features: [regexp-named-groups]
    1010includes: [compareArray.js]
    1111---*/
     
    1818assert(/(?<a>\a)/.test("a"));
    1919
    20 assert(compareArray(["k<a>"], "xxxk<a>xxx".match(/\k<a>/)));
    21 assert(compareArray(["k<a"], "xxxk<a>xxx".match(/\k<a/)));
     20assert.compareArray(["k<a>"], "xxxk<a>xxx".match(/\k<a>/));
     21assert.compareArray(["k<a"], "xxxk<a>xxx".match(/\k<a/));
    2222
    23 // A couple of corner cases around '\k' as named back-references vs. identity
    24 // escapes.
    25 assert(/\k<a>(?<=>)a/.test("k<a>a"));
    26 assert(/\k<a>(?<!a)a/.test("k<a>a"));
    2723assert(/\k<a>(<a>x)/.test("k<a><a>x"));
     24assert(/\k<a>\1/.test("k<a>\x01"));
     25assert(/\1(b)\k<a>/.test("bk<a>"));
  • trunk/JSTests/test262/test/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js

    r259529 r260591  
    3030};
    3131
    32 var asyncIterator = (async function* () {
    33   yield* syncIterator;
    34 })();
     32(async function () {
     33  for await (let _ of syncIterator);
    3534
    36 asyncIterator.next().then(function() {
    3735  assert.sameValue(nextArgumentsLength, 0);
    38 }).then($DONE, $DONE);
     36})().then($DONE, $DONE);
  • trunk/JSTests/test262/test/built-ins/AsyncFromSyncIteratorPrototype/return/absent-value-not-passed.js

    r259529 r260591  
    3333};
    3434
    35 var asyncIterator = (async function* () {
    36   yield* syncIterator;
    37 })();
     35(async function () {
     36  for await (let _ of syncIterator) {
     37    break;
     38  }
    3839
    39 asyncIterator.next().then(function() {
    40   return asyncIterator.return();
    41 }).then(function() {
    4240  assert.sameValue(returnArgumentsLength, 0);
    43 }).then($DONE, $DONE);
     41})().then($DONE, $DONE);
  • trunk/JSTests/test262/test/built-ins/Atomics/wait/bigint/negative-timeout-agent.js

    r239425 r260591  
    1717
    1818$262.agent.start(`
    19   $262.agent.receiveBroadcast(function(sab, id) {
     19  $262.agent.receiveBroadcast(function(sab) {
    2020    const i64a = new BigInt64Array(sab);
    2121    Atomics.add(i64a, ${RUNNING}, 1n);
  • trunk/JSTests/test262/test/built-ins/Atomics/wait/bigint/no-spurious-wakeup-no-operation.js

    r239425 r260591  
    2525
    2626$262.agent.start(`
    27   $262.agent.receiveBroadcast(function(sab, id) {
     27  $262.agent.receiveBroadcast(function(sab) {
    2828    const i64a = new BigInt64Array(sab);
    2929    Atomics.add(i64a, ${RUNNING}, 1n);
  • trunk/JSTests/test262/test/built-ins/Atomics/wait/negative-timeout-agent.js

    r239425 r260591  
    1313
    1414$262.agent.start(`
    15   $262.agent.receiveBroadcast(function(sab, id) {
     15  $262.agent.receiveBroadcast(function(sab) {
    1616    var i32a = new Int32Array(sab);
    1717    Atomics.add(i32a, ${RUNNING}, 1);
  • trunk/JSTests/test262/test/built-ins/Atomics/wait/no-spurious-wakeup-no-operation.js

    r239425 r260591  
    2525
    2626$262.agent.start(`
    27   $262.agent.receiveBroadcast(function(sab, id) {
     27  $262.agent.receiveBroadcast(function(sab) {
    2828    const i32a = new Int32Array(sab);
    2929    Atomics.add(i32a, ${RUNNING}, 1);
  • trunk/JSTests/test262/test/built-ins/Atomics/wait/validate-arraytype-before-index-coercion.js

    r250571 r260591  
    33
    44/*---
    5 esid: sec-atomics.notify
     5esid: sec-atomics.wait
    66description: >
    77  TypedArray type is validated before `index` argument is coerced.
  • trunk/JSTests/test262/test/built-ins/Function/prototype/bind/get-fn-realm-recursive.js

    r246499 r260591  
    44esid: sec-getfunctionrealm
    55description: >
    6     The realm of a bound function exotic object is the realm of its target
    7     function. GetFunctionRealm is called recursively.
     6  The realm of a bound function exotic object is the realm of its target function.
     7  GetFunctionRealm is called recursively.
    88info: |
    9     7.3.22 GetFunctionRealm ( obj )
     9  Object ( [ value ] )
    1010
    11     [...]
    12     2. If obj has a [[Realm]] internal slot, then
    13        a. Return obj.[[Realm]].
    14     3. If obj is a Bound Function exotic object, then
    15        a. Let target be obj.[[BoundTargetFunction]].
    16        b. Return ? GetFunctionRealm(target).
    17 features: [cross-realm]
     11  1. If NewTarget is neither undefined nor the active function, then
     12    a. Return ? OrdinaryCreateFromConstructor(NewTarget, "%Object.prototype%").
     13
     14  OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] )
     15
     16  [...]
     17  2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto).
     18  3. Return OrdinaryObjectCreate(proto, internalSlotsList).
     19
     20  GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto )
     21
     22  [...]
     23  3. Let proto be ? Get(constructor, "prototype").
     24  4. If Type(proto) is not Object, then
     25    a. Let realm be ? GetFunctionRealm(constructor).
     26    b. Set proto to realm's intrinsic object named intrinsicDefaultProto.
     27  5. Return proto.
     28
     29  GetFunctionRealm ( obj )
     30
     31  [...]
     32  2. If obj has a [[Realm]] internal slot, then
     33    a. Return obj.[[Realm]].
     34  3. If obj is a bound function exotic object, then
     35    a. Let target be obj.[[BoundTargetFunction]].
     36    b. Return ? GetFunctionRealm(target).
     37features: [cross-realm, Reflect]
    1838---*/
    1939
    20 var other = $262.createRealm().global;
    21 var C = new other.Function();
    22 C.prototype = null;
    23 var B = C.bind().bind();
     40var realm1 = $262.createRealm().global;
     41var realm2 = $262.createRealm().global;
     42var realm3 = $262.createRealm().global;
     43var realm4 = $262.createRealm().global;
    2444
    25 assert.sameValue(Object.getPrototypeOf(new B()), other.Object.prototype);
     45var newTarget = new realm1.Function();
     46newTarget.prototype = 1;
     47
     48var boundNewTarget = realm2.Function.prototype.bind.call(newTarget);
     49var boundBoundNewTarget = realm3.Function.prototype.bind.call(boundNewTarget);
     50var object = Reflect.construct(realm4.Object, [], boundBoundNewTarget);
     51
     52assert(object instanceof realm1.Object);
     53assert.sameValue(Object.getPrototypeOf(object), realm1.Object.prototype);
  • trunk/JSTests/test262/test/built-ins/Function/prototype/bind/get-fn-realm.js

    r250571 r260591  
    44esid: sec-getfunctionrealm
    55description: >
    6     The realm of a bound function exotic object is the realm of its target
    7     function
     6  The realm of a bound function exotic object is the realm of its target function.
    87info: |
    9     7.3.22 GetFunctionRealm ( obj )
     8  Date ( )
    109
     10  [...]
     11  3. If NewTarget is undefined, then
    1112    [...]
    12     2. If obj has a [[Realm]] internal slot, then
    13        a. Return obj.[[Realm]].
    14     3. If obj is a Bound Function exotic object, then
    15        a. Let target be obj.[[BoundTargetFunction]].
    16        b. Return ? GetFunctionRealm(target).
    17 features: [cross-realm]
     13  4. Else,
     14    a. Let O be ? OrdinaryCreateFromConstructor(NewTarget, "%Date.prototype%", « [[DateValue]] »).
     15    [...]
     16    c. Return O.
     17
     18  OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] )
     19
     20  [...]
     21  2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto).
     22  3. Return OrdinaryObjectCreate(proto, internalSlotsList).
     23
     24  GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto )
     25
     26  [...]
     27  3. Let proto be ? Get(constructor, "prototype").
     28  4. If Type(proto) is not Object, then
     29    a. Let realm be ? GetFunctionRealm(constructor).
     30    b. Set proto to realm's intrinsic object named intrinsicDefaultProto.
     31  5. Return proto.
     32
     33  GetFunctionRealm ( obj )
     34
     35  [...]
     36  2. If obj has a [[Realm]] internal slot, then
     37    a. Return obj.[[Realm]].
     38  3. If obj is a bound function exotic object, then
     39    a. Let target be obj.[[BoundTargetFunction]].
     40    b. Return ? GetFunctionRealm(target).
     41features: [cross-realm, Reflect]
    1842---*/
    1943
    20 var other = $262.createRealm().global;
    21 var C = new other.Function();
    22 C.prototype = null;
    23 var B = C.bind();
     44var realm1 = $262.createRealm().global;
     45var realm2 = $262.createRealm().global;
     46var realm3 = $262.createRealm().global;
    2447
    25 assert.sameValue(Object.getPrototypeOf(new B()), other.Object.prototype);
     48var newTarget = new realm1.Function();
     49newTarget.prototype = "str";
     50
     51var boundNewTarget = realm2.Function.prototype.bind.call(newTarget);
     52var date = Reflect.construct(realm3.Date, [], boundNewTarget);
     53
     54assert(date instanceof realm1.Date);
     55assert.sameValue(Object.getPrototypeOf(date), realm1.Date.prototype);
  • trunk/JSTests/test262/test/built-ins/Object/prototype/toString/proxy-function.js

    r250571 r260591  
    1 // Copyright (C) 2016 the Apple Inc. All rights reserved.
     1// Copyright (C) 2016 Apple Inc. All rights reserved.
    22// This code is governed by the BSD license found in the LICENSE file.
    33/*---
  • trunk/JSTests/test262/test/built-ins/Object/prototype/toString/symbol-tag-non-str-proxy-function.js

    r247469 r260591  
    1 // Copyright (C) 2016 the Apple Inc. All rights reserved.
     1// Copyright (C) 2016 Apple Inc. All rights reserved.
    22// This code is governed by the BSD license found in the LICENSE file.
    33/*---
  • trunk/JSTests/test262/test/built-ins/Promise/all/invoke-resolve-get-once-no-calls.js

    r245188 r260591  
    55description: >
    66  Gets constructor's `resolve` method once from zero to many invocations.
    7 esid: sec-promise.allsettled
     7esid: sec-promise.all
    88info: |
    99  Runtime Semantics: PerformPromiseAll
     
    1515    ...
    1616    1. Let nextPromise be ? Call(promiseResolve, constructor, &laquo; nextValue &raquo;).
    17 features: [Promise.allSettled]
     17features: [Promise.all]
    1818---*/
    1919
  • trunk/JSTests/test262/test/built-ins/Proxy/get-fn-realm-recursive.js

    r246499 r260591  
    44esid: sec-getfunctionrealm
    55description: >
    6     The realm of a proxy exotic object is the realm of its target function.
    7     GetFunctionRealm is called recursively.
     6  The realm of a Proxy exotic object is the realm of its target function.
     7  GetFunctionRealm is called recursively.
    88info: |
    9     7.3.22 GetFunctionRealm ( obj )
     9  Boolean ( value )
    1010
     11  [...]
     12  3. Let O be ? OrdinaryCreateFromConstructor(NewTarget, "%Boolean.prototype%", « [[BooleanData]] »).
     13  [...]
     14  5. Return O.
     15
     16  OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] )
     17
     18  [...]
     19  2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto).
     20  3. Return OrdinaryObjectCreate(proto, internalSlotsList).
     21
     22  GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto )
     23
     24  [...]
     25  3. Let proto be ? Get(constructor, "prototype").
     26  4. If Type(proto) is not Object, then
     27    a. Let realm be ? GetFunctionRealm(constructor).
     28    b. Set proto to realm's intrinsic object named intrinsicDefaultProto.
     29  5. Return proto.
     30
     31  GetFunctionRealm ( obj )
     32
     33  [...]
     34  2. If obj has a [[Realm]] internal slot, then
     35    a. Return obj.[[Realm]].
     36  [...]
     37  4. If obj is a Proxy exotic object, then
    1138    [...]
    12     2. If obj has a [[Realm]] internal slot, then
    13        a. Return obj.[[Realm]].
    14     [...]
    15     4. If obj is a Proxy exotic object, then
    16        a. If obj.[[ProxyHandler]] is null, throw a TypeError exception.
    17        b. Let proxyTarget be obj.[[ProxyTarget]].
    18        c. Return ? GetFunctionRealm(proxyTarget).
    19 features: [cross-realm, Proxy]
     39    b. Let proxyTarget be obj.[[ProxyTarget]].
     40    c. Return ? GetFunctionRealm(proxyTarget).
     41features: [cross-realm, Reflect, Proxy]
    2042---*/
    2143
    22 var other = $262.createRealm().global;
    23 var C = new other.Function();
    24 C.prototype = null;
    25 var P = new Proxy(new Proxy(C, {}), {});
     44var realm1 = $262.createRealm().global;
     45var realm2 = $262.createRealm().global;
     46var realm3 = $262.createRealm().global;
     47var realm4 = $262.createRealm().global;
    2648
    27 assert.sameValue(Object.getPrototypeOf(new P()), other.Object.prototype);
     49var newTarget = new realm1.Function();
     50newTarget.prototype = null;
     51
     52var newTargetProxy = new realm2.Proxy(newTarget, {});
     53var newTargetProxyProxy = new realm3.Proxy(newTargetProxy, {});
     54var boolean = Reflect.construct(realm4.Boolean, [], newTargetProxyProxy);
     55
     56assert(boolean instanceof realm1.Boolean);
     57assert.sameValue(Object.getPrototypeOf(boolean), realm1.Boolean.prototype);
  • trunk/JSTests/test262/test/built-ins/Proxy/get-fn-realm.js

    r250571 r260591  
    44esid: sec-getfunctionrealm
    55description: >
    6     The realm of a proxy exotic object is the realm of its target function
     6  The realm of a Proxy exotic object is the realm of its target function.
    77info: |
    8     7.3.22 GetFunctionRealm ( obj )
     8  Array ( )
    99
     10  [...]
     11  4. Let proto be ? GetPrototypeFromConstructor(newTarget, "%Array.prototype%").
     12  5. Return ! ArrayCreate(0, proto).
     13
     14  OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] )
     15
     16  [...]
     17  2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto).
     18  3. Return OrdinaryObjectCreate(proto, internalSlotsList).
     19
     20  GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto )
     21
     22  [...]
     23  3. Let proto be ? Get(constructor, "prototype").
     24  4. If Type(proto) is not Object, then
     25    a. Let realm be ? GetFunctionRealm(constructor).
     26    b. Set proto to realm's intrinsic object named intrinsicDefaultProto.
     27  5. Return proto.
     28
     29  GetFunctionRealm ( obj )
     30
     31  [...]
     32  2. If obj has a [[Realm]] internal slot, then
     33    a. Return obj.[[Realm]].
     34  [...]
     35  4. If obj is a Proxy exotic object, then
    1036    [...]
    11     2. If obj has a [[Realm]] internal slot, then
    12        a. Return obj.[[Realm]].
    13     [...]
    14     4. If obj is a Proxy exotic object, then
    15        a. If obj.[[ProxyHandler]] is null, throw a TypeError exception.
    16        b. Let proxyTarget be obj.[[ProxyTarget]].
    17        c. Return ? GetFunctionRealm(proxyTarget).
    18 features: [cross-realm, Proxy]
     37    b. Let proxyTarget be obj.[[ProxyTarget]].
     38    c. Return ? GetFunctionRealm(proxyTarget).
     39features: [cross-realm, Reflect, Proxy]
    1940---*/
    2041
    21 var other = $262.createRealm().global;
    22 var C = new other.Function();
    23 C.prototype = null;
    24 var P = new Proxy(C, {});
     42var realm1 = $262.createRealm().global;
     43var realm2 = $262.createRealm().global;
     44var realm3 = $262.createRealm().global;
    2545
    26 assert.sameValue(Object.getPrototypeOf(new P()), other.Object.prototype);
     46var newTarget = new realm1.Function();
     47newTarget.prototype = false;
     48
     49var newTargetProxy = new realm2.Proxy(newTarget, {});
     50var array = Reflect.construct(realm3.Array, [], newTargetProxy);
     51
     52assert(array instanceof realm1.Array);
     53assert.sameValue(Object.getPrototypeOf(array), realm1.Array.prototype);
  • trunk/JSTests/test262/test/built-ins/Proxy/get/trap-is-missing-target-is-proxy.js

    r258943 r260591  
    3030
    3131assert.sameValue(Object.create(functionProxy).length, 1);
    32 assert.sameValue(functionProxy.__proto__, Function.prototype);
  • trunk/JSTests/test262/test/built-ins/Proxy/has/trap-is-missing-target-is-proxy.js

    r258943 r260591  
    3030var functionProxy = new Proxy(functionTarget, {});
    3131
    32 assert("__proto__" in functionProxy);
     32assert("name" in functionProxy);
    3333assert("length" in Object.create(functionProxy));
  • trunk/JSTests/test262/test/built-ins/Proxy/revocable/revocation-function-nonconstructor.js

    r239425 r260591  
    33
    44/*---
    5 es6id: 26.2.2.1.1
     5esid: sec-proxy.revocable
    66description: Proxy Revocation functions are not constructors
    77info: |
     
    1010    implement the [[Construct]] internal method unless otherwise specified
    1111    in the description of a particular function.
    12 features: [Proxy]
     12includes: [isConstructor.js]
     13features: [Proxy, Reflect.construct]
    1314---*/
    1415
     
    1617
    1718assert.sameValue(Object.prototype.hasOwnProperty.call(revocationFunction, "prototype"), false);
    18 assert.throws(TypeError, function() {
    19   new revocationFunction();
    20 });
     19assert.sameValue(isConstructor(revocationFunction), false);
  • trunk/JSTests/test262/test/built-ins/Proxy/set/trap-is-missing-target-is-proxy.js

    r258943 r260591  
    4646regExpProxy.lastIndex = 1;
    4747assert.sameValue(regExp.lastIndex, 1);
    48 
    49 regExpProxy.__proto__ = null;
    50 assert.sameValue(Object.getPrototypeOf(regExp), null);
  • trunk/JSTests/test262/test/built-ins/RegExp/lookBehind/sliced-strings.js

    r222311 r260591  
    1515---*/
    1616
    17 var oob_subject = "abcdefghijklmnabcdefghijklmn".substr(14);
     17var oob_subject = "abcdefghijklmnabcdefghijklmn".slice(14);
    1818assert.sameValue(oob_subject.match(/(?=(abcdefghijklmn))(?<=\1)a/i), null, "");
    1919assert.sameValue(oob_subject.match(/(?=(abcdefghijklmn))(?<=\1)a/), null, "");
    20 assert.sameValue("abcdefgabcdefg".substr(1).match(/(?=(abcdefg))(?<=\1)/), null, "");
     20assert.sameValue("abcdefgabcdefg".slice(1).match(/(?=(abcdefg))(?<=\1)/), null, "");
  • trunk/JSTests/test262/test/built-ins/RegExp/match-indices/indices-groups-object.js

    r254017 r260591  
    44/*---
    55description: The groups object of indices is created with CreateDataProperty
    6 includes: [compareArray.js, propertyHelper.js]
     6includes: [propertyHelper.js]
    77esid: sec-makeindicesarray
    88features: [regexp-named-groups, regexp-match-indices]
     
    3333    configurable: true
    3434});
    35 
    36 // The `__proto__` property on the groups object is not special,
    37 // and does not affect the [[Prototype]] of the resulting groups object.
    38 let {groups} = /(?<__proto__>.)/.exec("a").indices;
    39 assert.compareArray([0, 1], groups.__proto__);
    40 assert.sameValue(null, Object.getPrototypeOf(groups));
  • trunk/JSTests/test262/test/built-ins/RegExp/named-groups/groups-object.js

    r228028 r260591  
    3232  configurable: true,
    3333});
    34 
    35 // The `__proto__` property on the groups object is not special,
    36 // and does not affect the [[Prototype]] of the resulting groups object.
    37 let {groups} = /(?<__proto__>.)/.exec("a");
    38 assert.sameValue("a", groups.__proto__);
    39 assert.sameValue(null, Object.getPrototypeOf(groups));
  • trunk/JSTests/test262/test/built-ins/RegExp/prototype/Symbol.replace/result-coerce-groups-prop.js

    r258943 r260591  
    5959      },
    6060    },
     61    bar: null,
    6162  },
    6263};
     
    6768
    6869assert.sameValue(r[Symbol.replace]('ab', '[$<foo>]'), '[toString value]b');
     70assert.sameValue(r[Symbol.replace]('ab', '[$<bar>]'), '[null]b');
  • trunk/JSTests/test262/test/built-ins/String/prototype/replaceAll/searchValue-replacer-method-abrupt.js

    r260590 r260591  
    55esid: sec-string.prototype.replaceall
    66description: >
    7   Return abrupt completion from GetMethod(searchValeu @@replace)
     7  Return abrupt completion from GetMethod(searchValue.@@replace)
    88info: |
    99  String.prototype.replaceAll ( searchValue, replaceValue )
  • trunk/JSTests/test262/test/intl402/Intl/getCanonicalLocales/non-iana-canon.js

    r248115 r260591  
    6262    },
    6363    {
    64         // ECMA-402 currently requires that variant subtags are not canonicalized.
    65         // https://github.com/tc39/ecma402/issues/330
    6664        tag: "hy-arevela",
    67         canonical: "hy-arevela",
     65        canonical: "hy",
    6866    },
    6967    {
    70         // ECMA-402 currently requires that variant subtags are not canonicalized.
    71         // https://github.com/tc39/ecma402/issues/330
    7268        tag: "hy-arevmda",
    73         canonical: "hy-arevmda",
     69        canonical: "hyw",
    7470    },
    7571];
  • trunk/JSTests/test262/test/intl402/Intl/getCanonicalLocales/preferred-variant.js

    r248115 r260591  
    3737---*/
    3838
    39 // Generated from http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry
    40 // File-Date: 2017-08-15
     39// Generated from https://github.com/unicode-org/cldr/blob/master/common/supplemental/supplementalMetadata.xml
     40// File-Date: 2020-03-30
    4141var canonicalizedTags = {
    42   // ECMA-402 currently requires that variant subtags are not canonicalized.
    43   // https://github.com/tc39/ecma402/issues/330
    44   "ja-latn-hepburn-heploc": "ja-Latn-hepburn-heploc",
     42  "ja-latn-hepburn-heploc": "ja-Latn-alalc97-hepburn",
    4543};
    4644
  • trunk/JSTests/test262/test/intl402/Locale/constructor-non-iana-canon.js

    r248115 r260591  
    8080    },
    8181    {
    82         // ECMA-402 currently requires that variant subtags are not canonicalized.
    83         // https://github.com/tc39/ecma402/issues/330
    8482        tag: "hy-arevela",
    85         canonical: "hy-arevela",
    86         maximized: "hy-Armn-AM-arevela",
     83        canonical: "hy",
     84        maximized: "hy-Armn-AM",
    8785    },
    8886    {
    89         // ECMA-402 currently requires that variant subtags are not canonicalized.
    90         // https://github.com/tc39/ecma402/issues/330
    9187        tag: "hy-arevmda",
    92         canonical: "hy-arevmda",
    93         maximized: "hy-Armn-AM-arevmda",
     88        canonical: "hyw",
    9489    },
    9590];
  • trunk/JSTests/test262/test/intl402/Locale/extensions-grandfathered.js

    r240754 r260591  
    2323
    2424const testData = [
     25    // Regular grandfathered without modern replacement.
     26    {
     27        tag: "cel-gaulish",
     28        options: {
     29            language: "fr",
     30            script: "Cyrl",
     31            region: "FR",
     32            numberingSystem: "latn",
     33        },
     34        canonical: "fr-Cyrl-FR-u-nu-latn-x-cel-gaulish",
     35    },
     36
    2537    // Regular grandfathered with modern replacement.
    2638    {
  • trunk/JSTests/test262/test/intl402/Locale/getters-grandfathered.js

    r240754 r260591  
    2727
    2828// Regular grandfathered language tag.
     29var loc = new Intl.Locale("cel-gaulish");
     30assert.sameValue(loc.baseName, "xtg");
     31assert.sameValue(loc.language, "xtg");
     32assert.sameValue(loc.script, undefined);
     33assert.sameValue(loc.region, undefined);
     34
     35// Regular grandfathered language tag.
    2936assert.throws(RangeError, () => new Intl.Locale("zh-min"));
    3037
  • trunk/JSTests/test262/test/intl402/Locale/likely-subtags-grandfathered.js

    r248115 r260591  
    6868    },
    6969    {
     70        tag: "cel-gaulish",
     71        canonical: "xtg-x-cel-gaulish",
     72    },
     73    {
    7074        tag: "zh-guoyu",
    7175        canonical: "zh",
  • trunk/JSTests/test262/test/intl402/Locale/likely-subtags.js

    r240754 r260591  
    3838    "und-150": "ru-Cyrl-RU",
    3939    "und-AT": "de-Latn-AT",
     40    "und-Cyrl-RO": "bg-Cyrl-RO",
     41
     42    // Undefined primary language not required to change in all cases.
     43    "und-AQ": "und-Latn-AQ",
    4044};
    4145
     
    6367    "ru-Cyrl-RU": "ru",
    6468    "de-Latn-AT": "de-AT",
     69    "bg-Cyrl-RO": "bg-RO",
     70    "und-Latn-AQ": "und-AQ",
    6571};
    6672
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-currency-de-DE.js

    r250571 r260591  
    4141    "exceptZero",
    4242    "-987,00 $",
    43     "-0,00 $",
    44     "-0,00 $",
    4543    "0,00 $",
    46     "+0,00 $",
     44    "0,00 $",
     45    "0,00 $",
     46    "0,00 $",
    4747    "+987,00 $",
    4848  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-currency-en-US.js

    r250571 r260591  
    4141    "exceptZero",
    4242    "($987.00)",
    43     "($0.00)",
    44     "($0.00)",
    4543    "$0.00",
    46     "+$0.00",
     44    "$0.00",
     45    "$0.00",
     46    "$0.00",
    4747    "+$987.00",
    4848  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-currency-ja-JP.js

    r250571 r260591  
    4141    "exceptZero",
    4242    "($987.00)",
    43     "($0.00)",
    44     "($0.00)",
    4543    "$0.00",
    46     "+$0.00",
     44    "$0.00",
     45    "$0.00",
     46    "$0.00",
    4747    "+$987.00",
    4848  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-currency-ko-KR.js

    r250571 r260591  
    4141    "exceptZero",
    4242    "(US$987.00)",
    43     "(US$0.00)",
    44     "(US$0.00)",
    4543    "US$0.00",
    46     "+US$0.00",
     44    "US$0.00",
     45    "US$0.00",
     46    "US$0.00",
    4747    "+US$987.00",
    4848  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-currency-zh-TW.js

    r250571 r260591  
    4141    "exceptZero",
    4242    "(US$987.00)",
    43     "(US$0.00)",
    44     "(US$0.00)",
    4543    "US$0.00",
    46     "+US$0.00",
     44    "US$0.00",
     45    "US$0.00",
     46    "US$0.00",
    4747    "+US$987.00",
    4848  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-de-DE.js

    r257590 r260591  
    5151    "-∞",
    5252    "-987",
    53     "-0",
    54     "-0",
     53    "0",
     54    "0",
    5555    "0",
    5656    "0",
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-en-US.js

    r257590 r260591  
    5151    "-∞",
    5252    "-987",
    53     "-0",
    54     "-0",
     53    "0",
     54    "0",
    5555    "0",
    5656    "0",
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-ja-JP.js

    r257590 r260591  
    5151    "-∞",
    5252    "-987",
    53     "-0",
    54     "-0",
     53    "0",
     54    "0",
    5555    "0",
    5656    "0",
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-ko-KR.js

    r257590 r260591  
    5151    "-∞",
    5252    "-987",
    53     "-0",
    54     "-0",
     53    "0",
     54    "0",
    5555    "0",
    5656    "0",
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/format/signDisplay-zh-TW.js

    r257590 r260591  
    5151    "-∞",
    5252    "-987",
    53     "-0",
    54     "-0",
     53    "0",
     54    "0",
    5555    "0",
    5656    "0",
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-de-DE.js

    r250571 r260591  
    5151    "exceptZero",
    5252    [{"type":"minusSign","value":"-"},{"type":"integer","value":"987"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
    53     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
    54     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
    5553    [{"type":"integer","value":"0"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
    56     [{"type":"plusSign","value":"+"},{"type":"integer","value":"0"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
     54    [{"type":"integer","value":"0"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
     55    [{"type":"integer","value":"0"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
     56    [{"type":"integer","value":"0"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
    5757    [{"type":"plusSign","value":"+"},{"type":"integer","value":"987"},{"type":"decimal","value":","},{"type":"fraction","value":"00"},{"type":"literal","value":" "},{"type":"currency","value":"$"}],
    5858  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-en-US.js

    r250571 r260591  
    5151    "exceptZero",
    5252    [{"type":"literal","value":"("},{"type":"currency","value":"$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    53     [{"type":"literal","value":"("},{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    54     [{"type":"literal","value":"("},{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    5553    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    56     [{"type":"plusSign","value":"+"},{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     54    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     55    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     56    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5757    [{"type":"plusSign","value":"+"},{"type":"currency","value":"$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5858  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-ja-JP.js

    r250571 r260591  
    5151    "exceptZero",
    5252    [{"type":"literal","value":"("},{"type":"currency","value":"$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    53     [{"type":"literal","value":"("},{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    54     [{"type":"literal","value":"("},{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    5553    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    56     [{"type":"plusSign","value":"+"},{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     54    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     55    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     56    [{"type":"currency","value":"$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5757    [{"type":"plusSign","value":"+"},{"type":"currency","value":"$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5858  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-ko-KR.js

    r250571 r260591  
    5151    "exceptZero",
    5252    [{"type":"literal","value":"("},{"type":"currency","value":"US$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    53     [{"type":"literal","value":"("},{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    54     [{"type":"literal","value":"("},{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    5553    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    56     [{"type":"plusSign","value":"+"},{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     54    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     55    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     56    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5757    [{"type":"plusSign","value":"+"},{"type":"currency","value":"US$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5858  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-zh-TW.js

    r250571 r260591  
    5151    "exceptZero",
    5252    [{"type":"literal","value":"("},{"type":"currency","value":"US$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    53     [{"type":"literal","value":"("},{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    54     [{"type":"literal","value":"("},{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"},{"type":"literal","value":")"}],
    5553    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    56     [{"type":"plusSign","value":"+"},{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     54    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     55    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
     56    [{"type":"currency","value":"US$"},{"type":"integer","value":"0"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5757    [{"type":"plusSign","value":"+"},{"type":"currency","value":"US$"},{"type":"integer","value":"987"},{"type":"decimal","value":"."},{"type":"fraction","value":"00"}],
    5858  ],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-de-DE.js

    r257590 r260591  
    6161    [{"type":"minusSign","value":"-"},{"type":"infinity","value":"∞"}],
    6262    [{"type":"minusSign","value":"-"},{"type":"integer","value":"987"}],
    63     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
    64     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
     63    [{"type":"integer","value":"0"}],
     64    [{"type":"integer","value":"0"}],
    6565    [{"type":"integer","value":"0"}],
    6666    [{"type":"integer","value":"0"}],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-en-US.js

    r257590 r260591  
    6161    [{"type":"minusSign","value":"-"},{"type":"infinity","value":"∞"}],
    6262    [{"type":"minusSign","value":"-"},{"type":"integer","value":"987"}],
    63     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
    64     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
     63    [{"type":"integer","value":"0"}],
     64    [{"type":"integer","value":"0"}],
    6565    [{"type":"integer","value":"0"}],
    6666    [{"type":"integer","value":"0"}],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-ja-JP.js

    r257590 r260591  
    6161    [{"type":"minusSign","value":"-"},{"type":"infinity","value":"∞"}],
    6262    [{"type":"minusSign","value":"-"},{"type":"integer","value":"987"}],
    63     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
    64     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
     63    [{"type":"integer","value":"0"}],
     64    [{"type":"integer","value":"0"}],
    6565    [{"type":"integer","value":"0"}],
    6666    [{"type":"integer","value":"0"}],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-ko-KR.js

    r257590 r260591  
    6161    [{"type":"minusSign","value":"-"},{"type":"infinity","value":"∞"}],
    6262    [{"type":"minusSign","value":"-"},{"type":"integer","value":"987"}],
    63     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
    64     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
     63    [{"type":"integer","value":"0"}],
     64    [{"type":"integer","value":"0"}],   
    6565    [{"type":"integer","value":"0"}],
    6666    [{"type":"integer","value":"0"}],
  • trunk/JSTests/test262/test/intl402/NumberFormat/prototype/formatToParts/signDisplay-zh-TW.js

    r257590 r260591  
    6161    [{"type":"minusSign","value":"-"},{"type":"infinity","value":"∞"}],
    6262    [{"type":"minusSign","value":"-"},{"type":"integer","value":"987"}],
    63     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
    64     [{"type":"minusSign","value":"-"},{"type":"integer","value":"0"}],
     63    [{"type":"integer","value":"0"}],
     64    [{"type":"integer","value":"0"}],
    6565    [{"type":"integer","value":"0"}],
    6666    [{"type":"integer","value":"0"}],
  • trunk/JSTests/test262/test/language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier.js

    r239425 r260591  
    1313$DONOTEVALUATE();
    1414
    15 /(?<$𐒤>a)/;
     15/(?<$>a)/;
  • trunk/JSTests/test262/test/language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3.js

    r239425 r260591  
    1313$DONOTEVALUATE();
    1414
    15 /(?<a\uD801\uDCA4>.)/;
     15/(?<a\uD83D\uDF12>.)/;
  • trunk/JSTests/test262/test/language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6.js

    r239425 r260591  
    1313$DONOTEVALUATE();
    1414
    15 /(?<a\u{104A4}>.)/;
     15/(?<a\u{1F08B}>.)/;
  • trunk/JSTests/test262/test/language/module-code/namespace/internals/set.js

    r222311 r260591  
    1010---*/
    1111
    12 import * as ns from './define-own-property.js';
     12import * as ns from './set.js';
    1313export var local1 = null;
    1414var local2 = null;
    1515export { local2 as renamed };
    16 export { local1 as indirect } from './define-own-property.js';
     16export { local1 as indirect } from './set.js';
    1717var sym = Symbol('test262');
    1818
  • trunk/JSTests/test262/test262-Revision.txt

    r259529 r260591  
    11test262 remote url: git@github.com:tc39/test262.git
    2 test262 revision: 62b8fce3897152da2cc4f8bd1e27878a409ab975
     2test262 revision: 31dabb5618e2393e7a67b8dd724c95ef89000613
Note: See TracChangeset for help on using the changeset viewer.