a8db3278e2
This CL adds the implementation of all null-aware operators to dart2js. In particular: * a?.b: represented as 'isConditional' in the Send ast, and dispatched separately by the semantic visitor using visitIfNotNull* methods. * a ?? b: represented as an operator, and dispatched separately by the semantic visitor using the `visitIfNull` method. * a ??= b: represented as a compound operator. All except 2 tests are passing with the SSA backend (those 2 tests fail for unrelated reasons). I've marked the CPS ir tests as failing for now. BUG= R=johnniwinther@google.com, paulberry@google.com, sra@google.com Review URL: https://codereview.chromium.org//1151163004
106 lines
4.3 KiB
Plaintext
106 lines
4.3 KiB
Plaintext
# Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
|
|
# for details. All rights reserved. Use of this source code is governed by a
|
|
# BSD-style license that can be found in the LICENSE file.
|
|
|
|
# This directory contains tests that are intended to show the
|
|
# current state of the language.
|
|
|
|
[ $compiler == none ]
|
|
built_in_identifier_prefix_test: Fail # Issue 6970
|
|
|
|
# These bugs refer currently ongoing language discussions.
|
|
constructor_initializer_test/none: Fail # Issue 12633
|
|
constructor5_test: Fail # Issue 6422
|
|
constructor6_test: Fail # Issue 6422
|
|
closure_in_initializer_test: Fail # Issue 6422
|
|
|
|
# Regular bugs which should be fixed.
|
|
duplicate_export_negative_test: Fail # Issue 6134
|
|
|
|
[ $compiler == none ]
|
|
# Null-aware operators aren't implemented in the VM yet.
|
|
if_null_evaluation_order_test: Fail
|
|
if_null_precedence_test: Fail
|
|
if_null_behavior_test: Fail
|
|
if_null_assignment_behavior_test: Fail
|
|
if_null_assignment_static_test: Fail
|
|
conditional_property_assignment_test: Fail
|
|
conditional_property_access_test: Fail
|
|
conditional_method_invocation_test: Fail
|
|
this_conditional_operator_test/none: Fail
|
|
|
|
deferred_redirecting_factory_test: Fail # Issue 23408
|
|
redirecting_constructor_initializer_test: RuntimeError # Issue 23488
|
|
|
|
[ $compiler == none ]
|
|
# Non-contractive types are not supported in the vm.
|
|
cyclic_type_test/02: Fail, OK
|
|
cyclic_type_test/04: Fail, OK
|
|
cyclic_type2_test: Fail, OK
|
|
least_upper_bound_expansive_test/*: Fail, OK
|
|
|
|
async_star_test/01: CompileTimeError, RuntimeError # drt only runtime-errs.
|
|
async_star_test/02: RuntimeError
|
|
async_star_test/05: Timeout, RuntimeError
|
|
|
|
[ $compiler == none && $runtime == vm ]
|
|
class_keyword_test/02: MissingCompileTimeError # Issue 13627
|
|
unicode_bom_test: Fail # Issue 16067
|
|
vm/debug_break_enabled_vm_test/01: Crash, OK # Expected to hit breakpoint.
|
|
|
|
[ $compiler == none && $checked ]
|
|
type_variable_bounds4_test/01: Fail # Issue 14006
|
|
|
|
[ $compiler == none ]
|
|
dynamic_prefix_core_test/01: RuntimeError # Issue 12478
|
|
multiline_strings_test: Fail # Issue 23020
|
|
|
|
[ $compiler == none && ($runtime == vm || $runtime == drt || $runtime == dartium || $runtime == ContentShellOnAndroid) ]
|
|
dynamic_prefix_core_test/none: Fail # Issue 12478
|
|
export_ambiguous_main_negative_test: Fail # Issue 14763
|
|
|
|
[ $compiler == none && ($runtime == dartium || $runtime == ContentShellOnAndroid) && $unchecked ]
|
|
assertion_test: Fail # Issue 14651.
|
|
generic_test: Fail # Issue 14651.
|
|
list_literal4_test: Fail # Issue 14651.
|
|
map_literal4_test: Fail # Issue 14651.
|
|
named_parameters_type_test/01: Fail # Issue 14651.
|
|
named_parameters_type_test/02: Fail # Issue 14651.
|
|
named_parameters_type_test/03: Fail # Issue 14651.
|
|
positional_parameters_type_test/01: Fail # Issue 14651.
|
|
positional_parameters_type_test/02: Fail # Issue 14651.
|
|
type_checks_in_factory_method_test: Fail # Issue 14651.
|
|
vm/type_vm_test: Fail # Issue 14651.
|
|
|
|
[ $compiler == none && ( $runtime == dartium || $runtime == drt || $runtime == ContentShellOnAndroid) ]
|
|
issue13474_test: Pass, Fail # Issue 14651.
|
|
vm/optimized_guarded_field_isolates_test: Fail # Issue 13921.
|
|
main_test/01: Fail # Issue 20028
|
|
main_test/02: Fail # Issue 20028
|
|
main_test/04: Fail # Issue 20028
|
|
main_test/05: Fail # Issue 20028
|
|
main_test/21: Fail # Issue 20028
|
|
main_test/42: Fail # Issue 20028
|
|
mirror_in_static_init_test: Fail # Issue 22071
|
|
vm/debug_break_enabled_vm_test/*: Skip # Issue 14651.
|
|
|
|
[ $compiler == none && $runtime == drt ]
|
|
disassemble_test: Pass, Fail # Issue 18122
|
|
|
|
[ $compiler == none && $runtime == vm && $arch == mips && $checked ]
|
|
generic_instanceof3_test: Pass, Crash # Issue 17440.
|
|
|
|
[ $compiler == none && $runtime == vm && $arch == mips && $mode == debug ]
|
|
stack_overflow_test: Skip # Crashes. Issue 17440.
|
|
stack_overflow_stacktrace_test: Skip # Crashes. Issue 17440.
|
|
large_class_declaration_test: SkipSlow # Times out. Issue 20352
|
|
|
|
[ $compiler == none && ($runtime == dartium || $runtime == drt || $runtime == ContentShellOnAndroid) && $mode == debug ]
|
|
large_class_declaration_test: SkipSlow # Times out. Issue 20352
|
|
|
|
[ $compiler == none && $runtime == ContentShellOnAndroid ]
|
|
gc_test: SkipSlow # Times out flakily. Issue 20956
|
|
|
|
[ $compiler == none && $runtime == vm && ( $arch == simarm || $arch == arm || $arch == simarmv5te || $arch == armv5te || $arch == simarm64 || $arch == arm64 || $arch == simmips || $arch == mips) ]
|
|
vm/load_to_load_unaligned_forwarding_vm_test: Pass, Crash # Unaligned offset. Issue 22151
|