v8/test/test262/test262.status

748 lines
49 KiB
Plaintext
Raw Normal View History

# Copyright 2011 the V8 project authors. All rights reserved.
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
# * Neither the name of Google Inc. nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
[
[ALWAYS, {
###################### MISSING ES6 FEATURES #######################
# https://code.google.com/p/v8/issues/detail?id=4248
'language/expressions/compound-assignment/S11.13.2_A5.*': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.*': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.10_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.11_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.1_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.2_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.3_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.4_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.5_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.6_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.7_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.8_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A7.9_T4': [FAIL],
'language/statements/with/unscopables-inc-dec': [FAIL],
# https://code.google.com/p/v8/issues/detail?id=4249
'language/expressions/assignment/S11.13.1_A7_T1': [FAIL],
'language/expressions/assignment/S11.13.1_A7_T2': [FAIL],
'language/expressions/assignment/S11.13.1_A7_T3': [FAIL],
'language/expressions/postfix-increment/S11.3.1_A6_T3': [FAIL],
'language/expressions/postfix-decrement/S11.3.2_A6_T3': [FAIL],
'language/expressions/prefix-decrement/S11.4.5_A6_T3': [FAIL],
'language/expressions/prefix-increment/S11.4.4_A6_T3': [FAIL],
# https://code.google.com/p/v8/issues/detail?id=4250
'language/expressions/assignment/S11.13.1_A5*': [FAIL],
'language/expressions/assignment/S11.13.1_A6*': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4709
'built-ins/Promise/reject-function-name': [FAIL],
'built-ins/Promise/resolve-function-name': [FAIL],
'built-ins/Promise/all/resolve-element-function-name': [FAIL],
'built-ins/Promise/executor-function-name': [FAIL],
'built-ins/Proxy/revocable/revocation-function-name': [FAIL],
'language/expressions/assignment/fn-name-lhs-cover': [FAIL],
'language/expressions/assignment/fn-name-lhs-member': [FAIL],
'language/expressions/function/name': [FAIL],
'language/expressions/generators/name': [FAIL],
'intl402/NumberFormat/prototype/format/format-function-name': [FAIL],
'intl402/DateTimeFormat/prototype/format/format-function-name': [FAIL],
'intl402/Collator/prototype/compare/compare-function-name': [FAIL],
# https://code.google.com/p/v8/issues/detail?id=4251
'language/expressions/postfix-increment/S11.3.1_A5_T1': [FAIL],
'language/expressions/postfix-increment/S11.3.1_A5_T2': [FAIL],
'language/expressions/postfix-increment/S11.3.1_A5_T3': [FAIL],
'language/expressions/postfix-increment/S11.3.1_A5_T4': [FAIL],
'language/expressions/postfix-increment/S11.3.1_A5_T5': [FAIL],
'language/expressions/postfix-decrement/S11.3.2_A5_*': [FAIL],
'language/expressions/prefix-decrement/S11.4.5_A5_*': [FAIL],
'language/expressions/prefix-increment/S11.4.4_A5_*': [FAIL],
'language/statements/variable/binding-resolution': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=6216
'built-ins/TypedArrays/buffer-arg-byteoffset-to-number-detachbuffer': [FAIL],
'built-ins/TypedArrays/buffer-arg-length-to-number-detachbuffer': [FAIL],
'built-ins/TypedArrays/buffer-arg-detachedbuffer': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4895
'built-ins/TypedArrays/internals/DefineOwnProperty/detached-buffer': [FAIL],
'built-ins/TypedArrays/internals/DefineOwnProperty/detached-buffer-realm': [FAIL],
'built-ins/TypedArrays/internals/Get/detached-buffer': [FAIL],
'built-ins/TypedArrays/internals/Get/detached-buffer-realm': [FAIL],
'built-ins/TypedArrays/internals/GetOwnProperty/detached-buffer': [FAIL],
'built-ins/TypedArrays/internals/GetOwnProperty/detached-buffer-realm': [FAIL],
'built-ins/TypedArrays/internals/HasProperty/detached-buffer': [FAIL],
'built-ins/TypedArrays/internals/HasProperty/detached-buffer-realm': [FAIL],
'built-ins/TypedArrays/internals/Set/detached-buffer': [FAIL],
'built-ins/TypedArrays/internals/Set/detached-buffer-realm': [FAIL],
# Some TypedArray methods throw due to the same bug, from Get
'built-ins/TypedArray/prototype/every/callbackfn-detachbuffer': [FAIL],
'built-ins/TypedArray/prototype/filter/callbackfn-detachbuffer': [FAIL],
'built-ins/TypedArray/prototype/find/predicate-may-detach-buffer': [FAIL],
'built-ins/TypedArray/prototype/findIndex/predicate-may-detach-buffer': [FAIL],
'built-ins/TypedArray/prototype/forEach/callbackfn-detachbuffer': [FAIL],
'built-ins/TypedArray/prototype/map/callbackfn-detachbuffer': [FAIL],
'built-ins/TypedArray/prototype/reduce/callbackfn-detachbuffer': [FAIL],
'built-ins/TypedArray/prototype/reduceRight/callbackfn-detachbuffer': [FAIL],
'built-ins/TypedArray/prototype/set/array-arg-targetbuffer-detached-on-get-src-value-throws': [FAIL],
'built-ins/TypedArray/prototype/set/array-arg-targetbuffer-detached-on-tointeger-offset-throws': [FAIL],
'built-ins/TypedArray/prototype/set/array-arg-targetbuffer-detached-throws': [FAIL],
'built-ins/TypedArray/prototype/set/typedarray-arg-srcbuffer-detached-during-tointeger-offset-throws': [FAIL],
'built-ins/TypedArray/prototype/set/typedarray-arg-targetbuffer-detached-during-tointeger-offset-throws': [FAIL],
'built-ins/TypedArray/prototype/slice/detached-buffer-custom-ctor-other-targettype': [FAIL],
'built-ins/TypedArray/prototype/slice/detached-buffer-custom-ctor-same-targettype': [FAIL],
'built-ins/TypedArray/prototype/slice/detached-buffer-get-ctor': [FAIL],
'built-ins/TypedArray/prototype/some/callbackfn-detachbuffer': [FAIL],
'built-ins/TypedArray/prototype/sort/detached-buffer-comparefn': [FAIL],
# DataView functions should also throw on detached buffers
'built-ins/ArrayBuffer/prototype/byteLength/detached-buffer': [FAIL],
'built-ins/DataView/detached-buffer': [FAIL],
'built-ins/DataView/prototype/byteLength/detached-buffer': [FAIL],
'built-ins/DataView/prototype/byteOffset/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getFloat32/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getFloat32/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/getFloat64/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getFloat64/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/getInt16/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getInt16/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/getInt32/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getInt32/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/getInt8/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getInt8/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/getUint16/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getUint16/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/getUint32/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getUint32/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/getUint8/detached-buffer': [FAIL],
'built-ins/DataView/prototype/getUint8/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setFloat32/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setFloat32/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setFloat64/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setFloat64/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setInt16/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setInt16/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setInt32/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setInt32/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setInt8/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setInt8/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setUint16/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setUint16/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setUint32/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setUint32/detached-buffer-before-outofrange-byteoffset': [FAIL],
'built-ins/DataView/prototype/setUint8/detached-buffer': [FAIL],
'built-ins/DataView/prototype/setUint8/detached-buffer-before-outofrange-byteoffset': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4231
'language/eval-code/direct/var-env-lower-lex-catch-non-strict': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4951
'language/expressions/assignment/dstr-array-elem-iter-rtrn-close': [FAIL],
'language/expressions/assignment/dstr-array-elem-iter-rtrn-close-err': [FAIL],
'language/expressions/assignment/dstr-array-elem-iter-rtrn-close-null': [FAIL],
'language/expressions/assignment/dstr-array-elem-iter-thrw-close': [FAIL],
'language/expressions/assignment/dstr-array-elem-iter-thrw-close-err': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close-err': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close-null': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close-err': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close-err': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close-null': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close': [FAIL],
'language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close-err': [FAIL],
'language/expressions/assignment/dstr-array-rest-iter-rtrn-close': [FAIL],
'language/expressions/assignment/dstr-array-rest-iter-rtrn-close-err': [FAIL],
'language/expressions/assignment/dstr-array-rest-iter-rtrn-close-null': [FAIL],
'language/expressions/assignment/dstr-array-rest-iter-thrw-close': [FAIL],
'language/expressions/assignment/dstr-array-rest-iter-thrw-close-err': [FAIL],
'language/expressions/assignment/dstr-array-rest-lref-err': [FAIL],
'language/statements/for-of/dstr-array-elem-iter-rtrn-close': [FAIL],
'language/statements/for-of/dstr-array-elem-iter-rtrn-close-err': [FAIL],
'language/statements/for-of/dstr-array-elem-iter-rtrn-close-null': [FAIL],
'language/statements/for-of/dstr-array-elem-iter-thrw-close': [FAIL],
'language/statements/for-of/dstr-array-elem-iter-thrw-close-err': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close-err': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close-null': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close-err': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close-err': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close-null': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close': [FAIL],
'language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close-err': [FAIL],
'language/statements/for-of/dstr-array-rest-iter-rtrn-close': [FAIL],
'language/statements/for-of/dstr-array-rest-iter-rtrn-close-err': [FAIL],
'language/statements/for-of/dstr-array-rest-iter-rtrn-close-null': [FAIL],
'language/statements/for-of/dstr-array-rest-iter-thrw-close': [FAIL],
'language/statements/for-of/dstr-array-rest-iter-thrw-close-err': [FAIL],
'language/statements/for-of/dstr-array-rest-lref-err': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=896
'built-ins/RegExp/property-escapes/binary-properties-with-value': [FAIL],
'built-ins/RegExp/property-escapes/character-class': [FAIL],
'built-ins/RegExp/property-escapes/grammar-extensions': [FAIL],
'built-ins/RegExp/property-escapes/loose-matching': [FAIL],
'built-ins/RegExp/property-escapes/non-binary-properties-without-value': [FAIL],
'built-ins/RegExp/property-escapes/non-existent-properties': [FAIL],
'built-ins/RegExp/property-escapes/non-existent-property-values': [FAIL],
'built-ins/RegExp/property-escapes/unsupported-binary-properties': [FAIL],
'built-ins/RegExp/property-escapes/unsupported-properties': [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/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-quantifiable-assertion': [FAIL],
'language/literals/regexp/u-unicode-esc-bounds': [FAIL],
'language/literals/regexp/u-unicode-esc-non-hex': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4628
'language/eval-code/direct/non-definable-function-with-function': [FAIL],
'language/eval-code/direct/non-definable-function-with-variable': [FAIL],
'language/eval-code/indirect/non-definable-function-with-function': [FAIL],
'language/eval-code/indirect/non-definable-function-with-variable': [FAIL],
'language/global-code/script-decl-func-err-non-configurable': [FAIL],
'language/global-code/script-decl-var-collision': [FAIL],
Revert of change most cases of variable redeclaration from TypeError to SyntaxError (patchset #8 id:140001 of https://codereview.chromium.org/2048703002/ ) Reason for revert: This is going to break the LayoutTest inspector-protocol/console/console-let-const-with-api.html as seen in https://build.chromium.org/p/tryserver.v8/builders/v8_linux_blink_rel/builds/2247 . Please run this test manually, using instructions at https://www.chromium.org/developers/testing/webkit-layout-tests , and fix on the Chrome side if needed before resubmitting this patch. Original issue's description: > change most cases of variable redeclaration from TypeError to SyntaxError. > > Code like `let a; eval("var a;");` should throw a SyntaxError, not a TypeError > (this caused a test262 failure.). However, the code `eval("function NaN() {}");` > should actually throw a TypeError. This patch changes most cases of > redeclaration errors from TypeError to SyntaxError. See the test > mjsunit/regress/redeclaration-error-types for a thorough analysis with spec > references. > > The relevant sections of the spec are ES#sec-globaldeclarationinstantiation and > ES#sec-evaldeclarationinstantiation > > BUG=v8:4955 > LOG=y > > Committed: https://crrev.com/2b787561763d0f7e8dab698652715a742cf78291 > Cr-Commit-Position: refs/heads/master@{#36940} TBR=adamk@chromium.org,jwolfe@igalia.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4955 Review-Url: https://codereview.chromium.org/2064793002 Cr-Commit-Position: refs/heads/master@{#36941}
2016-06-13 18:21:49 +00:00
# https://bugs.chromium.org/p/v8/issues/detail?id=4124
'built-ins/Simd/*': [SKIP],
# https://bugs.chromium.org/p/v8/issues/detail?id=4958
'built-ins/Function/prototype/toString/*': ['--harmony-function-tostring'],
# https://bugs.chromium.org/p/v8/issues/detail?id=5116
'built-ins/Object/internals/DefineOwnProperty/nan-equivalence': [PASS, FAIL],
'built-ins/TypedArray/prototype/fill/fill-values-conversion-operations-consistent-nan': [PASS, FAIL],
'built-ins/TypedArrays/internals/DefineOwnProperty/conversion-operation-consistent-nan': [PASS, FAIL],
'built-ins/TypedArrays/internals/Set/conversion-operation-consistent-nan': [PASS, FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5070
'annexB/built-ins/Object/prototype/__defineGetter__/define-non-configurable': ['--harmony-strict-legacy-accessor-builtins'],
'annexB/built-ins/Object/prototype/__defineGetter__/define-non-extensible': ['--harmony-strict-legacy-accessor-builtins'],
'annexB/built-ins/Object/prototype/__defineGetter__/this-non-obj': ['--harmony-strict-legacy-accessor-builtins'],
'annexB/built-ins/Object/prototype/__defineSetter__/define-non-configurable': ['--harmony-strict-legacy-accessor-builtins'],
'annexB/built-ins/Object/prototype/__defineSetter__/define-non-extensible': ['--harmony-strict-legacy-accessor-builtins'],
'annexB/built-ins/Object/prototype/__defineSetter__/this-non-obj': ['--harmony-strict-legacy-accessor-builtins'],
'annexB/built-ins/Object/prototype/__lookupGetter__/this-non-obj': ['--harmony-strict-legacy-accessor-builtins'],
'annexB/built-ins/Object/prototype/__lookupSetter__/this-non-obj': ['--harmony-strict-legacy-accessor-builtins'],
# https://bugs.chromium.org/p/v8/issues/detail?id=4451
# https://github.com/tc39/ecma262/issues/753
'annexB/language/eval-code/direct/global-block-decl-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/direct/global-switch-case-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/direct/global-switch-dflt-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-block-decl-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-switch-case-eval-global-existing-global-init': [FAIL],
'annexB/language/eval-code/indirect/global-switch-dflt-eval-global-existing-global-init': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5135
'annexB/language/eval-code/direct/func-block-decl-eval-func-block-scoping': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-else-decl-a-eval-func-block-scoping': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-else-decl-b-eval-func-block-scoping': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-else-stmt-eval-func-block-scoping': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-no-else-eval-func-block-scoping': [FAIL],
'annexB/language/eval-code/direct/func-if-stmt-else-decl-eval-func-block-scoping': [FAIL],
'annexB/language/eval-code/direct/func-switch-case-eval-func-block-scoping': [FAIL],
'annexB/language/eval-code/direct/func-switch-dflt-eval-func-block-scoping': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5139
'annexB/built-ins/Date/prototype/setYear/year-number-relative': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4698
'language/expressions/call/tco-call-args': [SKIP],
'language/expressions/call/tco-member-args': [SKIP],
'language/expressions/comma/tco-final': [SKIP],
'language/expressions/conditional/tco-cond': [SKIP],
'language/expressions/conditional/tco-pos': [SKIP],
'language/expressions/logical-and/tco-right': [SKIP],
'language/expressions/logical-or/tco-right': [SKIP],
'language/expressions/tagged-template/tco-call': [SKIP],
'language/expressions/tagged-template/tco-member': [SKIP],
'language/expressions/tco-pos': [SKIP],
'language/statements/block/tco-stmt': [SKIP],
'language/statements/block/tco-stmt-list': [SKIP],
'language/statements/do-while/tco-body': [SKIP],
'language/statements/for/tco-const-body': [SKIP],
'language/statements/for/tco-let-body': [SKIP],
'language/statements/for/tco-lhs-body': [SKIP],
'language/statements/for/tco-var-body': [SKIP],
'language/statements/if/tco-else-body': [SKIP],
'language/statements/if/tco-if-body': [SKIP],
'language/statements/labeled/tco': [SKIP],
'language/statements/return/tco': [SKIP],
'language/statements/switch/tco-case-body': [SKIP],
'language/statements/switch/tco-case-body-dflt': [SKIP],
'language/statements/switch/tco-dftl-body': [SKIP],
'language/statements/try/tco-catch': [SKIP],
'language/statements/try/tco-catch-finally': [SKIP],
'language/statements/try/tco-finally': [SKIP],
'language/statements/while/tco-body': [SKIP],
# https://bugs.chromium.org/p/v8/issues/detail?id=5064
'language/expressions/arrow-function/dflt-params-duplicates': [FAIL],
'language/expressions/async-arrow-function/dflt-params-duplicates': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5244
'intl402/NumberFormat/prototype/formatToParts/*': ['--harmony-number-format-to-parts'],
# https://bugs.chromium.org/p/v8/issues/detail?id=5327
'built-ins/TypedArray/prototype/set/array-arg-negative-integer-offset-throws': [FAIL],
'built-ins/TypedArray/prototype/set/typedarray-arg-negative-integer-offset-throws': [FAIL],
'built-ins/TypedArrays/internals/Set/key-is-minus-zero': [FAIL],
'built-ins/TypedArrays/internals/Set/key-is-not-integer': [FAIL],
'built-ins/TypedArrays/internals/Set/key-is-out-of-bounds': [FAIL],
'built-ins/TypedArrays/internals/Set/tonumber-value-throws': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5329
'built-ins/RegExp/prototype/source/value-line-terminator': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5112
'annexB/language/eval-code/direct/func-block-decl-eval-func-no-skip-try': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-else-decl-a-eval-func-no-skip-try': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-else-decl-b-eval-func-no-skip-try': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-else-stmt-eval-func-no-skip-try': [FAIL],
'annexB/language/eval-code/direct/func-if-decl-no-else-eval-func-no-skip-try': [FAIL],
'annexB/language/eval-code/direct/func-if-stmt-else-decl-eval-func-no-skip-try': [FAIL],
'annexB/language/eval-code/direct/func-switch-case-eval-func-no-skip-try': [FAIL],
'annexB/language/eval-code/direct/func-switch-dflt-eval-func-no-skip-try': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5546
'language/expressions/tagged-template/invalid-escape-sequences': ['--harmony-template-escapes'],
# https://bugs.chromium.org/p/v8/issues/detail?id=5537
'built-ins/global/*': [SKIP],
# PreParser doesn't produce early errors
# https://bugs.chromium.org/p/v8/issues/detail?id=2728
'language/expressions/async-arrow-function/early-errors-arrow-formals-body-duplicate': [FAIL],
'language/expressions/object/method-definition/generator-param-redecl-const': [FAIL],
'language/expressions/object/method-definition/generator-param-redecl-let': [FAIL],
'language/expressions/object/method-definition/name-param-redecl': [FAIL],
'language/statements/async-function/early-errors-declaration-formals-body-duplicate': [FAIL],
# Module-related tests
# https://github.com/tc39/ecma262/pull/858
'language/module-code/namespace/internals/set': [FAIL],
'language/module-code/namespace/internals/define-own-property': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5601
'intl402/PluralRules/*': [SKIP],
# SharedArrayBuffer tests that require flags
'built-ins/SharedArrayBuffer/*': ['--harmony-sharedarraybuffer'],
'built-ins/Atomics/*': ['--harmony-sharedarraybuffer'],
'built-ins/ArrayBuffer/prototype/byteLength/this-is-sharedarraybuffer': ['--harmony-sharedarraybuffer'],
'built-ins/ArrayBuffer/prototype/slice/this-is-sharedarraybuffer': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/buffer-does-not-have-arraybuffer-data-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/buffer-reference-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/byteoffset-is-negative-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/custom-proto-access-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/custom-proto-if-not-object-fallbacks-to-default-prototype-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/custom-proto-if-object-is-used-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/defined-bytelength-and-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/defined-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/defined-byteoffset-undefined-bytelength-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/excessive-bytelength-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/excessive-byteoffset-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/instance-extensibility-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/negative-bytelength-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/negative-byteoffset-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/newtarget-undefined-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/proto-from-ctor-realm-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/buffer/return-buffer-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/buffer/this-has-no-dataview-internal-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/byteLength/return-bytelength-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/byteLength/this-has-no-dataview-internal-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/byteOffset/return-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/byteOffset/this-has-no-dataview-internal-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/index-is-out-of-range-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/negative-byteoffset-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/return-abrupt-from-tonumber-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/return-abrupt-from-tonumber-byteoffset-symbol-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/return-value-clean-arraybuffer-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/return-values-custom-offset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/return-values-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/this-has-no-dataview-internal-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/to-boolean-littleendian-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/prototype/getInt32/toindex-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/return-abrupt-tonumber-bytelength-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/return-abrupt-tonumber-bytelength-symbol-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/return-abrupt-tonumber-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/return-abrupt-tonumber-byteoffset-symbol-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/return-instance-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/toindex-bytelength-sab': ['--harmony-sharedarraybuffer'],
'built-ins/DataView/toindex-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArray/prototype/set/typedarray-arg-set-values-diff-buffer-other-type-conversions-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArray/prototype/set/typedarray-arg-set-values-diff-buffer-other-type-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArray/prototype/set/typedarray-arg-set-values-diff-buffer-same-type-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-same-type-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-bufferbyteoffset-throws-from-modulo-element-size-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-byteoffset-is-negative-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-byteoffset-is-negative-zero-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-byteoffset-is-symbol-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-byteoffset-throws-from-modulo-element-size-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-byteoffset-to-number-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-custom-proto-access-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-defined-length-and-offset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-defined-length-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-defined-negative-length-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-defined-offset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-excessive-length-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-excessive-offset-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-invoked-with-undefined-newtarget-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-is-referenced-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-length-access-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-length-is-symbol-throws-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-new-instance-extensibility-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-proto-from-ctor-realm-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-returns-new-instance-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-toindex-bytelength-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-toindex-byteoffset-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-typedarray-backed-by-sharedarraybuffer': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-use-custom-proto-if-object-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/buffer-arg-use-default-proto-if-custom-proto-is-not-object-sab': ['--harmony-sharedarraybuffer'],
'built-ins/TypedArrays/internals/Get/indexed-value-sab': ['--harmony-sharedarraybuffer'],
# https://bugs.chromium.org/p/v8/issues/detail?id=6045
'intl402/NumberFormat/prototype/format/11.3.2_TRF': [FAIL],
'intl402/NumberFormat/prototype/format/11.3.2_TRP': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=6049
'built-ins/Object/internals/DefineOwnProperty/consistent-value-function-caller': [FAIL_SLOPPY],
'built-ins/Object/internals/DefineOwnProperty/consistent-value-function-arguments': [FAIL_SLOPPY],
# https://bugs.chromium.org/p/v8/issues/detail?id=4743#c28
'built-ins/RegExp/property-escapes/generated/Emoji_Component': [FAIL],
######################## 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/6.2.3': [FAIL],
'intl402/Collator/10.1.2_a': [PASS, FAIL],
'intl402/Collator/10.2.3_b': [PASS, FAIL],
'intl402/Collator/prototype/10.3_a': [FAIL],
'intl402/DateTimeFormat/12.1.2': [PASS, FAIL],
'intl402/DateTimeFormat/12.2.3_b': [FAIL],
'intl402/DateTimeFormat/prototype/12.3_a': [FAIL],
'intl402/Number/prototype/toLocaleString/13.2.1_5': [PASS, FAIL],
'intl402/NumberFormat/11.1.1_20_c': [FAIL],
'intl402/NumberFormat/11.1.2': [PASS, FAIL],
'intl402/NumberFormat/11.2.3_b': [FAIL],
'intl402/NumberFormat/prototype/11.3_a': [FAIL],
'intl402/String/prototype/localeCompare/13.1.1_7': [PASS, FAIL],
##################### DELIBERATE INCOMPATIBILITIES #####################
# We do not expose Array.prototype.values due to webcompat issues.
# Most recent incompatability: https://crbug.com/615873
# https://code.google.com/p/v8/issues/detail?id=4247
'built-ins/Array/prototype/Symbol.iterator': [FAIL],
'built-ins/Array/prototype/values/returns-iterator': [FAIL],
'built-ins/Array/prototype/values/returns-iterator-from-object': [FAIL],
'built-ins/Array/prototype/values/prop-desc': [FAIL],
'built-ins/Array/prototype/values/name': [FAIL],
'built-ins/Array/prototype/values/length': [FAIL],
'built-ins/Array/prototype/values/iteration': [FAIL],
'built-ins/Array/prototype/values/iteration-mutable': [FAIL],
'built-ins/Array/prototype/Symbol.unscopables/value': [FAIL],
# https://github.com/tc39/ecma262/pull/889
'annexB/language/function-code/block-decl-func-skip-arguments': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=6538
'built-ins/Array/prototype/unshift/throws-if-integer-limit-exceeded': [SKIP],
'built-ins/Array/prototype/reverse/length-exceeding-integer-limit-with-proxy': [FAIL],
'built-ins/Array/prototype/splice/create-species-length-exceeding-integer-limit': [FAIL],
'built-ins/Array/prototype/splice/throws-if-integer-limit-exceeded': [SKIP],
# https://bugs.chromium.org/p/v8/issues/detail?id=5855
'language/expressions/async-generator/named-yield-promise-reject-next': [FAIL],
'language/expressions/async-generator/named-yield-promise-reject-next-catch': [FAIL],
'language/expressions/async-generator/yield-promise-reject-next': [FAIL],
'language/expressions/async-generator/yield-promise-reject-next-catch': [FAIL],
'language/expressions/class/async-gen-method-static-yield-promise-reject-next': [FAIL],
'language/expressions/class/async-gen-method-static-yield-promise-reject-next-catch': [FAIL],
'language/expressions/class/async-gen-method-yield-promise-reject-next': [FAIL],
'language/expressions/class/async-gen-method-yield-promise-reject-next-catch': [FAIL],
'language/expressions/object/method-definition/async-gen-yield-promise-reject-next': [FAIL],
'language/expressions/object/method-definition/async-gen-yield-promise-reject-next-catch': [FAIL],
'language/statements/async-generator/yield-promise-reject-next': [FAIL],
'language/statements/async-generator/yield-promise-reject-next-catch': [FAIL],
'language/statements/class/async-gen-method-static-yield-promise-reject-next': [FAIL],
'language/statements/class/async-gen-method-static-yield-promise-reject-next-catch': [FAIL],
'language/statements/class/async-gen-method-yield-promise-reject-next': [FAIL],
'language/statements/class/async-gen-method-yield-promise-reject-next-catch': [FAIL],
'language/statements/for-await-of/async-func-decl-dstr-array-elem-init-let': [FAIL],
'language/statements/for-await-of/async-func-decl-dstr-array-elem-put-let': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-init-let': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-put-let': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-elision-iter-abpt': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-get-err': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-nrml-close-null': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-err': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-list-rtrn-close-null': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-err': [PASS, FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-array-elem-trlg-iter-rest-rtrn-close-null': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=6541
'language/export/escaped-as-export-specifier': [FAIL],
'language/export/escaped-from': [FAIL],
'language/expressions/object/method-definition/escaped-get': [FAIL],
'language/expressions/object/method-definition/escaped-set': [FAIL],
'language/import/escaped-as-import-specifier': [FAIL],
'language/import/escaped-as-namespace-import': [FAIL],
'language/import/escaped-from': [FAIL],
'language/statements/for-await-of/escaped-of': [FAIL],
'language/statements/for-of/escaped-of': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=6542
'built-ins/Array/prototype/sort/comparefn-nonfunction-call-throws': [FAIL],
'built-ins/TypedArray/prototype/sort/comparefn-nonfunction-call-throws': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=6543
'language/statements/labeled/value-await-non-module-escaped': [FAIL],
'language/statements/labeled/value-yield-non-strict-escaped': [FAIL],
############################ INVALID TESTS #############################
# Test makes unjustified assumptions about the number of calls to SortCompare.
# Test262 Bug: https://bugs.ecmascript.org/show_bug.cgi?id=596
'built-ins/Array/prototype/sort/bug_596_1': [PASS, FAIL_OK],
# https://github.com/tc39/test262/pull/688#pullrequestreview-14025354
'built-ins/Function/internals/Construct/derived-this-uninitialized-realm': [FAIL],
# https://github.com/tc39/test262/pull/688/files#r93657665
'built-ins/TypedArrays/typedarray-arg-other-ctor-buffer-ctor-custom-species-proto-from-ctor-realm': [FAIL],
'built-ins/TypedArrays/typedarray-arg-same-ctor-buffer-ctor-species-custom-proto-from-ctor-realm': [FAIL],
# Date tests that fail in CE(S)T timezone.
# https://bugs.chromium.org/p/v8/issues/detail?id=5449
'built-ins/Date/prototype/setFullYear/new-value-time-clip': [PASS, FAIL],
'built-ins/Date/prototype/setMonth/new-value-time-clip': [PASS, FAIL],
# https://github.com/tc39/test262/issues/1085
'language/directive-prologue/10.1.1-5gs': [PASS, FAIL_SLOPPY],
'language/directive-prologue/10.1.1-2gs': [PASS, FAIL_SLOPPY],
'language/directive-prologue/14.1-4gs': [PASS, FAIL_SLOPPY],
'language/directive-prologue/10.1.1-8gs': [PASS, FAIL_SLOPPY],
'language/directive-prologue/14.1-5gs': [PASS, FAIL_SLOPPY],
# Test against internals of harness; we plug in differently
'harness/detachArrayBuffer': [SKIP],
'harness/detachArrayBuffer-$262.detachArrayBuffer': [SKIP],
# Invalid {Assignment,Binding}RestPattern
# https://bugs.chromium.org/p/v8/issues/detail?id=6500
'language/expressions/assignment/dstr-obj-rest-obj-own-property': [FAIL],
'language/statements/for-of/dstr-obj-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-obj-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/expressions/assignment/dstr-obj-rest-nested-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-own-property': [FAIL],
'language/expressions/assignment/dstr-obj-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-of/dstr-obj-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-obj-rest-nested-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-decl-dstr-obj-rest-nested-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-decl-dstr-obj-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-decl-dstr-obj-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-gen-decl-dstr-obj-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-of/dstr-obj-rest-nested-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-nested-rest': [FAIL],
'language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-own-property': [FAIL],
'language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-nested-obj': [FAIL],
'language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-own-property': [FAIL],
############################ SKIPPED TESTS #############################
# These tests take a looong time to run.
'built-ins/decodeURI/S15.1.3.1_A1.10_T1': [SKIP],
'built-ins/decodeURI/S15.1.3.1_A1.11_T1': [SKIP],
'built-ins/decodeURI/S15.1.3.1_A1.11_T2': [SKIP],
'built-ins/decodeURI/S15.1.3.1_A1.12_T1': [SKIP],
'built-ins/decodeURI/S15.1.3.1_A1.12_T2': [SKIP],
'built-ins/decodeURI/S15.1.3.1_A2.5_T1': [SKIP],
'built-ins/decodeURIComponent/S15.1.3.2_A1.11_T1': [SKIP],
'built-ins/decodeURIComponent/S15.1.3.2_A1.12_T1': [SKIP],
'built-ins/decodeURIComponent/S15.1.3.2_A2.5_T1': [SKIP],
'built-ins/RegExp/S15.10.2.12_A3_T1': [SKIP],
'intl402/9.2.6_4_b': [SKIP],
'language/literals/regexp/S7.8.5_A1.1_T2': [SKIP],
'language/literals/regexp/S7.8.5_A1.4_T2': [SKIP],
'language/literals/regexp/S7.8.5_A2.1_T2': [SKIP],
'language/literals/regexp/S7.8.5_A2.4_T2': [SKIP],
'built-ins/Array/prototype/slice/S15.4.4.10_A3_T1': [SKIP],
'built-ins/Array/prototype/slice/S15.4.4.10_A3_T2': [SKIP],
############################ SLOW TESTS #############################
'annexB/built-ins/RegExp/RegExp-leading-escape-BMP': [PASS, SLOW],
'annexB/built-ins/RegExp/RegExp-trailing-escape-BMP': [PASS, SLOW],
'language/comments/S7.4_A5': [PASS, SLOW],
'language/comments/S7.4_A6': [PASS, SLOW],
}], # ALWAYS
['no_i18n == True', {
# Unicode canonicalization is not available with i18n turned off.
'built-ins/String/prototype/localeCompare/15.5.4.9_CE': [SKIP],
# Unicode regexp case mapping is not available with i18n turned off.
'language/literals/regexp/u-case-mapping': [SKIP],
# BUG(v8:4437).
'built-ins/String/prototype/normalize/return-normalized-string': [SKIP],
'built-ins/String/prototype/normalize/return-normalized-string-from-coerced-form': [SKIP],
'built-ins/String/prototype/normalize/return-normalized-string-using-default-parameter': [SKIP],
Use ICU case conversion/transliterator for case conversion When I18N is enabled, use ICU's case conversion API and transliteration API [1] to implement String.prototype.to{Upper,Lower}Case and String.prototype.toLocale{Upper,Lower}Case. * ICU-based case conversion was implemented in runtime-i18n.cc/i18n.js * The above 4 functions are overridden with those in i18n.js when --icu_case_mapping flag is turned on. To control the override by the flag, they're overriden in icu-case-mapping.js Previously, toLocale{U,L}Case just called to{U,L}Case so that they didn't support locale-sensitive case conversion for Turkic languages (az, tr), Greek (el) and Lithuanian (lt). Before ICU APIs for the most general case are called, a fast-path for Latin-1 is tried. It's taken from Blink and adopted as necessary. This fast path is always tried for to{U,L}Case. For toLocale{U,L}Case, it's only taken when a locale (explicitly specified or default) is not in {az, el, lt, tr}. With these changes, a build with --icu_case_mapping=true passes a bunch of tests in test262/intl402/Strings/* and intl/* that failed before. Handling of pure ASCII strings (aligned at word boundary) are not as fast as Unibrow's implementation that uses word-by-word case conversion. OTOH, Latin-1 input handling is faster than Unibrow. General Unicode input handling is slower but more accurate. See https://docs.google.com/spreadsheets/d/1KJCJxKc1FxFXjwmYqABS0_2cNdPetvnd8gY8_HGSbrg/edit?usp=sharing for the benchmark. This CL started with http://crrev.com/1544023002#ps200001 by littledan@, but has changed significantly since. [1] See why transliteration API is needed for uppercasing in Greek. http://bugs.icu-project.org/trac/ticket/10582 R=yangguo BUG=v8:4476,v8:4477 LOG=Y TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*, mjsunit/string-case, intl/general/case* Review-Url: https://codereview.chromium.org/1812673005 Cr-Commit-Position: refs/heads/master@{#36187}
2016-05-11 19:01:41 +00:00
# Case-conversion is not fully compliant to the Unicode spec with i18n off.
'built-ins/String/prototype/toLocaleLowerCase/Final_Sigma_U180E': [FAIL],
Use ICU case conversion/transliterator for case conversion When I18N is enabled, use ICU's case conversion API and transliteration API [1] to implement String.prototype.to{Upper,Lower}Case and String.prototype.toLocale{Upper,Lower}Case. * ICU-based case conversion was implemented in runtime-i18n.cc/i18n.js * The above 4 functions are overridden with those in i18n.js when --icu_case_mapping flag is turned on. To control the override by the flag, they're overriden in icu-case-mapping.js Previously, toLocale{U,L}Case just called to{U,L}Case so that they didn't support locale-sensitive case conversion for Turkic languages (az, tr), Greek (el) and Lithuanian (lt). Before ICU APIs for the most general case are called, a fast-path for Latin-1 is tried. It's taken from Blink and adopted as necessary. This fast path is always tried for to{U,L}Case. For toLocale{U,L}Case, it's only taken when a locale (explicitly specified or default) is not in {az, el, lt, tr}. With these changes, a build with --icu_case_mapping=true passes a bunch of tests in test262/intl402/Strings/* and intl/* that failed before. Handling of pure ASCII strings (aligned at word boundary) are not as fast as Unibrow's implementation that uses word-by-word case conversion. OTOH, Latin-1 input handling is faster than Unibrow. General Unicode input handling is slower but more accurate. See https://docs.google.com/spreadsheets/d/1KJCJxKc1FxFXjwmYqABS0_2cNdPetvnd8gY8_HGSbrg/edit?usp=sharing for the benchmark. This CL started with http://crrev.com/1544023002#ps200001 by littledan@, but has changed significantly since. [1] See why transliteration API is needed for uppercasing in Greek. http://bugs.icu-project.org/trac/ticket/10582 R=yangguo BUG=v8:4476,v8:4477 LOG=Y TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*, mjsunit/string-case, intl/general/case* Review-Url: https://codereview.chromium.org/1812673005 Cr-Commit-Position: refs/heads/master@{#36187}
2016-05-11 19:01:41 +00:00
'built-ins/String/prototype/toLocaleLowerCase/special_casing_conditional': [FAIL],
'built-ins/String/prototype/toLocaleLowerCase/supplementary_plane': [FAIL],
'built-ins/String/prototype/toLowerCase/Final_Sigma_U180E': [FAIL],
Use ICU case conversion/transliterator for case conversion When I18N is enabled, use ICU's case conversion API and transliteration API [1] to implement String.prototype.to{Upper,Lower}Case and String.prototype.toLocale{Upper,Lower}Case. * ICU-based case conversion was implemented in runtime-i18n.cc/i18n.js * The above 4 functions are overridden with those in i18n.js when --icu_case_mapping flag is turned on. To control the override by the flag, they're overriden in icu-case-mapping.js Previously, toLocale{U,L}Case just called to{U,L}Case so that they didn't support locale-sensitive case conversion for Turkic languages (az, tr), Greek (el) and Lithuanian (lt). Before ICU APIs for the most general case are called, a fast-path for Latin-1 is tried. It's taken from Blink and adopted as necessary. This fast path is always tried for to{U,L}Case. For toLocale{U,L}Case, it's only taken when a locale (explicitly specified or default) is not in {az, el, lt, tr}. With these changes, a build with --icu_case_mapping=true passes a bunch of tests in test262/intl402/Strings/* and intl/* that failed before. Handling of pure ASCII strings (aligned at word boundary) are not as fast as Unibrow's implementation that uses word-by-word case conversion. OTOH, Latin-1 input handling is faster than Unibrow. General Unicode input handling is slower but more accurate. See https://docs.google.com/spreadsheets/d/1KJCJxKc1FxFXjwmYqABS0_2cNdPetvnd8gY8_HGSbrg/edit?usp=sharing for the benchmark. This CL started with http://crrev.com/1544023002#ps200001 by littledan@, but has changed significantly since. [1] See why transliteration API is needed for uppercasing in Greek. http://bugs.icu-project.org/trac/ticket/10582 R=yangguo BUG=v8:4476,v8:4477 LOG=Y TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*, mjsunit/string-case, intl/general/case* Review-Url: https://codereview.chromium.org/1812673005 Cr-Commit-Position: refs/heads/master@{#36187}
2016-05-11 19:01:41 +00:00
'built-ins/String/prototype/toLowerCase/special_casing_conditional': [FAIL],
'built-ins/String/prototype/toLowerCase/supplementary_plane': [FAIL],
'built-ins/String/prototype/toLocaleUpperCase/supplementary_plane': [FAIL],
'built-ins/String/prototype/toUpperCase/supplementary_plane': [FAIL],
# Locale-sensitive case-conversion is not available with i18n off.
'intl402/String/prototype/toLocaleLowerCase/special_casing_Azeri': [FAIL],
'intl402/String/prototype/toLocaleLowerCase/special_casing_Lithuanian': [FAIL],
'intl402/String/prototype/toLocaleLowerCase/special_casing_Turkish': [FAIL],
'intl402/String/prototype/toLocaleUpperCase/special_casing_Azeri': [FAIL],
'intl402/String/prototype/toLocaleUpperCase/special_casing_Lithuanian': [FAIL],
'intl402/String/prototype/toLocaleUpperCase/special_casing_Turkish': [FAIL],
# Unicode property escapes unavailable without i18n
'built-ins/RegExp/property-escapes/*': [SKIP],
'built-ins/RegExp/named-groups/unicode-property-names': [SKIP],
}], # no_i18n == True
['arch == arm or arch == mipsel or arch == mips or arch == arm64 or arch == mips64 or arch == mips64el', {
# TODO(mstarzinger): Causes stack overflow on simulators due to eager
# compilation of parenthesized function literals. Needs investigation.
'language/statements/function/S13.2.1_A1_T1': [SKIP],
# BUG(3251225): Tests that timeout with --noopt.
'built-ins/decodeURI/S15.1.3.1_A2.4_T1': [SKIP],
'built-ins/decodeURI/S15.1.3.1_A2.5_T1': [SKIP],
'built-ins/decodeURIComponent/S15.1.3.2_A2.4_T1': [SKIP],
'built-ins/decodeURIComponent/S15.1.3.2_A2.5_T1': [SKIP],
'built-ins/encodeURI/S15.1.3.3_A2.3_T1': [SKIP],
'built-ins/encodeURIComponent/S15.1.3.4_A2.3_T1': [SKIP],
}], # 'arch == arm or arch == mipsel or arch == mips or arch == arm64'
['byteorder == big', {
# Test failures on big endian platforms due to the way the tests
# are written
# https://github.com/tc39/test262/issues/757
'built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type': [SKIP],
}],
['asan == True', {
# BUG(v8:4653): Test262 tests which rely on quit() are not compatible with
# asan's --omit-quit flag.
'built-ins/Promise/prototype/then/deferred-is-resolved-value': [SKIP],
}], # asan == True
['asan == True or msan == True or tsan == True', {
# https://bugs.chromium.org/p/v8/issues/detail?id=4639
# The failed allocation causes an asan/msan/tsan error
'built-ins/ArrayBuffer/allocation-limit': [SKIP],
'built-ins/ArrayBuffer/length-is-too-large-throws': [SKIP],
'built-ins/SharedArrayBuffer/allocation-limit': [SKIP],
'built-ins/SharedArrayBuffer/length-is-too-large-throws': [SKIP],
}], # asan == True or msan == True or tsan == True
['variant == wasm_traps', {
'*': [SKIP],
}], # variant == wasm_traps
['variant != default or arch == arm or arch == arm64 or arch == mipsel or arch == mips or arch == mips64 or arch == mips64el', {
# These tests take a long time to run
'built-ins/RegExp/property-escapes/generated/*': [SKIP],
}], # variant != default or arch == arm or arch == arm64
]