1aee75551e
There was a bug in for-of loops without newly declared variables: If, in performing the assignment, an exception were thrown, then IteratorClose would not be called. The problem was that the assignment is done as part of assign_each, which happens before the loop is put back in the state which is recognized to be breaking/throwing/returning early. This patch modifies the for-of desugaring by setting the loop state before, rather than after, evaluating the assign_each portion, which is responsible for evaluating the assignment in for-of loops which do not have a declaration. This patch, together with https://codereview.chromium.org/1728973002 , allow all test262 iterator return-related tests to pass. R=rossberg BUG=v8:4776 LOG=Y Review URL: https://codereview.chromium.org/1731773003 Cr-Commit-Position: refs/heads/master@{#34262}
588 lines
32 KiB
Plaintext
588 lines
32 KiB
Plaintext
# 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, {
|
|
############################### BUGS ###################################
|
|
|
|
# BUG(v8:3455)
|
|
'intl402/11.2.3_b': [FAIL],
|
|
'intl402/12.2.3_b': [FAIL],
|
|
|
|
###################### NEEDS INVESTIGATION #######################
|
|
|
|
# Possibly same cause as S8.5_A2.1, below: floating-point tests.
|
|
'built-ins/Math/cos/S15.8.2.7_A7': [PASS, FAIL_OK],
|
|
'built-ins/Math/sin/S15.8.2.16_A7': [PASS, FAIL_OK],
|
|
'built-ins/Math/tan/S15.8.2.18_A7': [PASS, FAIL_OK],
|
|
|
|
# This is an incompatibility between ES5 and V8 on enumerating
|
|
# shadowed elements in a for..in loop.
|
|
# https://code.google.com/p/v8/issues/detail?id=705
|
|
'language/statements/for-in/12.6.4-2': [PASS, FAIL_OK],
|
|
|
|
###################### MISSING ES6 FEATURES #######################
|
|
|
|
# https://bugs.chromium.org/p/v8/issues/detail?id=4768
|
|
# The Reflect.enumerate trap is removed
|
|
'built-ins/Reflect/enumerate/*': [SKIP],
|
|
'built-ins/Proxy/enumerate/*': [SKIP],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4163
|
|
'built-ins/GeneratorPrototype/next/context-constructor-invocation': [FAIL],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4348
|
|
'built-ins/String/prototype/Symbol.iterator/this-val-non-obj-coercible': [FAIL],
|
|
|
|
# The order of adding the name property is wrong
|
|
# https://code.google.com/p/v8/issues/detail?id=4199
|
|
'language/computed-property-names/class/static/method-number': [FAIL, FAIL_SLOPPY],
|
|
'language/computed-property-names/class/static/method-symbol': [FAIL, FAIL_SLOPPY],
|
|
'language/computed-property-names/class/static/method-string': [FAIL, FAIL_SLOPPY],
|
|
|
|
# We do not expose Array.prototype.values
|
|
# 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://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],
|
|
|
|
# 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/Proxy/revocable/revocation-function-name': [FAIL],
|
|
'language/expressions/assignment/fn-name-lhs-cover': [FAIL],
|
|
'language/expressions/assignment/fn-name-lhs-member': [FAIL],
|
|
'language/expressions/class/name': [FAIL],
|
|
'language/expressions/function/name': [FAIL],
|
|
'language/expressions/generators/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],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4253
|
|
'language/asi/S7.9_A5.7_T1': [PASS, FAIL_OK],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4602
|
|
'built-ins/RegExp/prototype/exec/get-sticky-coerce': [FAIL],
|
|
'built-ins/RegExp/prototype/exec/get-sticky-err': [FAIL],
|
|
'built-ins/RegExp/prototype/test/get-sticky-err': [FAIL],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4504
|
|
'built-ins/RegExp/prototype/exec/y-fail-lastindex-no-write': [PASS, FAIL],
|
|
'built-ins/RegExp/prototype/test/y-fail-lastindex-no-write': [PASS, FAIL],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4305
|
|
# SKIP rather than FAIL some tests, as they may check for an exception which
|
|
# happens to be thrown for some other reason (e.g,
|
|
# built-ins/RegExp/prototype/Symbol.match/builtin-failure-set-lastindex-err)
|
|
'built-ins/RegExp/prototype/Symbol.match/*': [SKIP],
|
|
'built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test': [FAIL],
|
|
'built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test': [FAIL],
|
|
'built-ins/String/prototype/startsWith/return-abrupt-from-searchstring-regexp-test': [FAIL],
|
|
'built-ins/String/prototype/match/invoke-builtin-match': [FAIL],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4343
|
|
'built-ins/RegExp/prototype/Symbol.replace/*': [SKIP],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4344
|
|
'built-ins/RegExp/prototype/Symbol.search/*': [SKIP],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4345
|
|
'built-ins/RegExp/prototype/Symbol.split/*': [SKIP],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4360
|
|
'intl402/Collator/10.1.1_1': [FAIL],
|
|
'intl402/DateTimeFormat/12.1.1_1': [FAIL],
|
|
'intl402/NumberFormat/11.1.1_1': [FAIL],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4361
|
|
'intl402/Collator/10.1.1_a': [FAIL],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4476
|
|
'built-ins/String/prototype/toLocaleLowerCase/special_casing_conditional': [FAIL],
|
|
'built-ins/String/prototype/toLocaleLowerCase/supplementary_plane': [FAIL],
|
|
'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],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4477
|
|
'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],
|
|
|
|
# https://bugs.chromium.org/p/v8/issues/detail?id=4628
|
|
'language/eval-code/non-definable-function-with-variable': [FAIL],
|
|
'language/eval-code/non-definable-function-with-function': [FAIL],
|
|
|
|
# https://bugs.chromium.org/p/v8/issues/detail?id=4592
|
|
'built-ins/ArrayBuffer/length-is-absent': [FAIL],
|
|
'built-ins/ArrayBuffer/length-is-not-number': [FAIL],
|
|
'built-ins/ArrayBuffer/positive-integer-length': [FAIL],
|
|
'language/statements/class/subclass/builtin-objects/ArrayBuffer/regular-subclassing': [FAIL],
|
|
|
|
# https://bugs.chromium.org/p/v8/issues/detail?id=4633
|
|
'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/Promise/all/capability-executor-not-callable': [FAIL],
|
|
'built-ins/Promise/reject/capability-executor-not-callable': [FAIL],
|
|
'built-ins/Promise/race/capability-executor-not-callable': [FAIL],
|
|
'built-ins/Promise/prototype/then/capability-executor-not-callable': [FAIL],
|
|
'built-ins/Promise/resolve/capability-executor-not-callable': [FAIL],
|
|
'built-ins/Promise/race/S25.4.4.3_A3.1_T2': [FAIL],
|
|
|
|
# https://bugs.chromium.org/p/v8/issues/detail?id=4634
|
|
'built-ins/DataView/prototype/setFloat64/index-check-before-value-conversion': [FAIL],
|
|
'built-ins/DataView/prototype/setFloat32/index-check-before-value-conversion': [FAIL],
|
|
'built-ins/DataView/prototype/setInt16/index-check-before-value-conversion': [FAIL],
|
|
'built-ins/DataView/prototype/setInt32/index-check-before-value-conversion': [FAIL],
|
|
'built-ins/DataView/prototype/setUint16/index-check-before-value-conversion': [FAIL],
|
|
'built-ins/DataView/prototype/setUint32/index-check-before-value-conversion': [FAIL],
|
|
'built-ins/DataView/prototype/setUint8/index-check-before-value-conversion': [FAIL],
|
|
'built-ins/DataView/prototype/setInt8/index-check-before-value-conversion': [FAIL],
|
|
|
|
# https://bugs.chromium.org/p/v8/issues/detail?id=4706
|
|
'language/statements/class/subclass/builtin-objects/NativeError/EvalError-message': [FAIL],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/RangeError-message': [FAIL],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/ReferenceError-message': [FAIL],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/SyntaxError-message': [FAIL],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/TypeError-message': [FAIL],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/URIError-message': [FAIL],
|
|
'language/statements/class/subclass/builtin-objects/Error/message-property-assignment': [FAIL],
|
|
|
|
# https://bugs.chromium.org/p/v8/issues/detail?id=4663
|
|
'built-ins/object/entries/*': [SKIP],
|
|
'built-ins/object/values/*': [SKIP],
|
|
'built-ins/Object/entries/*': [SKIP],
|
|
'built-ins/Object/values/*': [SKIP],
|
|
|
|
# https://code.google.com/p/chromium/issues/detail?id=581577
|
|
'built-ins/RegExp/prototype/source/15.10.7.1-1': [FAIL],
|
|
'built-ins/RegExp/prototype/global/15.10.7.2-1': [FAIL],
|
|
'built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1': [FAIL],
|
|
'built-ins/RegExp/prototype/multiline/15.10.7.4-1': [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/9.2.1_2': [FAIL],
|
|
'intl402/9.2.6_2': [FAIL],
|
|
'intl402/Collator/10.1.2.1_4': [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.1': [FAIL],
|
|
'intl402/DateTimeFormat/12.1.1_a': [FAIL],
|
|
'intl402/DateTimeFormat/12.1.2': [PASS, FAIL],
|
|
'intl402/DateTimeFormat/12.1.2.1_4': [FAIL],
|
|
'intl402/DateTimeFormat/12.2.3_b': [FAIL],
|
|
'intl402/DateTimeFormat/prototype/12.3.3': [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.1_a': [FAIL],
|
|
'intl402/NumberFormat/11.1.1': [FAIL],
|
|
'intl402/NumberFormat/11.1.2': [PASS, FAIL],
|
|
'intl402/NumberFormat/11.1.2.1_4': [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 #####################
|
|
|
|
'built-ins/Math/exp/S15.8.2.8_A6': [PASS, FAIL_OK], # Math.exp (less precise with --fast-math)
|
|
|
|
# Linux for ia32 (and therefore simulators) default to extended 80 bit
|
|
# floating point formats, so these tests checking 64-bit FP precision fail.
|
|
# The other platforms/arch's pass these tests.
|
|
# We follow the other major JS engines by keeping this default.
|
|
'language/types/number/S8.5_A2.1': [PASS, FAIL_OK],
|
|
'language/types/number/S8.5_A2.2': [PASS, FAIL_OK],
|
|
|
|
# https://code.google.com/p/v8/issues/detail?id=4693
|
|
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-function-declaration-with-function-declaration': [PASS, FAIL_SLOPPY],
|
|
|
|
############################ INVALID TESTS #############################
|
|
|
|
# The reference value calculated by Test262 is incorrect if you run these
|
|
# tests in PST/PDT between first Sunday in March and first Sunday in April.
|
|
# The DST switch was moved in 2007 whereas Test262 bases the reference value
|
|
# on 2000. Test262 Bug: https://bugs.ecmascript.org/show_bug.cgi?id=293
|
|
'built-ins/Date/S15.9.3.1_A5_T1': [PASS, FAIL_OK],
|
|
'built-ins/Date/S15.9.3.1_A5_T2': [PASS, FAIL_OK],
|
|
'built-ins/Date/S15.9.3.1_A5_T3': [PASS, FAIL_OK],
|
|
'built-ins/Date/S15.9.3.1_A5_T4': [PASS, FAIL_OK],
|
|
'built-ins/Date/S15.9.3.1_A5_T5': [PASS, FAIL_OK],
|
|
'built-ins/Date/S15.9.3.1_A5_T6': [PASS, FAIL_OK],
|
|
|
|
# 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],
|
|
|
|
# Tests do not return boolean.
|
|
'built-ins/Object/keys/15.2.3.14-1-1': [PASS, FAIL_OK],
|
|
'built-ins/Object/keys/15.2.3.14-1-2': [PASS, FAIL_OK],
|
|
'built-ins/Object/keys/15.2.3.14-1-3': [PASS, FAIL_OK],
|
|
|
|
# Test bug https://github.com/tc39/test262/issues/405
|
|
'intl402/Collator/prototype/compare/10.3.2_1_c': [PASS, FAIL_OK],
|
|
'intl402/Collator/prototype/compare/10.3.2_CS_b_NN': [PASS, FAIL_OK],
|
|
'intl402/Collator/prototype/compare/10.3.2_CS_c_NN': [PASS, FAIL_OK],
|
|
'intl402/Collator/prototype/compare/10.3.2_CS_d_NN': [PASS, FAIL_OK],
|
|
'intl402/Date/prototype/13.3.0_7': [PASS, FAIL_OK],
|
|
|
|
# https://github.com/tc39/test262/issues/489
|
|
# Test will pass in 0 or -GMT, but fail in +GMT
|
|
'language/statements/class/subclass/builtin-objects/Date/regular-subclassing': [PASS, FAIL_OK],
|
|
|
|
############################ 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],
|
|
}], # ALWAYS
|
|
|
|
['system == linux', {
|
|
# BUG(v8:4437).
|
|
'intl402/Collator/10.1.1_19_c': [PASS, FAIL],
|
|
'intl402/Collator/9.2.5_11_g_ii_2': [PASS, FAIL],
|
|
'intl402/NumberFormat/11.1.1_17': [PASS, FAIL],
|
|
'intl402/NumberFormat/11.1.1_19': [PASS, FAIL],
|
|
'intl402/NumberFormat/prototype/format/11.3.2_TRF': [PASS, FAIL],
|
|
'intl402/NumberFormat/prototype/format/11.3.2_TRP': [PASS, FAIL],
|
|
}], # system == linux
|
|
|
|
['system == macos', {
|
|
'intl402/11.3.2_TRP': [FAIL],
|
|
'intl402/9.2.5_11_g_ii_2': [FAIL],
|
|
|
|
# BUG(v8:4437).
|
|
'intl402/Collator/10.1.1_19_c': [SKIP],
|
|
'intl402/Collator/9.2.5_11_g_ii_2': [SKIP],
|
|
'intl402/NumberFormat/11.1.1_17': [SKIP],
|
|
'intl402/NumberFormat/11.1.1_19': [SKIP],
|
|
'intl402/NumberFormat/prototype/format/11.3.2_TRF': [SKIP],
|
|
'intl402/NumberFormat/prototype/format/11.3.2_TRP': [SKIP],
|
|
}], # system == macos
|
|
|
|
['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],
|
|
}], # 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 --nocrankshaft.
|
|
'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'
|
|
|
|
['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],
|
|
}], # asan == True or msan == True or tsan == True
|
|
|
|
['ignition == True', {
|
|
'annexB/B.2.3.*': [SKIP],
|
|
'built-ins/Array/prototype/reduce/*': [SKIP],
|
|
'built-ins/Array/prototype/reduceRight/*': [SKIP],
|
|
'built-ins/GeneratorFunction/*': [SKIP],
|
|
'built-ins/GeneratorPrototype/*': [SKIP],
|
|
'built-ins/Promise/prototype/then/capability-executor-not-callable': [SKIP],
|
|
'built-ins/Reflect/enumerate/*': [SKIP],
|
|
'language/computed-property-names/class/*': [SKIP],
|
|
'language/computed-property-names/to-name-side-effects/*': [SKIP],
|
|
'language/directive-prologue/*': [SKIP],
|
|
'language/expressions/arrow-function/*': [SKIP],
|
|
'language/expressions/assignment/destructuring/*': [SKIP],
|
|
'language/expressions/class/subclass/builtin-objects/GeneratorFunction/*': [SKIP],
|
|
'language/expressions/generators/*': [SKIP],
|
|
'language/expressions/instanceof/primitive-prototype-with-object': [SKIP],
|
|
'language/expressions/instanceof/prototype-getter-with-object-throws': [SKIP],
|
|
'language/expressions/instanceof/prototype-getter-with-object': [SKIP],
|
|
'language/expressions/object/method-definition/yield*': [SKIP],
|
|
'language/expressions/object/method-definition/generator*': [SKIP],
|
|
'language/expressions/yield/*': [SKIP],
|
|
'language/statements/class/definition/methods-gen-no-yield': [SKIP],
|
|
'language/statements/class/definition/methods-gen-return': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-as-expression-with-rhs': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-as-generator-method-binding-identifier': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-as-literal-property-name': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-as-property-name': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-as-statement': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-as-expression-without-rhs': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-as-yield-operand': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-newline': [SKIP],
|
|
'language/statements/class/definition/methods-gen-yield-star-before-newline': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/GeneratorFunction/*': [SKIP],
|
|
'language/statements/generators/*': [SKIP],
|
|
|
|
'built-ins/Array/prototype/concat/Array.prototype.concat_non-array': [SKIP],
|
|
'built-ins/Date/prototype/toISOString/15.9.5.43-0-13': [SKIP],
|
|
'built-ins/Object/prototype/hasOwnProperty/S15.2.4.5_A12': [SKIP],
|
|
'built-ins/Object/prototype/isPrototypeOf/S15.2.4.6_A12': [SKIP],
|
|
'built-ins/Object/prototype/propertyIsEnumerable/S15.2.4.7_A12': [SKIP],
|
|
'built-ins/Object/prototype/toLocaleString/S15.2.4.3_A12': [SKIP],
|
|
'built-ins/Object/prototype/toString/15.2.4.2-1-1': [SKIP],
|
|
'built-ins/Object/prototype/toString/15.2.4.2-1-2': [SKIP],
|
|
'built-ins/Object/prototype/toString/S15.2.4.2_A12': [SKIP],
|
|
'built-ins/Object/prototype/valueOf/S15.2.4.4_A12': [SKIP],
|
|
'built-ins/Object/prototype/valueOf/S15.2.4.4_A14': [SKIP],
|
|
'built-ins/Object/prototype/valueOf/S15.2.4.4_A15': [SKIP],
|
|
'built-ins/Promise/all/S25.4.4.1_A4.1_T1': [SKIP],
|
|
'built-ins/Promise/prototype/then/on-rejected-throw': [SKIP],
|
|
'built-ins/Promise/reject/S25.4.4.4_A3.1_T1': [SKIP],
|
|
'built-ins/String/prototype/codePointAt/this-is-undefined-throws': [SKIP],
|
|
'built-ins/String/prototype/concat/S15.5.4.6_A2': [SKIP],
|
|
'built-ins/String/prototype/endsWith/this-is-undefined-throws': [SKIP],
|
|
'built-ins/String/prototype/includes/this-is-undefined-throws': [SKIP],
|
|
'built-ins/String/prototype/repeat/this-is-undefined-throws': [SKIP],
|
|
'built-ins/String/prototype/startsWith/this-is-undefined-throws': [SKIP],
|
|
'built-ins/String/prototype/trim/15.5.4.20-1-1': [SKIP],
|
|
'language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-1': [SKIP],
|
|
'language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-2': [SKIP],
|
|
'language/block-scope/leave/verify-context-in-labelled-block': [SKIP],
|
|
'language/block-scope/leave/x-after-break-to-label': [SKIP],
|
|
'language/default-parameters/class-definitions': [SKIP],
|
|
'language/default-parameters/generators': [SKIP],
|
|
'language/expressions/object/method-definition/name-prop-name-yield-expr': [SKIP],
|
|
'language/expressions/tagged-template/call-expression-context-no-strict': [SKIP],
|
|
'language/expressions/tagged-template/call-expression-context-strict': [SKIP],
|
|
'language/expressions/template-literal/evaluation-order': [SKIP],
|
|
'language/statements/for-of/body-dstr-assign': [SKIP],
|
|
'language/statements/for-of/break': [SKIP],
|
|
'language/statements/for-of/break-from-catch': [SKIP],
|
|
'language/statements/for-of/break-from-finally': [SKIP],
|
|
'language/statements/for-of/break-from-try': [SKIP],
|
|
'language/statements/for-of/break-label': [SKIP],
|
|
'language/statements/for-of/break-label-from-catch': [SKIP],
|
|
'language/statements/for-of/break-label-from-finally': [SKIP],
|
|
'language/statements/for-of/break-label-from-try': [SKIP],
|
|
'language/statements/for-of/continue': [SKIP],
|
|
'language/statements/for-of/continue-from-catch': [SKIP],
|
|
'language/statements/for-of/continue-from-finally': [SKIP],
|
|
'language/statements/for-of/continue-from-try': [SKIP],
|
|
'language/statements/for-of/continue-label': [SKIP],
|
|
'language/statements/for-of/continue-label-from-catch': [SKIP],
|
|
'language/statements/for-of/continue-label-from-finally': [SKIP],
|
|
'language/statements/for-of/continue-label-from-try': [SKIP],
|
|
'language/statements/for-of/generator': [SKIP],
|
|
'language/statements/for-of/generator-next-error': [SKIP],
|
|
'language/statements/for-of/nested': [SKIP],
|
|
'language/statements/for-of/return': [SKIP],
|
|
'language/statements/for-of/return-from-catch': [SKIP],
|
|
'language/statements/for-of/return-from-finally': [SKIP],
|
|
'language/statements/for-of/return-from-try': [SKIP],
|
|
'language/statements/for-of/throw': [SKIP],
|
|
'language/statements/for-of/throw-from-catch': [SKIP],
|
|
'language/statements/for-of/throw-from-finally': [SKIP],
|
|
'language/statements/for-of/yield': [SKIP],
|
|
'language/statements/for-of/yield-from-catch': [SKIP],
|
|
'language/statements/for-of/yield-from-finally': [SKIP],
|
|
'language/statements/for-of/yield-from-try': [SKIP],
|
|
'language/statements/for-of/yield-star': [SKIP],
|
|
'language/statements/for-of/yield-star-from-catch': [SKIP],
|
|
'language/statements/for-of/yield-star-from-finally': [SKIP],
|
|
'language/statements/for-of/yield-star-from-try': [SKIP],
|
|
'language/object-literal/concise-generator': [SKIP],
|
|
'language/statements/do-while/S12.6.1_A4_T5': [SKIP],
|
|
'language/statements/while/S12.6.2_A4_T5': [SKIP],
|
|
'language/expressions/instanceof/symbol-hasinstance-not-callable': [SKIP],
|
|
|
|
}], # ignition == True
|
|
|
|
['ignition == True and (arch == arm or arch == arm64)', {
|
|
'built-ins/Promise/all/ctx-ctor': [SKIP],
|
|
'built-ins/Promise/race/ctx-ctor': [SKIP],
|
|
'built-ins/decodeURI/S15.1.3.1_A1.12_T3': [SKIP],
|
|
'built-ins/decodeURIComponent/S15.1.3.2_A1.10_T1': [SKIP],
|
|
'built-ins/decodeURIComponent/S15.1.3.2_A1.11_T2': [SKIP],
|
|
'built-ins/decodeURIComponent/S15.1.3.2_A1.12_T2': [SKIP],
|
|
'built-ins/decodeURIComponent/S15.1.3.2_A1.12_T3': [SKIP],
|
|
'intl402/9.2.2': [SKIP],
|
|
'language/statements/class/arguments/default-constructor': [SKIP],
|
|
'language/statements/class/definition/constructor-strict-by-default': [SKIP],
|
|
'language/statements/class/definition/fn-name-accessor-get': [SKIP],
|
|
'language/statements/class/definition/fn-name-accessor-set': [SKIP],
|
|
'language/statements/class/definition/fn-name-gen-method': [SKIP],
|
|
'language/statements/class/definition/fn-name-method': [SKIP],
|
|
'language/statements/class/definition/methods-restricted-properties': [SKIP],
|
|
'language/statements/class/definition/prototype-getter': [SKIP],
|
|
'language/statements/class/definition/prototype-wiring': [SKIP],
|
|
'language/statements/class/definition/this-access-restriction': [SKIP],
|
|
'language/statements/class/definition/this-access-restriction-2': [SKIP],
|
|
'language/statements/class/definition/this-check-ordering': [SKIP],
|
|
'language/statements/class/name': [SKIP],
|
|
'language/statements/class/restricted-properties': [SKIP],
|
|
'language/statements/class/subclass/binding': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Array/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/ArrayBuffer/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Boolean/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/DataView/regular-subclassing': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/DataView/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Date/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Error/regular-subclassing': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Error/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Function/instance-length': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Function/instance-name': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Function/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Map/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/EvalError-name': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/EvalError-super': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/RangeError-name': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/RangeError-super': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/ReferenceError-name': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/ReferenceError-super': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/SyntaxError-name': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/SyntaxError-super': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/TypeError-name': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/TypeError-super': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/URIError-name': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/NativeError/URIError-super': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Number/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Object/constructor-return-undefined-throws': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Object/constructor-returns-non-object': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Promise/regular-subclassing': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Promise/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/RegExp/lastIndex': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/RegExp/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Set/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/String/length': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/String/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/Symbol/new-symbol-with-super-throws': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/WeakMap/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/builtin-objects/WeakSet/super-must-be-called': [SKIP],
|
|
'language/statements/class/subclass/class-definition-null-proto-missing-return-override': [SKIP],
|
|
'language/statements/class/subclass/default-constructor': [SKIP],
|
|
'language/statements/class/subclass/default-constructor-2': [SKIP],
|
|
'language/statements/class/subclass/derived-class-return-override-with-boolean': [SKIP],
|
|
'language/statements/class/subclass/derived-class-return-override-with-null': [SKIP],
|
|
'language/statements/class/subclass/derived-class-return-override-with-number': [SKIP],
|
|
'language/statements/class/subclass/derived-class-return-override-with-string': [SKIP],
|
|
'language/statements/class/subclass/derived-class-return-override-with-symbol': [SKIP],
|
|
'language/statements/const/fn-name-arrow': [SKIP],
|
|
'language/statements/const/fn-name-class': [SKIP],
|
|
'language/statements/const/fn-name-cover': [SKIP],
|
|
'language/statements/const/fn-name-fn': [SKIP],
|
|
'language/statements/const/fn-name-gen': [SKIP],
|
|
'language/statements/let/fn-name-arrow': [SKIP],
|
|
'language/statements/let/fn-name-class': [SKIP],
|
|
'language/statements/let/fn-name-cover': [SKIP],
|
|
'language/statements/let/fn-name-fn': [SKIP],
|
|
'language/statements/let/fn-name-gen': [SKIP],
|
|
'test-api/Regress470113': [SKIP],
|
|
}], # ignition == True and (arch == arm or arch == arm64)
|
|
|
|
]
|