blob: 19992111e2e3ec7ef19d0efeda901bd066f870c6 [file] [log] [blame]
# 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],
# Unicode canonicalization is not available with i18n turned off.
'built-ins/String/prototype/localeCompare/15.5.4.9_CE': [['no_i18n', SKIP]],
###################### NEEDS INVESTIGATION #######################
# Possibly same cause as S8.5_A2.1, below: floating-point tests.
'built-ins/Math/sin/S15.8.2.16_A7': [PASS, FAIL_OK],
'built-ins/Math/tan/S15.8.2.18_A7': [PASS, FAIL_OK],
'built-ins/Math/cos/S15.8.2.7_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],
######################### HARNESS ISSUES ##########################
# These are failures due to our harness not working as supposed
# Uses [onlyStrict]
'built-ins/Array/prototype/find/Array.prototype.find_this-undefined': [FAIL],
###################### MISSING ES6 FEATURES #######################
# Requires --harmony-sloppy
'built-ins/Array/prototype/concat/Array.prototype.concat_non-array': [FAIL],
# --harmony-computed-property-names is not yet enabled
'language/computed-property-names/class/accessor/getter': [FAIL],
'language/computed-property-names/class/accessor/getter-duplicates': [FAIL],
'language/computed-property-names/class/accessor/setter': [FAIL],
'language/computed-property-names/class/accessor/setter-duplicates': [FAIL],
'language/computed-property-names/class/method/constructor': [FAIL],
'language/computed-property-names/class/method/generator': [FAIL],
'language/computed-property-names/class/method/number': [FAIL],
'language/computed-property-names/class/method/string': [FAIL],
'language/computed-property-names/class/method/symbol': [FAIL],
'language/computed-property-names/class/static/method-number': [FAIL],
'language/computed-property-names/class/static/method-string': [FAIL],
'language/computed-property-names/class/static/method-symbol': [FAIL],
'language/computed-property-names/to-name-side-effects/class': [FAIL],
'language/computed-property-names/to-name-side-effects/numbers-class': [FAIL],
# Number.prototype is a plain object in ES6
'built-ins/Number/15.7.4-1': [FAIL],
'built-ins/Number/prototype/S15.7.3.1_A2_T1': [FAIL],
'built-ins/Number/prototype/S15.7.3.1_A2_T2': [FAIL],
'built-ins/Number/prototype/S15.7.3.1_A3': [FAIL],
'built-ins/Number/prototype/S15.7.4_A1': [FAIL],
'built-ins/Number/prototype/toFixed/S15.7.4.5_A1.1_T01': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A1_T01': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A1_T02': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A1_T03': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T01': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T02': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T03': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T04': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T05': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T06': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T07': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T08': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T09': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T10': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T11': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T12': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T13': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T14': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T15': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T16': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T17': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T18': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T19': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T20': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T21': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T22': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T23': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T24': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T25': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T26': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T27': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T28': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T29': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T30': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T31': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T32': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T33': [FAIL],
'built-ins/Number/prototype/toString/S15.7.4.2_A2_T34': [FAIL],
'built-ins/Number/prototype/valueOf/S15.7.4.4_A1_T01': [FAIL],
'built-ins/Number/prototype/valueOf/S15.7.4.4_A1_T02': [FAIL],
######################## OBSOLETED BY ES6 ###########################
# ES6 allows duplicate properties
'language/expressions/object/11.1.5-4-4-a-1-s': [FAIL],
'language/expressions/object/11.1.5_4-4-b-1': [FAIL],
'language/expressions/object/11.1.5_4-4-b-2': [FAIL],
'language/expressions/object/11.1.5_4-4-c-1': [FAIL],
'language/expressions/object/11.1.5_4-4-c-2': [FAIL],
'language/expressions/object/11.1.5_4-4-d-1': [FAIL],
'language/expressions/object/11.1.5_4-4-d-2': [FAIL],
'language/expressions/object/11.1.5_4-4-d-3': [FAIL],
'language/expressions/object/11.1.5_4-4-d-4': [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.
'intl402/6.2.3': [FAIL],
'intl402/9.2.1_2': [FAIL],
'intl402/9.2.6_2': [FAIL],
'intl402/10.1.1_a': [FAIL],
'intl402/10.1.1_19_c': [PASS, FAIL, NO_VARIANTS],
'intl402/10.1.2.1_4': [FAIL],
'intl402/10.2.3_b': [PASS, FAIL],
'intl402/10.3_a': [FAIL],
'intl402/11.1.1_17': [PASS, FAIL],
'intl402/11.1.1_19': [PASS, FAIL],
'intl402/11.1.1_20_c': [FAIL],
'intl402/11.1.1_a': [FAIL],
'intl402/11.1.2.1_4': [FAIL],
'intl402/11.3.2_FN_2': [PASS, FAIL],
'intl402/11.3.2_TRF': [PASS, FAIL],
'intl402/11.3_a': [FAIL],
'intl402/12.1.1_a': [FAIL],
'intl402/12.1.2.1_4': [FAIL],
'intl402/12.3.2_FDT_7_a_iv': [FAIL],
'intl402/12.3.3': [FAIL],
'intl402/12.3_a': [FAIL],
# Test 262 update 2015-03-11
'built-ins/Array/isArray/15.4.3.2-0-5': [FAIL],
'built-ins/Array/prototype/S15.4.3.1_A5': [FAIL],
'built-ins/Array/prototype/S15.4.4_A1.1_T2': [FAIL],
'built-ins/Array/prototype/S15.4.4_A1.2_T1': [FAIL],
'built-ins/Array/prototype/S15.4.4_A1.3_T1': [FAIL],
'built-ins/Array/prototype/every/15.4.4.16-3-12': [FAIL],
'built-ins/Array/prototype/every/15.4.4.16-3-14': [FAIL],
'built-ins/Array/prototype/every/15.4.4.16-3-25': [FAIL],
'built-ins/Array/prototype/every/15.4.4.16-3-29': [FAIL],
'built-ins/Array/prototype/every/15.4.4.16-3-7': [FAIL],
'built-ins/Array/prototype/every/15.4.4.16-3-8': [FAIL],
'built-ins/Array/prototype/filter/15.4.4.20-3-12': [FAIL],
'built-ins/Array/prototype/filter/15.4.4.20-3-25': [FAIL],
'built-ins/Array/prototype/filter/15.4.4.20-3-7': [FAIL],
'built-ins/Array/prototype/find/Array.prototype.find_callable-Proxy-1': [FAIL],
'built-ins/Array/prototype/find/Array.prototype.find_callable-Proxy-2': [FAIL],
'built-ins/Array/prototype/forEach/15.4.4.18-3-12': [FAIL],
'built-ins/Array/prototype/forEach/15.4.4.18-3-25': [FAIL],
'built-ins/Array/prototype/forEach/15.4.4.18-3-7': [FAIL],
'built-ins/Array/prototype/indexOf/15.4.4.14-3-12': [FAIL],
'built-ins/Array/prototype/indexOf/15.4.4.14-3-14': [FAIL],
'built-ins/Array/prototype/indexOf/15.4.4.14-3-25': [FAIL],
'built-ins/Array/prototype/indexOf/15.4.4.14-3-28': [FAIL],
'built-ins/Array/prototype/indexOf/15.4.4.14-3-29': [FAIL],
'built-ins/Array/prototype/indexOf/15.4.4.14-3-7': [FAIL],
'built-ins/Array/prototype/indexOf/15.4.4.14-3-8': [FAIL],
'built-ins/Array/prototype/join/S15.4.4.5_A4_T3': [FAIL],
'built-ins/Array/prototype/lastIndexOf/15.4.4.15-3-12': [FAIL],
'built-ins/Array/prototype/lastIndexOf/15.4.4.15-3-25': [FAIL],
'built-ins/Array/prototype/lastIndexOf/15.4.4.15-3-28': [FAIL],
'built-ins/Array/prototype/lastIndexOf/15.4.4.15-3-7': [FAIL],
'built-ins/Array/prototype/map/15.4.4.19-3-12': [FAIL],
'built-ins/Array/prototype/map/15.4.4.19-3-14': [FAIL],
'built-ins/Array/prototype/map/15.4.4.19-3-25': [FAIL],
'built-ins/Array/prototype/map/15.4.4.19-3-28': [FAIL],
'built-ins/Array/prototype/map/15.4.4.19-3-29': [FAIL],
'built-ins/Array/prototype/map/15.4.4.19-3-7': [FAIL],
'built-ins/Array/prototype/map/15.4.4.19-3-8': [FAIL],
'built-ins/Array/prototype/pop/S15.4.4.6_A2_T2': [FAIL],
'built-ins/Array/prototype/pop/S15.4.4.6_A3_T1': [FAIL],
'built-ins/Array/prototype/pop/S15.4.4.6_A3_T2': [FAIL],
'built-ins/Array/prototype/pop/S15.4.4.6_A3_T3': [FAIL],
'built-ins/Array/prototype/push/S15.4.4.7_A2_T2': [FAIL],
'built-ins/Array/prototype/push/S15.4.4.7_A4_T1': [FAIL],
'built-ins/Array/prototype/push/S15.4.4.7_A4_T3': [FAIL],
'built-ins/Array/prototype/reduce/15.4.4.21-3-12': [FAIL],
'built-ins/Array/prototype/reduce/15.4.4.21-3-25': [FAIL],
'built-ins/Array/prototype/reduce/15.4.4.21-3-7': [FAIL],
'built-ins/Array/prototype/reduceRight/15.4.4.22-3-12': [FAIL],
'built-ins/Array/prototype/reduceRight/15.4.4.22-3-25': [FAIL],
'built-ins/Array/prototype/reduceRight/15.4.4.22-3-7': [FAIL],
'built-ins/Array/prototype/reverse/S15.4.4.8_A3_T3': [FAIL],
'built-ins/Array/prototype/shift/S15.4.4.9_A3_T3': [FAIL],
'built-ins/Array/prototype/slice/S15.4.4.10_A3_T1': [FAIL],
'built-ins/Array/prototype/slice/S15.4.4.10_A3_T2': [FAIL],
'built-ins/Array/prototype/slice/S15.4.4.10_A3_T3': [FAIL],
'built-ins/Array/prototype/some/15.4.4.17-3-12': [FAIL],
'built-ins/Array/prototype/some/15.4.4.17-3-14': [FAIL],
'built-ins/Array/prototype/some/15.4.4.17-3-25': [FAIL],
'built-ins/Array/prototype/some/15.4.4.17-3-28': [FAIL],
'built-ins/Array/prototype/some/15.4.4.17-3-29': [FAIL],
'built-ins/Array/prototype/some/15.4.4.17-3-7': [FAIL],
'built-ins/Array/prototype/some/15.4.4.17-3-8': [FAIL],
'built-ins/Array/prototype/sort/S15.4.4.11_A4_T3': [FAIL],
'built-ins/Array/prototype/splice/S15.4.4.12_A3_T1': [FAIL],
'built-ins/Array/prototype/splice/S15.4.4.12_A3_T3': [FAIL],
'built-ins/Array/prototype/unshift/S15.4.4.13_A3_T2': [FAIL],
'built-ins/Boolean/prototype/S15.6.3.1_A1': [FAIL],
'built-ins/Boolean/prototype/S15.6.4_A1': [FAIL],
'built-ins/Boolean/prototype/toString/S15.6.4.2_A1_T1': [FAIL],
'built-ins/Boolean/prototype/toString/S15.6.4.2_A1_T2': [FAIL],
'built-ins/Boolean/prototype/valueOf/S15.6.4.3_A1_T1': [FAIL],
'built-ins/Boolean/prototype/valueOf/S15.6.4.3_A1_T2': [FAIL],
'built-ins/Date/15.9.1.15-1': [FAIL],
'built-ins/Date/prototype/setFullYear/15.9.5.40_1': [FAIL],
'built-ins/Error/prototype/S15.11.4_A2': [FAIL],
'built-ins/Object/defineProperty/15.2.3.6-4-293-4': [FAIL],
'built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-212': [FAIL],
'built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-213': [FAIL],
'built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-214': [FAIL],
'built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-215': [FAIL],
'built-ins/Promise/S25.4.3.1_A5.1_T2': [FAIL],
'built-ins/Promise/prototype/then/S25.4.2.1_A3.1_T2': [FAIL],
'built-ins/Promise/prototype/then/S25.4.2.1_A3.2_T2': [FAIL],
'built-ins/Promise/race/S25.4.4.3_A3.1_T2': [FAIL],
'built-ins/Promise/reject/S25.4.4.4_A3.1_T1': [FAIL],
'built-ins/RegExp/prototype/15.10.6': [FAIL],
'built-ins/RegExp/prototype/global/15.10.7.2-1': [FAIL],
'built-ins/RegExp/prototype/global/15.10.7.2-2': [FAIL],
'built-ins/RegExp/prototype/global/S15.10.7.2_A9': [FAIL],
'built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1': [FAIL],
'built-ins/RegExp/prototype/ignoreCase/15.10.7.3-2': [FAIL],
'built-ins/RegExp/prototype/ignoreCase/S15.10.7.3_A9': [FAIL],
'built-ins/RegExp/prototype/lastIndex/15.10.7.5-1': [FAIL],
'built-ins/RegExp/prototype/lastIndex/15.10.7.5-2': [FAIL],
'built-ins/RegExp/prototype/multiline/15.10.7.4-1': [FAIL],
'built-ins/RegExp/prototype/multiline/15.10.7.4-2': [FAIL],
'built-ins/RegExp/prototype/multiline/S15.10.7.4_A9': [FAIL],
'built-ins/RegExp/prototype/source/15.10.7.1-1': [FAIL],
'built-ins/RegExp/prototype/source/15.10.7.1-2': [FAIL],
'built-ins/RegExp/prototype/source/S15.10.7.1_A9': [FAIL],
'built-ins/String/prototype/S15.5.4_A1': [FAIL],
'built-ins/String/prototype/S15.5.4_A2': [FAIL],
'built-ins/String/prototype/S15.5.4_A3': [FAIL],
'built-ins/String/prototype/split/S15.5.4.14_A2_T37': [FAIL],
'intl402/10.1_L15': [FAIL],
'intl402/10.2.2_L15': [FAIL],
'intl402/10.3.2_1_a_L15': [FAIL],
'intl402/10.3.2_L15': [FAIL],
'intl402/10.3.3_L15': [FAIL],
'intl402/11.1_L15': [FAIL],
'intl402/11.2.2_L15': [FAIL],
'intl402/11.3.2_1_a_L15': [FAIL],
'intl402/11.3.2_L15': [FAIL],
'intl402/11.3.3_L15': [FAIL],
'intl402/12.1_L15': [FAIL],
'intl402/12.2.2_L15': [FAIL],
'intl402/12.3.2_1_a_L15': [FAIL],
'intl402/12.3.2_L15': [FAIL],
'intl402/12.3.3_L15': [FAIL],
'intl402/13.1.1_L15': [FAIL],
'intl402/13.2.1_L15': [FAIL],
'intl402/13.3.1_L15': [FAIL],
'intl402/13.3.2_L15': [FAIL],
'intl402/13.3.3_L15': [FAIL],
'language/class/arguments/access': [FAIL],
'language/class/arguments/default-constructor': [FAIL],
'language/class/definition/accessors': [FAIL],
'language/class/definition/basics': [FAIL],
'language/class/definition/constructable-but-no-prototype': [FAIL],
'language/class/definition/constructor': [FAIL],
'language/class/definition/constructor-property': [FAIL],
'language/class/definition/constructor-strict-by-default': [FAIL],
'language/class/definition/getters': [FAIL],
'language/class/definition/getters-2': [FAIL],
'language/class/definition/implicit-constructor': [FAIL],
'language/class/definition/invalid-extends': [FAIL],
'language/class/definition/methods': [FAIL],
'language/class/definition/methods-named-eval-arguments': [FAIL],
'language/class/definition/numeric-property-names': [FAIL],
'language/class/definition/prototype-getter': [FAIL],
'language/class/definition/prototype-property': [FAIL],
'language/class/definition/prototype-setter': [FAIL],
'language/class/definition/prototype-wiring': [FAIL],
'language/class/definition/setters': [FAIL],
'language/class/definition/setters-2': [FAIL],
'language/class/definition/side-effects-in-extends': [FAIL],
'language/class/definition/side-effects-in-property-define': [FAIL],
'language/class/definition/this-access-restriction': [FAIL],
'language/class/definition/this-access-restriction-2': [FAIL],
'language/class/definition/this-check-ordering': [FAIL],
'language/class/name-binding/basic': [FAIL],
'language/class/name-binding/const': [FAIL],
'language/class/name-binding/expression': [FAIL],
'language/class/strict-mode/arguments-caller': [FAIL],
'language/class/subclass/binding': [FAIL],
'language/class/subclass/builtins': [FAIL],
'language/class/subclass/default-constructor': [FAIL],
'language/class/subclass/default-constructor-2': [FAIL],
'language/class/subclass/null': [FAIL],
'language/class/subclass/superclass-prototype-setter-constructor': [FAIL],
'language/class/subclass/superclass-prototype-setter-method-override': [FAIL],
'language/class/subclass/superclass-static-method-override': [FAIL],
'language/class/super/in-constructor': [FAIL],
'language/class/super/in-getter': [FAIL],
'language/class/super/in-methods': [FAIL],
'language/class/super/in-setter': [FAIL],
'language/class/super/in-static-getter': [FAIL],
'language/class/super/in-static-methods': [FAIL],
'language/class/super/in-static-setter': [FAIL],
'language/expressions/assignment/S11.13.1_A5_T1': [FAIL],
'language/expressions/assignment/S11.13.1_A5_T2': [FAIL],
'language/expressions/assignment/S11.13.1_A5_T3': [FAIL],
'language/expressions/assignment/S11.13.1_A5_T4': [FAIL],
'language/expressions/assignment/S11.13.1_A5_T5': [FAIL],
'language/expressions/assignment/S11.13.1_A6_T1': [FAIL],
'language/expressions/assignment/S11.13.1_A6_T2': [FAIL],
'language/expressions/assignment/S11.13.1_A6_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.10_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.10_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.10_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.10_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.10_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.11_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.11_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.11_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.11_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.11_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.1_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.1_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.1_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.1_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.1_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.2_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.2_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.2_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.2_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.2_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.3_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.3_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.3_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.3_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.3_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.4_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.4_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.4_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.4_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.4_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.5_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.5_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.5_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.5_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.5_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.6_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.6_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.6_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.6_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.6_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.7_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.7_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.7_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.7_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.7_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.8_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.8_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.8_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.8_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.8_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.9_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.9_T2': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.9_T3': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.9_T4': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A5.9_T5': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.10_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.11_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.1_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.2_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.3_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.4_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.5_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.6_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.7_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.8_T1': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.9_T1': [FAIL],
'language/expressions/postfix-decrement/S11.3.2_A5_T1': [FAIL],
'language/expressions/postfix-decrement/S11.3.2_A5_T2': [FAIL],
'language/expressions/postfix-decrement/S11.3.2_A5_T3': [FAIL],
'language/expressions/postfix-decrement/S11.3.2_A5_T4': [FAIL],
'language/expressions/postfix-decrement/S11.3.2_A5_T5': [FAIL],
'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/prefix-decrement/S11.4.5_A5_T1': [FAIL],
'language/expressions/prefix-decrement/S11.4.5_A5_T2': [FAIL],
'language/expressions/prefix-decrement/S11.4.5_A5_T3': [FAIL],
'language/expressions/prefix-decrement/S11.4.5_A5_T4': [FAIL],
'language/expressions/prefix-decrement/S11.4.5_A5_T5': [FAIL],
'language/expressions/prefix-increment/S11.4.4_A5_T1': [FAIL],
'language/expressions/prefix-increment/S11.4.4_A5_T2': [FAIL],
'language/expressions/prefix-increment/S11.4.4_A5_T3': [FAIL],
'language/expressions/prefix-increment/S11.4.4_A5_T4': [FAIL],
'language/expressions/prefix-increment/S11.4.4_A5_T5': [FAIL],
'language/expressions/property-accessors/S11.2.1_A4_T5': [FAIL],
'language/generators/generator.declareMethod.argSuperProperty': [FAIL],
'language/generators/generator.declareMethod.shadow-parameter-const': [FAIL],
'language/generators/generator.expression.implicit-name': [FAIL],
# Test 262 update 2015-03-31
'built-ins/Symbol/species/Symbol.species.builtin-getter-name': [FAIL],
'built-ins/Symbol/species/Symbol.species.exists': [FAIL],
'built-ins/Symbol/species/Symbol.species.in_Array': [FAIL],
'built-ins/Symbol/species/Symbol.species.in_ArrayBuffer': [FAIL],
'built-ins/Symbol/species/Symbol.species.in_Map': [FAIL],
'built-ins/Symbol/species/Symbol.species.in_Promise': [FAIL],
'built-ins/Symbol/species/Symbol.species.in_RegExp': [FAIL],
'built-ins/Symbol/species/Symbol.species.in_Set': [FAIL],
'built-ins/Symbol/species/Symbol.species.notChangedByExtends': [FAIL],
'language/asi/S7.9_A5.7_T1': [PASS, FAIL_OK],
'language/block-scope/leave/finally-block-let-declaration-only-shadows-outer-parameter-value-1': [FAIL],
'language/block-scope/leave/finally-block-let-declaration-only-shadows-outer-parameter-value-2': [FAIL],
'language/block-scope/leave/for-loop-block-let-declaration-only-shadows-outer-parameter-value-1': [FAIL],
'language/block-scope/leave/for-loop-block-let-declaration-only-shadows-outer-parameter-value-2': [FAIL],
'language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-1': [FAIL],
'language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-2': [FAIL],
'language/block-scope/leave/outermost-binding-updated-in-catch-block-nested-block-let-declaration-unseen-outside-of-block': [FAIL],
'language/block-scope/leave/try-block-let-declaration-only-shadows-outer-parameter-value-1': [FAIL],
'language/block-scope/leave/try-block-let-declaration-only-shadows-outer-parameter-value-2': [FAIL],
'language/block-scope/leave/verify-context-in-finally-block': [FAIL],
'language/block-scope/leave/verify-context-in-for-loop-block': [FAIL],
'language/block-scope/leave/verify-context-in-labelled-block': [FAIL],
'language/block-scope/leave/verify-context-in-try-block': [FAIL],
'language/block-scope/leave/x-after-break-to-label': [FAIL],
'language/block-scope/leave/x-before-continue': [FAIL],
'language/block-scope/return-from/block-let': [FAIL],
'language/block-scope/semantics/const/block-local-closure-get-before-initialization': [FAIL],
'language/block-scope/semantics/const/block-local-use-before-initialization-in-declaration-statement': [FAIL],
'language/block-scope/semantics/const/block-local-use-before-initialization-in-prior-statement': [FAIL],
'language/block-scope/semantics/const/function-local-closure-get-before-initialization': [FAIL],
'language/block-scope/semantics/const/function-local-use-before-initialization-in-declaration-statement': [FAIL],
'language/block-scope/semantics/const/function-local-use-before-initialization-in-prior-statement': [FAIL],
'language/block-scope/semantics/const/global-closure-get-before-initialization': [FAIL],
'language/block-scope/semantics/const/global-use-before-initialization-in-declaration-statement': [FAIL],
'language/block-scope/semantics/const/global-use-before-initialization-in-prior-statement': [FAIL],
'language/block-scope/shadowing/catch-parameter-shadowing-let-declaration': [FAIL],
'language/block-scope/shadowing/const-declaration-shadowing-catch-parameter': [FAIL],
'language/block-scope/shadowing/const-declarations-shadowing-parameter-name-let-const-and-var-variables': [FAIL],
'language/block-scope/shadowing/dynamic-lookup-from-closure': [FAIL],
'language/block-scope/shadowing/dynamic-lookup-in-and-through-block-contexts': [FAIL],
'language/block-scope/shadowing/let-declaration-shadowing-catch-parameter': [FAIL],
'language/block-scope/shadowing/let-declarations-shadowing-parameter-name-let-const-and-var': [FAIL],
'language/block-scope/shadowing/lookup-from-closure': [FAIL],
'language/block-scope/shadowing/lookup-in-and-through-block-contexts': [FAIL],
'language/block-scope/shadowing/parameter-name-shadowing-parameter-name-let-const-and-var': [FAIL],
'language/block-scope/syntax/const-declaration/block-scope-syntax-const-declarations-mixed-with-without-initialiser': [FAIL],
'language/block-scope/syntax/const-declaration/block-scope-syntax-const-declarations-mixed-without-with-initialiser': [FAIL],
'language/block-scope/syntax/const-declaration/block-scope-syntax-const-declarations-without-initialiser': [FAIL],
'language/block-scope/syntax/const-declaration/with-initializer-do-statement-while-expression': [FAIL],
'language/block-scope/syntax/const-declaration/with-initializer-for-statement': [FAIL],
'language/block-scope/syntax/const-declaration/with-initializer-if-expression-statement': [FAIL],
'language/block-scope/syntax/const-declaration/with-initializer-if-expression-statement-else-statement': [FAIL],
'language/block-scope/syntax/const-declaration/with-initializer-label-statement': [FAIL],
'language/block-scope/syntax/const-declaration/with-initializer-while-expression-statement': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-case-expression-statement-list': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-default-statement-list': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-do-statement-while-expression': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-for-statement': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-if-expression-statement': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-if-expression-statement-else-statement': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-label-statement': [FAIL],
'language/block-scope/syntax/const-declaration/without-initializer-while-expression-statement': [FAIL],
'language/block-scope/syntax/for-in/acquire-properties-from-array': [FAIL],
'language/block-scope/syntax/for-in/acquire-properties-from-object': [FAIL],
'language/block-scope/syntax/for-in/missing-identifier-let-disallowed-as-bound-name': [FAIL],
'language/block-scope/syntax/for-loop/const-invalid-assignment-next-expression': [SKIP], # iloops
'language/block-scope/syntax/for-loop/const-outer-inner-let-bindings': [FAIL],
'language/block-scope/syntax/for-loop/let-closure-inside-condition': [FAIL],
'language/block-scope/syntax/for-loop/let-closure-inside-initialization': [FAIL],
'language/block-scope/syntax/for-loop/let-closure-inside-next-expression': [FAIL],
'language/block-scope/syntax/for-loop/let-iteration-variable-is-freshly-allocated-for-each-iteration-multi-let-binding': [FAIL],
'language/block-scope/syntax/for-loop/let-iteration-variable-is-freshly-allocated-for-each-iteration-single-let-binding': [FAIL],
'language/block-scope/syntax/for-loop/let-outer-inner-let-bindings': [FAIL],
'language/block-scope/syntax/function-declarations/in-statement-position-do-statement-while-expression': [FAIL],
'language/block-scope/syntax/function-declarations/in-statement-position-for-statement': [FAIL],
'language/block-scope/syntax/function-declarations/in-statement-position-if-expression-statement': [FAIL],
'language/block-scope/syntax/function-declarations/in-statement-position-if-expression-statement-else-statement': [FAIL],
'language/block-scope/syntax/function-declarations/in-statement-position-while-expression-statement': [FAIL],
'language/block-scope/syntax/global-and-block/const': [FAIL],
'language/block-scope/syntax/global-and-block/let': [FAIL],
'language/block-scope/syntax/let-declarations/with-initialisers-in-statement-positions-case-expression-statement-list': [FAIL],
'language/block-scope/syntax/let-declarations/with-initialisers-in-statement-positions-default-statement-list': [FAIL],
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-function-declaration-with-function-declaration': [FAIL],
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-function-declaration-with-var': [FAIL],
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-var-with-function-declaration': [FAIL],
'language/computed-property-names/class/method/constructor-can-be-generator': [FAIL],
'language/computed-property-names/class/method/constructor-can-be-getter': [FAIL],
'language/computed-property-names/class/method/constructor-can-be-setter': [FAIL],
'language/computed-property-names/class/method/constructor-duplicate-1': [FAIL],
'language/computed-property-names/class/method/constructor-duplicate-2': [FAIL],
'language/computed-property-names/class/method/constructor-duplicate-3': [FAIL],
'language/computed-property-names/class/static/generator-constructor': [FAIL],
'language/computed-property-names/class/static/generator-prototype': [FAIL],
'language/computed-property-names/class/static/getter-constructor': [FAIL],
'language/computed-property-names/class/static/getter-prototype': [FAIL],
'language/computed-property-names/class/static/method-constructor': [FAIL],
'language/computed-property-names/class/static/method-prototype': [FAIL],
'language/computed-property-names/class/static/setter-constructor': [FAIL],
'language/computed-property-names/class/static/setter-prototype': [FAIL],
'language/for-of/iterator-as-proxy': [FAIL],
'language/for-of/iterator-next-result-type': [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],
############################ 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],
# # String.prototype.contains renamed to 'S.p.includes'
# 'es6/String.prototype.contains/String.prototype.contains_FailBadLocation' : [FAIL_OK],
# 'es6/String.prototype.contains/String.prototype.contains_FailLocation' : [FAIL_OK],
# 'es6/String.prototype.contains/String.prototype.contains_FailMissingLetter' : [FAIL_OK],
# 'es6/String.prototype.contains/String.prototype.contains_lengthProp' : [FAIL_OK],
# 'es6/String.prototype.contains/String.prototype.contains_Success' : [FAIL_OK],
# 'es6/String.prototype.contains/String.prototype.contains_SuccessNoLocation' : [FAIL_OK],
# Function restricted "caller" and "arguments" properties are defined only on
# the intrinsic %FunctionPrototype% (and sloppy functions) in ES6
'language/statements/function/13.2-29-s': [FAIL_OK],
'language/statements/function/13.2-30-s': [FAIL_OK],
'language/statements/function/13.2-31-s': [FAIL_OK],
'language/statements/function/13.2-32-s': [FAIL_OK],
'language/statements/function/13.2-33-s': [FAIL_OK],
'language/statements/function/13.2-34-s': [FAIL_OK],
'language/statements/function/13.2-35-s': [FAIL_OK],
'language/statements/function/13.2-36-s': [FAIL_OK],
'language/statements/function/S13.2.3_A1': [FAIL_OK],
'built-ins/Function/prototype/bind/15.3.4.5-20-1': [FAIL_OK],
'built-ins/Function/prototype/bind/15.3.4.5-20-4': [FAIL_OK],
'built-ins/Function/prototype/bind/15.3.4.5-20-5': [FAIL_OK],
'built-ins/Function/prototype/bind/15.3.4.5-21-1': [FAIL_OK],
'built-ins/Function/prototype/bind/15.3.4.5-21-4': [FAIL_OK],
'built-ins/Function/prototype/bind/15.3.4.5-21-5': [FAIL_OK],
# This invalid test has been fixed upstream.
'built-ins/Array/prototype/find/Array.prototype.find_remove-after-start': [FAIL],
############################ SKIPPED TESTS #############################
# These tests take a looong time to run in debug mode.
'built-ins/decodeURI/S15.1.3.1_A2.5_T1': [PASS, ['mode == debug', SKIP]],
'built-ins/decodeURIComponent/S15.1.3.2_A2.5_T1': [PASS, ['mode == debug', SKIP]],
}], # ALWAYS
['system == macos', {
'intl402/11.3.2_TRP': [FAIL],
'intl402/9.2.5_11_g_ii_2': [FAIL],
}], # system == macos
['arch == arm or arch == mipsel or arch == mips or arch == arm64 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'
]