From 338370e6acb9973646fbb42ee947f42f57b034fe Mon Sep 17 00:00:00 2001 From: test262-automation <test262-automation@bocoup.com> Date: Sat, 15 Dec 2018 19:18:07 +0000 Subject: [PATCH] [v8-test262-automation] Updated curation log with latest revision sha's from export and changed files. sourceRevisionAtLastExport: 44b1b245 targetRevisionAtLastExport: ae464533ad --- .../curation_logs/v8.json | 4 +- .../v8/intl/collator/check-co-option.js | 33 ++ .../v8/intl/collator/check-kf-option.js | 36 ++ .../v8/intl/collator/check-kn-option.js | 29 ++ .../v8/intl/date-format/check-ca-option.js | 51 ++ .../v8/intl/date-format/check-hc-option.js | 41 ++ .../v8/intl/date-format/check-nu-option.js | 59 +++ .../v8/intl/number-format/check-nu-option.js | 59 +++ .../v8/intl/regress-7481.js | 39 ++ .../v8/intl/segmenter/check-lb-option.js | 41 ++ .../v8/mjsunit/array-indexing-receiver.js | 18 +- .../v8/mjsunit/asm/regress-913822.js | 25 + .../v8/mjsunit/code-coverage-block.js | 2 +- .../v8/mjsunit/compiler/dataview-neutered.js | 38 +- .../v8/mjsunit/compiler/regress-913232.js | 14 + .../v8/mjsunit/es6/classes.js | 35 +- .../es6/typedarray-construct-by-array-like.js | 4 +- .../v8/mjsunit/es6/typedarray-neutered.js | 4 +- .../v8/mjsunit/es6/typedarray-reduce.js | 4 +- .../v8/mjsunit/es6/typedarray.js | 8 +- .../v8/mjsunit/es7/array-includes-receiver.js | 18 +- .../mjsunit/harmony/regress/regress-912504.js | 11 + .../string-matchAll-deleted-matchAll.js | 9 + .../v8/mjsunit/messages.js | 8 +- .../v8/mjsunit/mjsunit.status | 20 +- .../v8/mjsunit/regress/regress-7773.js | 71 +++ .../mjsunit/regress/regress-crbug-913212.js | 11 + .../mjsunit/regress/regress-crbug-913296.js | 13 + .../v8/mjsunit/regress/wasm/regress-913804.js | 17 + .../v8/test262/test262.status | 467 +++++++++--------- 30 files changed, 893 insertions(+), 296 deletions(-) create mode 100644 implementation-contributed/v8/intl/collator/check-co-option.js create mode 100644 implementation-contributed/v8/intl/collator/check-kf-option.js create mode 100644 implementation-contributed/v8/intl/collator/check-kn-option.js create mode 100644 implementation-contributed/v8/intl/date-format/check-ca-option.js create mode 100644 implementation-contributed/v8/intl/date-format/check-hc-option.js create mode 100644 implementation-contributed/v8/intl/date-format/check-nu-option.js create mode 100644 implementation-contributed/v8/intl/number-format/check-nu-option.js create mode 100644 implementation-contributed/v8/intl/regress-7481.js create mode 100644 implementation-contributed/v8/intl/segmenter/check-lb-option.js create mode 100644 implementation-contributed/v8/mjsunit/asm/regress-913822.js create mode 100644 implementation-contributed/v8/mjsunit/compiler/regress-913232.js create mode 100644 implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js create mode 100644 implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js create mode 100644 implementation-contributed/v8/mjsunit/regress/regress-7773.js create mode 100644 implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js create mode 100644 implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js create mode 100644 implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js diff --git a/implementation-contributed/curation_logs/v8.json b/implementation-contributed/curation_logs/v8.json index 7191a0c000..1d0c9c5922 100644 --- a/implementation-contributed/curation_logs/v8.json +++ b/implementation-contributed/curation_logs/v8.json @@ -1,5 +1,5 @@ { - "sourceRevisionAtLastExport": "44b1b245", - "targetRevisionAtLastExport": "ae464533ad", + "sourceRevisionAtLastExport": "dde25872", + "targetRevisionAtLastExport": "468a67ade5", "curatedFiles": {} } \ No newline at end of file diff --git a/implementation-contributed/v8/intl/collator/check-co-option.js b/implementation-contributed/v8/intl/collator/check-co-option.js new file mode 100644 index 0000000000..477d00a045 --- /dev/null +++ b/implementation-contributed/v8/intl/collator/check-co-option.js @@ -0,0 +1,33 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +let invalid_co = [ + "invalid", + "search", + "standard", + "abce", +]; + +let valid_locales = [ + "zh-u-co-zhuyin", + "zh-u-co-stroke", + "ar-u-co-compat", + "en-u-co-emoji", + "en-u-co-eor", + "zh-Hant-u-co-pinyin", + "ko-u-co-searchjl", + "ja-u-co-unihan", +]; + +invalid_co.forEach(function(co) { + let col = new Intl.Collator(["en-u-co-" + co]); + assertEquals("en", col.resolvedOptions().locale); +} +); + +valid_locales.forEach(function(l) { + let col = new Intl.Collator([l + "-fo-obar"]); + assertEquals(l, col.resolvedOptions().locale); +} +); diff --git a/implementation-contributed/v8/intl/collator/check-kf-option.js b/implementation-contributed/v8/intl/collator/check-kf-option.js new file mode 100644 index 0000000000..45085c667e --- /dev/null +++ b/implementation-contributed/v8/intl/collator/check-kf-option.js @@ -0,0 +1,36 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +let invalid_kf = [ + "invalid", + "abce", + "none", + "true", +]; + +let valid_kf= [ + "false", + "upper", + "lower", +]; + +let locales = [ + "en", + "fr", +]; + +invalid_kf.forEach(function(kf) { + let col = new Intl.Collator(["en-u-kf-" + kf + "-fo-obar"]); + assertEquals("en", col.resolvedOptions().locale); +} +); + +valid_kf.forEach(function(kf) { + locales.forEach(function(base) { + let l = base + "-u-kf-" + kf; + let col = new Intl.Collator([l + "-fo-obar"]); + assertEquals(l, col.resolvedOptions().locale); + }); +} +); diff --git a/implementation-contributed/v8/intl/collator/check-kn-option.js b/implementation-contributed/v8/intl/collator/check-kn-option.js new file mode 100644 index 0000000000..0e3a82fe26 --- /dev/null +++ b/implementation-contributed/v8/intl/collator/check-kn-option.js @@ -0,0 +1,29 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +let invalid_kn = [ + "invalid", + "search", + "standard", + "abce", +]; + +let valid_kn = [ + ["en-u-kn", true, "en-u-kn"], + ["en-u-kn-true", true, "en-u-kn"], + ["en-u-kn-false",false, "en-u-kn-false"], +]; + +invalid_kn.forEach(function(kn) { + let col = new Intl.Collator(["en-u-kn-" + kn]); + assertEquals("en", col.resolvedOptions().locale); +} +); + +valid_kn.forEach(function(l) { + let col = new Intl.Collator([l[0] + "-fo-obar"]); + assertEquals(l[1], col.resolvedOptions().numeric); + assertEquals(l[2], col.resolvedOptions().locale); +} +); diff --git a/implementation-contributed/v8/intl/date-format/check-ca-option.js b/implementation-contributed/v8/intl/date-format/check-ca-option.js new file mode 100644 index 0000000000..d27ae44b48 --- /dev/null +++ b/implementation-contributed/v8/intl/date-format/check-ca-option.js @@ -0,0 +1,51 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + + +let invalid_ca = [ + "invalid", + "abce", +]; + +// https://www.unicode.org/repos/cldr/tags/latest/common/bcp47/calendar.xml +let valid_ca= [ + "buddhist", + "chinese", + "coptic", + "dangi", + "ethioaa", + "ethiopic", + "gregory", + "hebrew", + "indian", + "islamic", + "islamic-umalqura", + "islamic-tbla", + "islamic-civil", + "islamic-rgsa", + "iso8601", + "japanese", + "persian", + "roc", +]; + +let locales = [ + "en", + "ar", +]; + +invalid_ca.forEach(function(ca) { + let df = new Intl.DateTimeFormat(["en-u-ca-" + ca + "-fo-obar"]); + assertEquals("en", df.resolvedOptions().locale); +} +); + +valid_ca.forEach(function(ca) { + locales.forEach(function(base) { + let l = base + "-u-ca-" + ca; + let df = new Intl.DateTimeFormat([l + "-fo-obar"]); + assertEquals(l, df.resolvedOptions().locale); + }); +} +); diff --git a/implementation-contributed/v8/intl/date-format/check-hc-option.js b/implementation-contributed/v8/intl/date-format/check-hc-option.js new file mode 100644 index 0000000000..276bfe6a23 --- /dev/null +++ b/implementation-contributed/v8/intl/date-format/check-hc-option.js @@ -0,0 +1,41 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + + +let invalid_hc = [ + "invalid", + "abce", + "h10", + "h13", + "h22", + "h25", +]; + +// https://www.unicode.org/repos/cldr/tags/latest/common/bcp47/calendar.xml +let valid_hc= [ + "h11", + "h12", + "h23", + "h24", +]; + +let locales = [ + "en", + "ar", +]; + +invalid_hc.forEach(function(hc) { + let df = new Intl.DateTimeFormat(["en-u-hc-" + hc + "-fo-obar"]); + assertEquals("en", df.resolvedOptions().locale); +} +); + +valid_hc.forEach(function(hc) { + locales.forEach(function(base) { + let l = base + "-u-hc-" + hc; + let df = new Intl.DateTimeFormat([l + "-fo-obar"]); + assertEquals(l, df.resolvedOptions().locale); + }); +} +); diff --git a/implementation-contributed/v8/intl/date-format/check-nu-option.js b/implementation-contributed/v8/intl/date-format/check-nu-option.js new file mode 100644 index 0000000000..7d4b4dc927 --- /dev/null +++ b/implementation-contributed/v8/intl/date-format/check-nu-option.js @@ -0,0 +1,59 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + + +let invalid_nu = [ + "invalid", + "abce", + "finance", + "native", + "traditio", +]; + +// https://tc39.github.io/ecma402/#table-numbering-system-digits +let valid_nu= [ + "arab", + "arabext", + "bali", + "beng", + "deva", + "fullwide", + "gujr", + "guru", + "hanidec", + "khmr", + "knda", + "laoo", + "latn", + "limb", + "mlym", + "mong", + "mymr", + "orya", + "tamldec", + "telu", + "thai", + "tibt", +]; + +let locales = [ + "en", + "ar", +]; + + +invalid_nu.forEach(function(nu) { + let df = new Intl.DateTimeFormat(["en-u-nu-" + nu + "-fo-obar"]); + assertEquals("en", df.resolvedOptions().locale); +} +); + +valid_nu.forEach(function(nu) { + locales.forEach(function(base) { + let l = base + "-u-nu-" + nu; + let df = new Intl.DateTimeFormat([l + "-fo-obar"]); + assertEquals(l, df.resolvedOptions().locale); + }); +} +); diff --git a/implementation-contributed/v8/intl/number-format/check-nu-option.js b/implementation-contributed/v8/intl/number-format/check-nu-option.js new file mode 100644 index 0000000000..39c4cbb8cf --- /dev/null +++ b/implementation-contributed/v8/intl/number-format/check-nu-option.js @@ -0,0 +1,59 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + + +let invalid_nu = [ + "invalid", + "abce", + "finance", + "native", + "traditio", +]; + +// https://tc39.github.io/ecma402/#table-numbering-system-digits +let valid_nu= [ + "arab", + "arabext", + "bali", + "beng", + "deva", + "fullwide", + "gujr", + "guru", + "hanidec", + "khmr", + "knda", + "laoo", + "latn", + "limb", + "mlym", + "mong", + "mymr", + "orya", + "tamldec", + "telu", + "thai", + "tibt", +]; + +let locales = [ + "en", + "ar", +]; + + +invalid_nu.forEach(function(nu) { + let nf = new Intl.NumberFormat(["en-u-nu-" + nu + "-fo-obar"]); + assertEquals("en", nf.resolvedOptions().locale); +} +); + +valid_nu.forEach(function(nu) { + locales.forEach(function(base) { + let l = base + "-u-nu-" + nu; + let nf = new Intl.NumberFormat([l + "-fo-obar"]); + assertEquals(l, nf.resolvedOptions().locale); + }); +} +); diff --git a/implementation-contributed/v8/intl/regress-7481.js b/implementation-contributed/v8/intl/regress-7481.js new file mode 100644 index 0000000000..c3441e35cb --- /dev/null +++ b/implementation-contributed/v8/intl/regress-7481.js @@ -0,0 +1,39 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +assertEquals( + "en-u-hc-h11-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h11-nu-arab"]).resolvedOptions().locale +); +assertEquals( + "en-u-hc-h12-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h12-nu-arab"]).resolvedOptions().locale +); +assertEquals( + "en-u-hc-h23-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h23-nu-arab"]).resolvedOptions().locale +); +assertEquals( + "en-u-hc-h24-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h24-nu-arab"]).resolvedOptions().locale +); + +// https://tc39.github.io/ecma402/#sec-intl.datetimeformat-internal-slots +// invalid hc should be removed +// [[LocaleData]][locale].hc must be « null, "h11", "h12", "h23", "h24" » for all locale values. +assertEquals( + "en-u-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h10-nu-arab"]).resolvedOptions().locale +); +assertEquals( + "en-u-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h13-nu-arab"]).resolvedOptions().locale +); +assertEquals( + "en-u-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h22-nu-arab"]).resolvedOptions().locale +); +assertEquals( + "en-u-nu-arab", + new Intl.DateTimeFormat(["en-u-hc-h25-nu-arab"]).resolvedOptions().locale +); diff --git a/implementation-contributed/v8/intl/segmenter/check-lb-option.js b/implementation-contributed/v8/intl/segmenter/check-lb-option.js new file mode 100644 index 0000000000..b56b76fc95 --- /dev/null +++ b/implementation-contributed/v8/intl/segmenter/check-lb-option.js @@ -0,0 +1,41 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --harmony-intl-segmenter + +let invalid_lb = [ + "invalid", + "abce", + "breakall", + "keepall", + "none", + "standard", +]; + +let valid_lb= [ + "strict", + "normal", + "loose", +]; + +let locales = [ + "en", + "ja", + "zh", +]; + +invalid_lb.forEach(function(lb) { + let df = new Intl.Segmenter(["en-u-lb-" + lb + "-fo-obar"]); + assertEquals("en", df.resolvedOptions().locale); +} +); + +valid_lb.forEach(function(lb) { + locales.forEach(function(base) { + let l = base + "-u-lb-" + lb; + let df = new Intl.Segmenter([l + "-fo-obar"]); + assertEquals(l, df.resolvedOptions().locale); + }); +} +); diff --git a/implementation-contributed/v8/mjsunit/array-indexing-receiver.js b/implementation-contributed/v8/mjsunit/array-indexing-receiver.js index ea8d02b218..4c47a39216 100644 --- a/implementation-contributed/v8/mjsunit/array-indexing-receiver.js +++ b/implementation-contributed/v8/mjsunit/array-indexing-receiver.js @@ -356,7 +356,7 @@ var kTests = { Detached_Int8Array() { var array = new Int8Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -391,7 +391,7 @@ var kTests = { Detached_Uint8Array() { var array = new Uint8Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -421,7 +421,7 @@ var kTests = { Detached_Uint8ClampedArray() { var array = new Uint8ClampedArray(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -453,7 +453,7 @@ var kTests = { Detached_Int16Array() { var array = new Int16Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -485,7 +485,7 @@ var kTests = { Detached_Uint16Array() { var array = new Uint16Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -517,7 +517,7 @@ var kTests = { Detached_Int32Array() { var array = new Int32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -550,7 +550,7 @@ var kTests = { Detached_Uint32Array() { var array = new Uint32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -583,7 +583,7 @@ var kTests = { Detached_Float32Array() { var array = new Float32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, @@ -616,7 +616,7 @@ var kTests = { Detached_Float64Array() { var array = new Float32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertEquals(Array.prototype.indexOf.call(array, 0), -1); assertEquals(Array.prototype.indexOf.call(array, 0, 10), -1); }, diff --git a/implementation-contributed/v8/mjsunit/asm/regress-913822.js b/implementation-contributed/v8/mjsunit/asm/regress-913822.js new file mode 100644 index 0000000000..d6ee74637a --- /dev/null +++ b/implementation-contributed/v8/mjsunit/asm/regress-913822.js @@ -0,0 +1,25 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --allow-natives-syntax + +(function TestNewlineInCPPComment() { + function Module() { + "use asm" // Crash by comment! + function f() {} + return f + } + Module(); + assertTrue(%IsAsmWasmCode(Module)); +})(); + +(function TestNewlineInCComment() { + function Module() { + "use asm" /* Crash by + comment! */ function f() {} + return f + } + Module(); + assertTrue(%IsAsmWasmCode(Module)); +})(); diff --git a/implementation-contributed/v8/mjsunit/code-coverage-block.js b/implementation-contributed/v8/mjsunit/code-coverage-block.js index bdba90cd1e..c3d775aa27 100644 --- a/implementation-contributed/v8/mjsunit/code-coverage-block.js +++ b/implementation-contributed/v8/mjsunit/code-coverage-block.js @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Flags: --allow-natives-syntax --no-always-opt +// Flags: --allow-natives-syntax --no-always-opt --no-stress-flush-bytecode // Files: test/mjsunit/code-coverage-utils.js %DebugToggleBlockCoverage(true); diff --git a/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js b/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js index 54b35f73c8..ef485c69db 100644 --- a/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js +++ b/implementation-contributed/v8/mjsunit/compiler/dataview-neutered.js @@ -2,10 +2,10 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Flags: --allow-natives-syntax --opt --noalways-opt +// Flags: --allow-natives-syntax --opt --noalways-opt --no-stress-flush-bytecode -// Invalidate the neutering protector. -%ArrayBufferNeuter(new ArrayBuffer(1)); +// Invalidate the detaching protector. +%ArrayBufferDetach(new ArrayBuffer(1)); // Check DataView.prototype.getInt8() optimization. (function() { @@ -21,7 +21,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -43,7 +43,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -65,7 +65,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -87,7 +87,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -109,7 +109,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -131,7 +131,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -153,7 +153,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -175,7 +175,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(0, foo(dv)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -199,7 +199,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -223,7 +223,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -247,7 +247,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -271,7 +271,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -295,7 +295,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -319,7 +319,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -343,7 +343,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); @@ -367,7 +367,7 @@ %OptimizeFunctionOnNextCall(foo); assertEquals(undefined, foo(dv, 3)); assertOptimized(foo); - %ArrayBufferNeuter(ab); + %ArrayBufferDetach(ab); assertThrows(() => foo(dv, 4), TypeError); assertUnoptimized(foo); %OptimizeFunctionOnNextCall(foo); diff --git a/implementation-contributed/v8/mjsunit/compiler/regress-913232.js b/implementation-contributed/v8/mjsunit/compiler/regress-913232.js new file mode 100644 index 0000000000..efd7fb8e5f --- /dev/null +++ b/implementation-contributed/v8/mjsunit/compiler/regress-913232.js @@ -0,0 +1,14 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --allow-natives-syntax + +function* E(b) { + while (true) { + for (yield* 0; b; yield* 0) {} + } +} + +%OptimizeFunctionOnNextCall(E); +E(); diff --git a/implementation-contributed/v8/mjsunit/es6/classes.js b/implementation-contributed/v8/mjsunit/es6/classes.js index fa85faf44e..27121ec007 100644 --- a/implementation-contributed/v8/mjsunit/es6/classes.js +++ b/implementation-contributed/v8/mjsunit/es6/classes.js @@ -23,10 +23,41 @@ assertEquals('D2', D2.name); var E = class {} - assertEquals('E', E.name); // Should be 'E'. + assertEquals('E', E.name); var F = class { constructor() {} }; - assertEquals('F', F.name); // Should be 'F'. + assertEquals('F', F.name); + + var literal = { E: class {} }; + assertEquals('E', literal.E.name); + + literal = { E: class F {} }; + assertEquals('F', literal.E.name); + + literal = { __proto__: class {} }; + assertEquals('', literal.__proto__.name); + assertEquals( + undefined, Object.getOwnPropertyDescriptor(literal.__proto__, 'name')); + + literal = { __proto__: class F {} }; + assertEquals('F', literal.__proto__.name); + assertNotEquals( + undefined, Object.getOwnPropertyDescriptor(literal.__proto__, 'name')); + + class G {}; + literal = { __proto__: G }; + assertEquals('G', literal.__proto__.name); + + var H = class { static name() { return 'A'; } }; + literal = { __proto__ : H }; + assertEquals('A', literal.__proto__.name()); + + literal = { + __proto__: class { + static name() { return 'A'; } + } + }; + assertEquals('A', literal.__proto__.name()); })(); diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js b/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js index 0a55fccf5c..e6be924d8e 100644 --- a/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js +++ b/implementation-contributed/v8/mjsunit/es6/typedarray-construct-by-array-like.js @@ -194,7 +194,7 @@ tests.push(function TestFromTypedArraySpecies(constr) { assertEquals(1, constructor_read); }); -tests.push(function TestFromTypedArraySpeciesNeutersBuffer(constr) { +tests.push(function TestFromTypedArraySpeciesDetachsBuffer(constr) { var b = new ArrayBuffer(16); var a1 = new constr(b); @@ -203,7 +203,7 @@ tests.push(function TestFromTypedArraySpeciesNeutersBuffer(constr) { Object.defineProperty(b, 'constructor', { get: function() { - %ArrayBufferNeuter(b); + %ArrayBufferDetach(b); return cons; } }); diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js b/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js index f272f4f084..55a76cdc4d 100644 --- a/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js +++ b/implementation-contributed/v8/mjsunit/es6/typedarray-neutered.js @@ -4,8 +4,8 @@ // Flags: --allow-natives-syntax -// Disable the neutering protector. -%ArrayBufferNeuter(new ArrayBuffer(1024)); +// Disable the detaching protector. +%ArrayBufferDetach(new ArrayBuffer(1024)); // ArrayBuffer diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js b/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js index ba5d7f7a20..2746c57dff 100644 --- a/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js +++ b/implementation-contributed/v8/mjsunit/es6/typedarray-reduce.js @@ -254,13 +254,13 @@ for (var constructor of typedArrayConstructors) { var tmp = { [Symbol.toPrimitive]() { assertUnreachable("Parameter should not be processed when " + - "array.[[ViewedArrayBuffer]] is neutered."); + "array.[[ViewedArrayBuffer]] is detached."); return 0; } }; var array = new constructor([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertThrows(() => array.reduce(sum, tmp), TypeError); assertThrows(() => array.reduceRight(sum, tmp), TypeError); } diff --git a/implementation-contributed/v8/mjsunit/es6/typedarray.js b/implementation-contributed/v8/mjsunit/es6/typedarray.js index 61653dce88..aab12341ac 100644 --- a/implementation-contributed/v8/mjsunit/es6/typedarray.js +++ b/implementation-contributed/v8/mjsunit/es6/typedarray.js @@ -636,7 +636,7 @@ function TestTypedArraySet() { var detached = false; evilarr[1] = { [Symbol.toPrimitive]() { - %ArrayBufferNeuter(a111.buffer); + %ArrayBufferDetach(a111.buffer); detached = true; return 1; } @@ -648,7 +648,7 @@ function TestTypedArraySet() { var tmp = { [Symbol.toPrimitive]() { assertUnreachable("Parameter should not be processed when " + - "array.[[ViewedArrayBuffer]] is neutered."); + "array.[[ViewedArrayBuffer]] is detached."); return 1; } }; @@ -662,7 +662,7 @@ function TestTypedArraySet() { let detached = false; const offset = { [Symbol.toPrimitive]() { - %ArrayBufferNeuter(xs.buffer); + %ArrayBufferDetach(xs.buffer); detached = true; return 0; } @@ -677,7 +677,7 @@ function TestTypedArraySet() { for (const klass of typedArrayConstructors) { const a = new klass(2); for (let i = 0; i < a.length; i++) a[i] = i; - %ArrayBufferNeuter(a.buffer); + %ArrayBufferDetach(a.buffer); const b = new klass(2); assertThrows(() => b.set(a), TypeError); diff --git a/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js b/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js index edeae88631..91916aad54 100644 --- a/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js +++ b/implementation-contributed/v8/mjsunit/es7/array-includes-receiver.js @@ -356,7 +356,7 @@ var kTests = { Detached_Int8Array() { var array = new Int8Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -391,7 +391,7 @@ var kTests = { Detached_Uint8Array() { var array = new Uint8Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -421,7 +421,7 @@ var kTests = { Detached_Uint8ClampedArray() { var array = new Uint8ClampedArray(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -453,7 +453,7 @@ var kTests = { Detached_Int16Array() { var array = new Int16Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -485,7 +485,7 @@ var kTests = { Detached_Uint16Array() { var array = new Uint16Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -517,7 +517,7 @@ var kTests = { Detached_Int32Array() { var array = new Int32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -550,7 +550,7 @@ var kTests = { Detached_Uint32Array() { var array = new Uint32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -583,7 +583,7 @@ var kTests = { Detached_Float32Array() { var array = new Float32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, @@ -616,7 +616,7 @@ var kTests = { Detached_Float64Array() { var array = new Float32Array(10); - %ArrayBufferNeuter(array.buffer); + %ArrayBufferDetach(array.buffer); assertFalse(Array.prototype.includes.call(array, 0)); assertFalse(Array.prototype.includes.call(array, 0, 10)); }, diff --git a/implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js b/implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js new file mode 100644 index 0000000000..78b1992b14 --- /dev/null +++ b/implementation-contributed/v8/mjsunit/harmony/regress/regress-912504.js @@ -0,0 +1,11 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --always-opt --harmony-object-from-entries --allow-natives-syntax + +function test() { + Object.fromEntries([[]]); + %DeoptimizeNow(); +} +test(); diff --git a/implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js b/implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js new file mode 100644 index 0000000000..5d2985f318 --- /dev/null +++ b/implementation-contributed/v8/mjsunit/harmony/string-matchAll-deleted-matchAll.js @@ -0,0 +1,9 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --harmony-string-matchall + +delete RegExp.prototype[Symbol.matchAll]; +const str = 'a'; +assertThrows(() => str.matchAll(/\w/g), TypeError); diff --git a/implementation-contributed/v8/mjsunit/messages.js b/implementation-contributed/v8/mjsunit/messages.js index b80e5abf23..d5c796228c 100644 --- a/implementation-contributed/v8/mjsunit/messages.js +++ b/implementation-contributed/v8/mjsunit/messages.js @@ -171,15 +171,15 @@ test(function() { for (constructor of typedArrayConstructors) { test(() => { const ta = new constructor([1]); - %ArrayBufferNeuter(ta.buffer); + %ArrayBufferDetach(ta.buffer); ta.find(() => {}); - }, "Cannot perform %TypedArray%.prototype.find on a detached ArrayBuffer", TypeError); + }, "Cannot perform %TypedArray%.prototype.find on a neutered ArrayBuffer", TypeError); test(() => { const ta = new constructor([1]); - %ArrayBufferNeuter(ta.buffer); + %ArrayBufferDetach(ta.buffer); ta.findIndex(() => {}); - }, "Cannot perform %TypedArray%.prototype.findIndex on a detached ArrayBuffer", TypeError); + }, "Cannot perform %TypedArray%.prototype.findIndex on a neutered ArrayBuffer", TypeError); } // kFirstArgumentNotRegExp diff --git a/implementation-contributed/v8/mjsunit/mjsunit.status b/implementation-contributed/v8/mjsunit/mjsunit.status index 76b22d8467..439237f382 100644 --- a/implementation-contributed/v8/mjsunit/mjsunit.status +++ b/implementation-contributed/v8/mjsunit/mjsunit.status @@ -107,12 +107,12 @@ ############################################################################## # Skip long running tests that time out in debug mode. - 'generated-transition-stub': [PASS, ['mode == debug or dcheck_always_on', SKIP]], + 'generated-transition-stub': [PASS, ['mode == debug', SKIP]], 'migrations': [SKIP], - 'array-functions-prototype-misc': [PASS, SLOW, ['mode == debug or dcheck_always_on', SKIP]], - 'compiler/regress-808472': [PASS, ['mode == debug or dcheck_always_on', SKIP]], + 'array-functions-prototype-misc': [PASS, SLOW, ['mode == debug', SKIP]], + 'compiler/regress-808472': [PASS, ['mode == debug', SKIP]], 'es6/promise-all-overflow-1': [SKIP], - 'es6/promise-all-overflow-2': [PASS, SLOW, ['mode == debug or dcheck_always_on or arch != x64', SKIP]], + 'es6/promise-all-overflow-2': [PASS, SLOW, ['mode == debug or arch != x64', SKIP]], ############################################################################## # This test sets the umask on a per-process basis and hence cannot be @@ -140,7 +140,7 @@ ############################################################################## # Tests verifying CHECK and ASSERT. 'verify-check-false': [FAIL, NO_VARIANTS], - 'verify-assert-false': [NO_VARIANTS, ['mode == release and dcheck_always_on == False', PASS], ['mode == debug or dcheck_always_on == True', FAIL]], + 'verify-assert-false': [NO_VARIANTS, ['mode == release and dcheck_always_on == False', PASS], ['mode == debug', FAIL]], ############################################################################## # Tests with different versions for release and debug. @@ -214,10 +214,10 @@ # TODO(vogelheim): big-object-literal exceeds the stack in debug builds, # which makes the test useless. - 'big-object-literal': [PASS, ['mode == debug or dcheck_always_on', SKIP]], + 'big-object-literal': [PASS, ['mode == debug', SKIP]], # Runs out of stack space in debug builds. - 'big-array-literal': [PASS, ['mode == debug or dcheck_always_on', SKIP]], + 'big-array-literal': [PASS, ['mode == debug', SKIP]], # BUG(v8:6306). 'wasm/huge-memory': [SKIP], @@ -929,4 +929,10 @@ 'wasm/asm-wasm-f64': [SKIP], }], # arch == x64 +############################################################################## +['arch in [arm, android_arm, android_ia32, ia32, ppc, s390, s390x, mipsel, mips]', { + # TODO(ssauleau): implement BigInt<>Wasm conversion for other arch - + # crbug.com/v8/7741 + 'wasm/bigint': [SKIP], +}], # arch in [arm, android_arm, android_ia32, ia32, ppc, s390, s390x, mipsel, mips] ] diff --git a/implementation-contributed/v8/mjsunit/regress/regress-7773.js b/implementation-contributed/v8/mjsunit/regress/regress-7773.js new file mode 100644 index 0000000000..7930ae9106 --- /dev/null +++ b/implementation-contributed/v8/mjsunit/regress/regress-7773.js @@ -0,0 +1,71 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +(function testFunctionNames() { + let descriptor = { + value: '', + writable: false, + enumerable: false, + configurable: true + }; + // Functions have a "name" property by default. + assertEquals( + descriptor, Object.getOwnPropertyDescriptor(function(){}, 'name')); + let a = { fn: function(){} }; + assertSame('fn', a.fn.name); + descriptor.value = 'fn'; + assertEquals(descriptor, Object.getOwnPropertyDescriptor(a.fn, 'name')); + + let b = { __proto__: function(){} }; + assertSame('', b.__proto__.name); + descriptor.value = ''; + assertEquals( + descriptor, Object.getOwnPropertyDescriptor(b.__proto__, 'name')); + + let c = { fn: function F(){} }; + assertSame('F', c.fn.name); + descriptor.value = 'F'; + assertEquals(descriptor, Object.getOwnPropertyDescriptor(c.fn, 'name')); + + let d = { __proto__: function E(){} }; + assertSame('E', d.__proto__.name); + descriptor.value = 'E'; + assertEquals( + descriptor, Object.getOwnPropertyDescriptor(d.__proto__, 'name')); +})(); + +(function testClassNames() { + let descriptor = { + value: '', + writable: false, + enumerable: false, + configurable: true + }; + + // Anonymous classes do not have a "name" property by default. + assertSame(undefined, Object.getOwnPropertyDescriptor(class {}, 'name')); + descriptor.value = 'C'; + assertEquals(descriptor, Object.getOwnPropertyDescriptor(class C {}, 'name')); + + let a = { fn: class {} }; + assertSame('fn', a.fn.name); + descriptor.value = 'fn'; + assertEquals(descriptor, Object.getOwnPropertyDescriptor(a.fn, 'name')); + + let b = { __proto__: class {} }; + assertSame('', b.__proto__.name); + assertSame( + undefined, Object.getOwnPropertyDescriptor(b.__proto__, 'name')); + + let c = { fn: class F {} }; + assertSame('F', c.fn.name); + descriptor.value = 'F'; + assertEquals(descriptor, Object.getOwnPropertyDescriptor(c.fn, 'name')); + + let d = { __proto__: class F {} }; + assertSame('F', d.__proto__.name); + descriptor.value = 'F'; + assertEquals( + descriptor, Object.getOwnPropertyDescriptor(d.__proto__, 'name')); +})(); diff --git a/implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js new file mode 100644 index 0000000000..2de99d6efc --- /dev/null +++ b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913212.js @@ -0,0 +1,11 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +const globalThis = this; +Object.setPrototypeOf(this, new Proxy({}, { + get(target, prop, receiver) { + assertTrue(receiver === globalThis); + } +})); +undefined_name_access diff --git a/implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js new file mode 100644 index 0000000000..3fab06607f --- /dev/null +++ b/implementation-contributed/v8/mjsunit/regress/regress-crbug-913296.js @@ -0,0 +1,13 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --allow-natives-syntax + +function foo(trigger) { + return Object.is((trigger ? -0 : 0) - 0, -0); +} + +assertFalse(foo(false)); +%OptimizeFunctionOnNextCall(foo); +assertTrue(foo(true)); diff --git a/implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js b/implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js new file mode 100644 index 0000000000..c12013c9f8 --- /dev/null +++ b/implementation-contributed/v8/mjsunit/regress/wasm/regress-913804.js @@ -0,0 +1,17 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +load('test/mjsunit/wasm/wasm-constants.js'); +load('test/mjsunit/wasm/wasm-module-builder.js'); + +const builder = new WasmModuleBuilder(); +builder.addFunction('main', kSig_v_v).addBody([ + kExprLoop, kWasmStmt, // loop + /**/ kExprBr, 0x01, // br depth=1 + /**/ kExprBlock, kWasmStmt, // block + /**/ /**/ kExprBr, 0x02, // br depth=2 + /**/ /**/ kExprEnd, // end [block] + /**/ kExprEnd // end [loop] +]); +builder.instantiate(); diff --git a/implementation-contributed/v8/test262/test262.status b/implementation-contributed/v8/test262/test262.status index ecab026c98..e43eba805d 100644 --- a/implementation-contributed/v8/test262/test262.status +++ b/implementation-contributed/v8/test262/test262.status @@ -179,232 +179,232 @@ # https://bugs.chromium.org/p/v8/issues/detail?id=896 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F': [FAIL_PHASE_ONLY], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F-negated': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid-negated': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N-negated': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No-negated': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T-negated': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y-negated': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes': [FAIL], - 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes-negated': [FAIL], - 'built-ins/RegExp/property-escapes/character-class-range-end': [FAIL], - 'built-ins/RegExp/property-escapes/character-class-range-no-dash-end': [FAIL], - 'built-ins/RegExp/property-escapes/character-class-range-no-dash-start': [FAIL], - 'built-ins/RegExp/property-escapes/character-class-range-start': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-empty': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-empty-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-invalid': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-invalid-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-no-braces': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-no-braces-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-separator': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-separator-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-separator-only': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-separator-only-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-unclosed': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-unclosed-negated': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-unopened': [FAIL], - 'built-ins/RegExp/property-escapes/grammar-extension-unopened-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-01': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-01-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-02': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-02-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-03': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-03-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-04': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-04-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-05': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-05-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-06': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-06-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-07': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-07-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-08': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-08-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-09': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-09-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-10': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-10-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-11': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-11-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-12': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-12-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-13': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-13-negated': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-14': [FAIL], - 'built-ins/RegExp/property-escapes/loose-matching-14-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-binary-property': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-binary-property-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-and-value': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-and-value-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-existing-value': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-existing-value-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-value-General_Category-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-value-Script': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-value-Script-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions-negated': [FAIL], - 'built-ins/RegExp/property-escapes/non-existent-property-value-general-category': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-negated': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value': [FAIL], - 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value-negated': [FAIL], - 'language/literals/regexp/early-err-pattern': [FAIL], - 'language/literals/regexp/invalid-braced-quantifier-exact': [FAIL], - 'language/literals/regexp/invalid-braced-quantifier-lower': [FAIL], - 'language/literals/regexp/invalid-braced-quantifier-range': [FAIL], - 'language/literals/regexp/invalid-optional-lookbehind': [FAIL], - 'language/literals/regexp/invalid-optional-negative-lookbehind': [FAIL], - 'language/literals/regexp/invalid-range-lookbehind': [FAIL], - 'language/literals/regexp/invalid-range-negative-lookbehind': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-2': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-2-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-3': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-3-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-4': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-4-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-5': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-dangling-groupname-without-group-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2': [FAIL], - 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-empty-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-empty-groupspecifier-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-identity-escape-in-capture-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-2': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-2-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-3': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-3-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-4': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-5': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-6': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-2-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-3-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-7': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-9-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-numeric-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-numeric-groupspecifier-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier-u': [FAIL], - 'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier-2': [FAIL], - 'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier': [FAIL], - 'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier-u': [FAIL], - 'language/literals/regexp/u-dec-esc': [FAIL], - 'language/literals/regexp/u-invalid-class-escape': [FAIL], - 'language/literals/regexp/u-invalid-extended-pattern-char': [FAIL], - 'language/literals/regexp/u-invalid-identity-escape': [FAIL], - 'language/literals/regexp/u-invalid-legacy-octal-escape': [FAIL], - 'language/literals/regexp/u-invalid-non-empty-class-ranges': [FAIL], - 'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-a': [FAIL], - 'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-ab': [FAIL], - 'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-b': [FAIL], - 'language/literals/regexp/u-invalid-oob-decimal-escape': [FAIL], - 'language/literals/regexp/u-invalid-optional-lookahead': [FAIL], - 'language/literals/regexp/u-invalid-optional-lookbehind': [FAIL], - 'language/literals/regexp/u-invalid-optional-negative-lookahead': [FAIL], - 'language/literals/regexp/u-invalid-optional-negative-lookbehind': [FAIL], - 'language/literals/regexp/u-invalid-range-lookahead': [FAIL], - 'language/literals/regexp/u-invalid-range-lookbehind': [FAIL], - 'language/literals/regexp/u-invalid-range-negative-lookahead': [FAIL], - 'language/literals/regexp/u-invalid-range-negative-lookbehind': [FAIL], - 'language/literals/regexp/u-unicode-esc-bounds': [FAIL], - 'language/literals/regexp/u-unicode-esc-non-hex': [FAIL], - 'language/literals/regexp/unicode-escape-nls-err': [FAIL], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/character-class-range-end': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/character-class-range-no-dash-end': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/character-class-range-no-dash-start': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/character-class-range-start': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-empty': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-empty-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-invalid': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-invalid-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-no-braces': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-no-braces-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-no-braces-value-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-separator': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-separator-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-separator-only': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-separator-only-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-unclosed': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-unclosed-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-unopened': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/grammar-extension-unopened-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-01': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-01-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-02': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-02-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-03': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-03-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-04': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-04-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-05': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-05-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-06': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-06-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-07': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-07-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-08': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-08-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-09': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-09-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-10': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-10-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-11': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-11-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-12': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-12-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-13': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-13-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-14': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/loose-matching-14-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-binary-property': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-binary-property-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-and-value': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-and-value-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-existing-value': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-existing-value-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-value-General_Category-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-value-Script': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-value-Script-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/non-existent-property-value-general-category': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-Block-with-value-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-negated': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value': [FAIL_PHASE_ONLY], + 'built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value-negated': [FAIL_PHASE_ONLY], + 'language/literals/regexp/early-err-pattern': [FAIL_PHASE_ONLY], + 'language/literals/regexp/invalid-braced-quantifier-exact': [FAIL_PHASE_ONLY], + 'language/literals/regexp/invalid-braced-quantifier-lower': [FAIL_PHASE_ONLY], + 'language/literals/regexp/invalid-braced-quantifier-range': [FAIL_PHASE_ONLY], + 'language/literals/regexp/invalid-optional-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/invalid-optional-negative-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/invalid-range-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/invalid-range-negative-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-2': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-2-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-3': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-3-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-4': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-4-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-5': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-dangling-groupname-without-group-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-empty-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-empty-groupspecifier-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-identity-escape-in-capture-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-2': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-2-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-3': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-3-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-4': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-5': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-6': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-2-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-3-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-7': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-9-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-numeric-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-numeric-groupspecifier-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-u-escape-in-groupspecifier-2': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier': [FAIL_PHASE_ONLY], + 'language/literals/regexp/named-groups/invalid-unterminated-groupspecifier-u': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-dec-esc': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-class-escape': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-extended-pattern-char': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-identity-escape': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-legacy-octal-escape': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-non-empty-class-ranges': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-a': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-ab': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-b': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-oob-decimal-escape': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-optional-lookahead': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-optional-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-optional-negative-lookahead': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-optional-negative-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-range-lookahead': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-range-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-range-negative-lookahead': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-invalid-range-negative-lookbehind': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-unicode-esc-bounds': [FAIL_PHASE_ONLY], + 'language/literals/regexp/u-unicode-esc-non-hex': [FAIL_PHASE_ONLY], + 'language/literals/regexp/unicode-escape-nls-err': [FAIL_PHASE_ONLY], # https://bugs.chromium.org/p/v8/issues/detail?id=7828 'language/statements/try/early-catch-function': [FAIL], @@ -586,10 +586,6 @@ 'intl402/NumberFormat/prototype/format/format-fraction-digits': [FAIL], 'intl402/NumberFormat/prototype/format/format-significant-digits': [FAIL], - # https://bugs.chromium.org/p/v8/issues/detail?id=7481 - 'intl402/NumberFormat/ignore-invalid-unicode-ext-values': [FAIL], - 'intl402/DateTimeFormat/ignore-invalid-unicode-ext-values': [FAIL], - # https://bugs.chromium.org/p/v8/issues/detail?id=7482 'intl402/DateTimeFormat/prototype/resolvedOptions/resolved-locale-with-hc-unicode': [FAIL], @@ -604,7 +600,9 @@ # https://crbug.com/v8/7808 'intl402/String/prototype/localeCompare/returns-same-results-as-Collator': [SKIP], 'intl402/Collator/prototype/compare/bound-to-collator-instance': [SKIP], - 'intl402/Collator/ignore-invalid-unicode-ext-values': [SKIP], + + # https://github.com/tc39/ecma402/issues/223 + 'intl402/Collator/missing-unicode-ext-value-defaults-to-true': [FAIL], # https://bugs.chromium.org/p/v8/issues/detail?id=8260 'intl402/Locale/constructor-non-iana-canon': [FAIL], @@ -672,14 +670,13 @@ 'intl402/Segmenter/prototype/segment/segment-word': [FAIL], # https://bugs.chromium.org/p/v8/issues/detail?id=8021 - 'built-ins/Object/fromEntries/requires-argument': [FAIL], + 'built-ins/Object/fromEntries/requires-argument': [SKIP], ######################## NEEDS INVESTIGATION ########################### # These test failures are specific to the intl402 suite and need investigation # to be either marked as bugs with issues filed for them or as deliberate # incompatibilities if the test cases turn out to be broken or ambiguous. # Some of these are related to v8:4361 in being visible side effects from Intl. - 'intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle': [FAIL], # https://bugs.chromium.org/p/v8/issues/detail?id=7833 'built-ins/Atomics/wait/cannot-suspend-throws': [SKIP], @@ -734,6 +731,10 @@ 'harness/detachArrayBuffer': [SKIP], 'harness/detachArrayBuffer-host-detachArrayBuffer': [SKIP], + # Test needs to be updated to spec changes. + # https://github.com/tc39/test262/pull/1990 + 'built-ins/String/prototype/matchAll/regexp-prototype-has-no-matchAll': [FAIL], + ############################ SKIPPED TESTS ############################# # These tests take a looong time to run. -- GitLab