# 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.

[ $compiler == dart2js ]
sync_generator2_test/07: MissingCompileTimeError # Issue 22324
sync_generator2_test/08: MissingCompileTimeError # Issue 22324
sync_generator2_test/10: MissingCompileTimeError # Issue 22324
getter_setter_in_lib_test: Fail # Issue 23288

async_star_cancel_while_paused_test: RuntimeError # Issue 22853
async_star_await_pauses_test: Fail, Timeout # Issue 22853
tearoff_basic_test: Skip # Tear-off not supported
tearoff_constructor_basic_test: Skip # Tear-off not supported

try_catch_on_syntax_test/10: Fail # Issue 19823
try_catch_on_syntax_test/11: Fail # Issue 19823

call_function_apply_test: RuntimeError # Issue 23873

conditional_method_invocation_test/12: Fail # Issue 23795
conditional_method_invocation_test/13: Fail # Issue 23795
conditional_method_invocation_test/14: Fail # Issue 23795
conditional_method_invocation_test/15: Fail # Issue 23795
conditional_method_invocation_test/16: Fail # Issue 23795
conditional_method_invocation_test/17: Fail # Issue 23795
conditional_method_invocation_test/18: Fail # Issue 23795
conditional_method_invocation_test/19: Fail # Issue 23795
conditional_property_access_test/10: Fail # Issue 23795
conditional_property_access_test/11: Fail # Issue 23795
conditional_property_access_test/12: Fail # Issue 23795
conditional_property_access_test/13: Fail # Issue 23795
conditional_property_access_test/14: Fail # Issue 23795
conditional_property_access_test/15: Fail # Issue 23795
conditional_property_access_test/16: Fail # Issue 23795
conditional_property_access_test/17: Fail # Issue 23795
conditional_property_assignment_test/23: Fail # Issue 23795
conditional_property_assignment_test/24: Fail # Issue 23795
conditional_property_assignment_test/25: Fail # Issue 23795
conditional_property_assignment_test/26: Fail # Issue 23795
conditional_property_assignment_test/27: Fail # Issue 23795
conditional_property_assignment_test/28: Fail # Issue 23795
conditional_property_assignment_test/29: Fail # Issue 23795
conditional_property_assignment_test/30: Fail # Issue 23795
conditional_property_assignment_test/31: Fail # Issue 23795
conditional_property_assignment_test/32: Fail # Issue 23795
conditional_property_assignment_test/33: Fail # Issue 23795
conditional_property_assignment_test/34: Fail # Issue 23795
conditional_property_assignment_test/35: Fail # Issue 23795
conditional_property_increment_decrement_test/17: Fail # Issue 23795
conditional_property_increment_decrement_test/18: Fail # Issue 23795
conditional_property_increment_decrement_test/19: Fail # Issue 23795
conditional_property_increment_decrement_test/20: Fail # Issue 23795
conditional_property_increment_decrement_test/21: Fail # Issue 23795
conditional_property_increment_decrement_test/22: Fail # Issue 23795
conditional_property_increment_decrement_test/23: Fail # Issue 23795
conditional_property_increment_decrement_test/24: Fail # Issue 23795
conditional_property_increment_decrement_test/25: Fail # Issue 23795
conditional_property_increment_decrement_test/26: Fail # Issue 23795
conditional_property_increment_decrement_test/27: Fail # Issue 23795
conditional_property_increment_decrement_test/28: Fail # Issue 23795
conditional_property_increment_decrement_test/29: Fail # Issue 23795
conditional_property_increment_decrement_test/30: Fail # Issue 23795
conditional_property_increment_decrement_test/31: Fail # Issue 23795
conditional_property_increment_decrement_test/32: Fail # Issue 23795
conditional_property_increment_decrement_test/33: Fail # Issue 23795
conditional_property_increment_decrement_test/34: Fail # Issue 23795
conditional_property_increment_decrement_test/35: Fail # Issue 23795
conditional_property_increment_decrement_test/36: Fail # Issue 23795
conditional_property_increment_decrement_test/37: Fail # Issue 23795
conditional_property_increment_decrement_test/38: Fail # Issue 23795
conditional_property_increment_decrement_test/39: Fail # Issue 23795
conditional_property_increment_decrement_test/40: Fail # Issue 23795
if_null_assignment_behavior_test/31: Fail # Issue 23795
if_null_assignment_behavior_test/32: Fail # Issue 23795

[ $compiler == dart2js && $runtime == jsshell ]
await_for_test: Skip # Jsshell does not provide periodic timers, Issue 7728
async_star_test: RuntimeError # Jsshell does not provide non-zero timers, Issue 7728

[ $compiler == dart2js ]
nan_identical_test: Fail # Issue 11551
symbol_literal_test/*: Fail # Issue 21825
constructor_duplicate_final_test/01: Fail # Issue 13363
constructor_duplicate_final_test/02: Fail # Issue 13363
override_inheritance_mixed_test/08: Fail # Issue 18124
override_inheritance_mixed_test/09: Fail # Issue 18124
bad_constructor_test/05: CompileTimeError # Issue 13669
full_stacktrace1_test: Pass, RuntimeError # Issue 12698
full_stacktrace2_test: Pass, RuntimeError # Issue 12698
full_stacktrace3_test: Pass, RuntimeError # Issue 12698
stacktrace_test: Pass, RuntimeError # # Issue 12698
stacktrace_rethrow_nonerror_test: Pass, RuntimeError # Issue 12698
stacktrace_rethrow_error_test: Pass, RuntimeError # Issue 12698
instantiate_type_variable_test/01: CompileTimeError # Issue 13631
type_variable_conflict_test/01: Fail # Issue 13702
type_variable_conflict_test/02: Fail # Issue 13702
type_variable_conflict_test/03: Fail # Issue 13702
type_variable_conflict_test/04: Fail # Issue 13702
type_variable_conflict_test/05: Fail # Issue 13702
type_variable_conflict_test/06: Fail # Issue 13702
mixin_forwarding_constructor4_test/01: MissingCompileTimeError # Issue 15101
mixin_forwarding_constructor4_test/02: MissingCompileTimeError # Issue 15101
mixin_forwarding_constructor4_test/03: MissingCompileTimeError # Issue 15101
mixin_super_constructor_named_test/01: Fail # Issue 15101
mixin_super_constructor_positionals_test/01: Fail # Issue 15101
mixin_super_test: CompileTimeError # Issue 23773
mixin_super_bound2_test: CompileTimeError # Issue 23773

ref_before_declaration_test/00: MissingCompileTimeError
ref_before_declaration_test/01: MissingCompileTimeError
ref_before_declaration_test/02: MissingCompileTimeError
ref_before_declaration_test/03: MissingCompileTimeError
ref_before_declaration_test/04: MissingCompileTimeError
ref_before_declaration_test/05: MissingCompileTimeError
ref_before_declaration_test/06: MissingCompileTimeError

regress_22976_test/01: CompileTimeError # Issue 23132
regress_22976_test/02: CompileTimeError # Issue 23132

if_null_assignment_behavior_test/13: Crash # Issue 23491
if_null_assignment_behavior_test/14: Crash # Issue 23491
nullaware_opt_test: Fail # Fails at e?.f ??= 200;

if_null_assignment_behavior_test/29: Crash # Issue 23611
prefix_assignment_test/01: Crash # Issue 23611
prefix_assignment_test/02: Crash # Issue 23611
prefix_identifier_reference_test/05: Crash # Issue 23611

const_error_multiply_initialized_test/02: CompileTimeError # Issue 23618
const_error_multiply_initialized_test/04: CompileTimeError # Issue 23618

# VM specific tests that should not be run by dart2js.
vm/*: Skip # Issue 12699

multiline_newline_test/01: CompileTimeError # Issue 23888
multiline_newline_test/02: CompileTimeError # Issue 23888
multiline_newline_test/03: CompileTimeError # Issue 23888
multiline_newline_test/04: MissingCompileTimeError # Issue 23888
multiline_newline_test/05: MissingCompileTimeError # Issue 23888
multiline_newline_test/06: MissingCompileTimeError # Issue 23888
multiline_newline_test/none: RuntimeError # Issue 23888

[ $compiler == dart2js && $checked ]
type_variable_bounds_test/02: Fail # Issue 12702
type_variable_bounds2_test/01: Fail # Issue 12702
type_variable_bounds2_test/04: Fail # Issue 12702
type_variable_bounds2_test/06: Pass # Issue 12702 (pass for the wrong reasons).
type_variable_bounds3_test/00: Fail # Issue 12702
closure_type_test: Fail # Issue 12745
malbounded_redirecting_factory_test/02: Fail # Issue 12825
malbounded_redirecting_factory_test/03: Fail # Issue 12825
malbounded_redirecting_factory2_test/02: Fail # Issue 12825
malbounded_redirecting_factory2_test/03: Fail # Issue 12825
malbounded_instantiation_test/01: Fail # Issue 12702
malbounded_type_cast_test: Fail # Issue 14121
malbounded_type_cast2_test: Fail # Issue 14121
malbounded_type_test_test/03: Fail # Issue 14121
malbounded_type_test_test/04: Fail # Issue 14121
malbounded_type_test2_test: Fail # Issue 14121
default_factory2_test/01: Fail # Issue 14121

[ $compiler == dart2js && $checked ]
compile_time_constant_checked5_test/06: Fail # Issue 23182
compile_time_constant_checked5_test/07: Fail # Issue 23182
compile_time_constant_checked5_test/10: Fail # Issue 23182
compile_time_constant_checked5_test/11: Fail # Issue 23182
compile_time_constant_checked5_test/12: Fail # Issue 23182
compile_time_constant_checked5_test/15: Fail # Issue 23182
compile_time_constant_checked5_test/16: Fail # Issue 23182
compile_time_constant_checked5_test/17: Fail # Issue 23182
compile_time_constant_checked5_test/20: Fail # Issue 23182
compile_time_constant_checked5_test/21: Fail # Issue 23182
compile_time_constant_checked5_test/22: Fail # Issue 23182
compile_time_constant_checked5_test/23: Fail # Issue 23182
compile_time_constant_checked5_test/24: Fail # Issue 23182
compile_time_constant_checked5_test/25: Fail # Issue 23182

[ $compiler == dart2js && $unchecked ]
type_checks_in_factory_method_test: RuntimeError # Issue 12746
assertion_test: RuntimeError # Issue 12748
generic_test: RuntimeError, OK
map_literal4_test: RuntimeError, OK # Checked mode required.
named_parameters_type_test/01: MissingRuntimeError, OK
named_parameters_type_test/02: MissingRuntimeError, OK
named_parameters_type_test/03: MissingRuntimeError, OK
positional_parameters_type_test/01: MissingRuntimeError, OK
positional_parameters_type_test/02: MissingRuntimeError, OK
issue13474_test: RuntimeError, OK

[ $compiler == dart2js && $unchecked && $minified ]
f_bounded_quantification5_test: Fail, OK # Issue 12605

[ $compiler == dart2js && $minified ]
cyclic_type_test/0*: Fail # Issue 12605
cyclic_type2_test: Fail # Issue 12605
f_bounded_quantification4_test: Fail, OK # Issue 12605
mixin_generic_test: Fail # Issue 12605
mixin_mixin2_test: Fail # Issue 12605
mixin_mixin3_test: Fail # Issue 12605
mixin_mixin4_test: Fail # Issue 12605
mixin_mixin5_test: Fail # Issue 12605
mixin_mixin6_test: Fail # Issue 12605
mixin_mixin_bound_test: RuntimeError # Issue 12605
mixin_mixin_bound2_test: RuntimeError # Issue 12605
symbol_conflict_test: RuntimeError # Issue 23857

[ $compiler == dart2js ]
async_await_syntax_test/a05h: Fail # 23716
async_await_syntax_test/c11a: Fail # 23716
async_await_syntax_test/c11b: Fail # 23716

malformed_test/none: Fail # Expect failure in lib/_internal/js_runtime/lib/preambles/d8.js

type_variable_conflict2_test/01: RuntimeError # Issue 19725

branch_canonicalization_test: RuntimeError # Issue 638.
identical_closure2_test: RuntimeError # Issue 1533, Issue 12596
integer_division_by_zero_test: RuntimeError # Issue 8301
built_in_identifier_prefix_test: CompileTimeError # Issue 6972
number_identity2_test: RuntimeError # Issue 12596
new_expression_type_args_test/00: CompileTimeError # Issue 5519
new_expression_type_args_test/01: CompileTimeError # Issue 5519
double_int_to_string_test: RuntimeError # Issue 1533
mint_arithmetic_test: RuntimeError # Issue 1533
left_shift_test: RuntimeError # Issue 1533
factory_redirection_test/01: CompileTimeError # Issue 12752
bad_override_test/01: CompileTimeError # Issue 11496
bad_override_test/02: CompileTimeError # Issue 11496
constructor_named_arguments_test/01: CompileTimeError # Issue 5519
not_enough_positional_arguments_test/01: CompileTimeError # Issue 12838
not_enough_positional_arguments_test/02: CompileTimeError # Issue 12838
not_enough_positional_arguments_test/05: CompileTimeError # Issue 12838
metadata_test: CompileTimeError # Issue 5841
infinity_test: RuntimeError # Issue 4984
mixin_mixin2_test: RuntimeError # Issue 13109.
mixin_mixin3_test: RuntimeError # Issue 13109.
mixin_mixin7_test: RuntimeError # Issue 13109.
mixin_regress_13688_test: RuntimeError # Issue 13109.
modulo_test: RuntimeError # Issue 15246
truncdiv_test: RuntimeError # Issue 15246
invocation_mirror2_test: RuntimeError # Issue 6490 (wrong retval).
generic_closure_test: RuntimeError # Issue 12605
const_switch_test/02: RuntimeError # Issue 17960
const_switch_test/04: RuntimeError # Issue 17960

const_dynamic_type_literal_test/02: CompileTimeError # Issue 23009
const_dynamic_type_literal_test/03: CompileTimeError # Issue 23009

# Compilation errors.
method_override5_test: RuntimeError # Issue 12809
external_test/10: CompileTimeError # Issue 12887
external_test/13: CompileTimeError # Issue 12887
external_test/20: CompileTimeError # Issue 12887
list_literal4_test: RuntimeError # Issue 12890
built_in_identifier_test/01: CompileTimeError # Issue 13022

scope_variable_test/01: MissingCompileTimeError # Issue 13016

numbers_test: RuntimeError, OK # Issue 1533
canonical_const2_test: RuntimeError, OK # Issue 1533
bit_operations_test: RuntimeError, OK # Issue 1533
expect_test: RuntimeError, OK # Issue 13080

[ $compiler == dart2js && $runtime == none ]
*: Fail, Pass # TODO(ahe): Triage these tests.

[ $compiler == dart2js && $runtime == chrome && $system == macos ]
await_future_test: Pass, Timeout # Issue 22695.
async_await_test/none: Pass, Timeout # Issue 22695.
async_await_test/02: Pass, Timeout # Issue 22695.
async_await_test/03: Pass, Timeout # Issue 22695.

[ $compiler == dart2js && ($runtime == safari || $runtime == safarimobilesim)]
round_test: Fail, OK # Common JavaScript engine Math.round bug.

[ $compiler == dart2js && $runtime == ff ]
round_test: Pass, Fail, OK # Fixed in ff 35. Common JavaScript engine Math.round bug.

[ $compiler == dart2js && ($runtime == safari || $runtime == safarimobilesim)]
# Safari codegen bug, fixed on some versions of Safari 7.1 (Version 7.1 (9537.85.10.17.1))
call_through_getter_test: Fail, OK

[ $compiler == dart2js && $runtime == chromeOnAndroid ]
override_field_test/02: Pass, Slow # TODO(kasperl): Please triage.

[ $minified ]
stack_trace_test: Fail, OK # Stack trace not preserved in minified code.
regress_21795_test: RuntimeError # Issue 12605

[ $compiler == dart2js && $runtime == d8 && $system == windows ]
# Detection of d8 runtime does not work on Windows so the runtime result is
# unreliable; at the time of writing, 32 passed, 31 failed with runtime error.
# Marked with Pass,RuntimeError to avoid undetected compile-time failures.
*deferred*: Pass,RuntimeError # Issue 17458
cha_deopt*: Pass,RuntimeError # Issue 17458
regress_22443_test: Pass,RuntimeError # Issue 17458

[ $compiler == dart2js && $cps_ir == false ]
generic_field_mixin4_test: Crash # Issue 18651
generic_field_mixin5_test: Crash # Issue 18651
many_method_calls_test: Crash # Stack overflow in HGraphVisitor.visitPostDominatorTree.visitBasicBlockAndSuccessors

[ $compiler == dart2js && $cps_ir ]
async_and_or_test: Crash # (test()async{await test1();await test2();}): cannot handle async/sync*/async* functions
async_await_catch_regression_test: Crash # (test()async{var exc...  cannot handle async/sync*/async* functions
async_await_syntax_test/a01a: Crash # (a01a()async=>null;): cannot handle async/sync*/async* functions
async_await_syntax_test/a02a: Crash # (a02a()async{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a03a: Crash # (a03a()async*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a03b: Crash # (a03b()async*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a04a: Crash # (a04a()sync*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a04c: Crash # (a04c()sync*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a05a: Crash # (a05a()async{await 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/a05b: Crash # (a05b()async{await (a){};await (0);}): cannot handle async/sync*/async* functions
async_await_syntax_test/a05h: Crash # (a05h()async{yield*st;}): cannot handle async/sync*/async* functions
async_await_syntax_test/a06a: Crash # (a06a()async{await for(var o in st){}}): cannot handle async/sync*/async* functions
async_await_syntax_test/a07a: Crash # (a07a()sync*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/a08a: Crash # (a08a()sync*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_syntax_test/a09a: Crash # (a09a()async*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/a10a: Crash # (a10a()async*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_syntax_test/a11b: Crash # (get sync sync*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a11c: Crash # (get async async{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a11d: Crash # (get async async*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/a12g: Crash # (get a12g async=>null;): cannot handle async/sync*/async* functions
async_await_syntax_test/b01a: Crash # (b01a()async=>null;): cannot handle async/sync*/async* functions
async_await_syntax_test/b02a: Crash # (b02a()async{}): cannot handle async/sync*/async* functions
async_await_syntax_test/b03a: Crash # (b03a()async*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/b04a: Crash # (b04a()sync*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/b05a: Crash # (b05a()async{await 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/b06a: Crash # (b06a()async{await for(var o in st){}}): cannot handle async/sync*/async* functions
async_await_syntax_test/b07a: Crash # (b07a()sync*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/b08a: Crash # (b08a()sync*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_syntax_test/b09a: Crash # (b09a()async*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/b10a: Crash # (b10a()async*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_syntax_test/b11b: Crash # (get sync sync*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/b11c: Crash # (get async async{}): cannot handle async/sync*/async* functions
async_await_syntax_test/b11d: Crash # (get async async*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/b12g: Crash # (get b12g async=>null;): cannot handle async/sync*/async* functions
async_await_syntax_test/c01a: Crash # (c01a()async=>null;): cannot handle async/sync*/async* functions
async_await_syntax_test/c02a: Crash # (c02a()async{}): cannot handle async/sync*/async* functions
async_await_syntax_test/c03a: Crash # (c03a()async*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/c04a: Crash # (c04a()sync*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/c05a: Crash # (c05a()async{await 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/c06a: Crash # (c06a()async{await for(var o in st){}}): cannot handle async/sync*/async* functions
async_await_syntax_test/c07a: Crash # (c07a()sync*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/c08a: Crash # (c08a()sync*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_syntax_test/c09a: Crash # (c09a()async*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/c10a: Crash # (c10a()async*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_syntax_test/c11a: Crash # (c11a()async{yield-5;}): cannot handle async/sync*/async* functions
async_await_syntax_test/c11b: Crash # (c11b()async{yield*st;}): cannot handle async/sync*/async* functions
async_await_syntax_test/d01a: Crash # (()async=>null): cannot handle async/sync*/async* functions
async_await_syntax_test/d02a: Crash # (()async{}): cannot handle async/sync*/async* functions
async_await_syntax_test/d03a: Crash # (()async*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/d04a: Crash # (()sync*{}): cannot handle async/sync*/async* functions
async_await_syntax_test/d05a: Crash # (()async{await 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/d06a: Crash # (()async{await for(var o in st){}}): cannot handle async/sync*/async* functions
async_await_syntax_test/d07a: Crash # (()sync*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/d08a: Crash # (()sync*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_syntax_test/d08b: Crash # (()sync*{yield* 0+1;}): cannot handle async/sync*/async* functions
async_await_syntax_test/d09a: Crash # (()async*{yield 0;}): cannot handle async/sync*/async* functions
async_await_syntax_test/d10a: Crash # (()async*{yield* [] ;}): cannot handle async/sync*/async* functions
async_await_test/02: Crash # (f()async{return id(42);}): cannot handle async/sync*/async* functions
async_await_test/03: Crash # (f()async{return id(42);}): cannot handle async/sync*/async* functions
async_await_test/none: Crash # (f()async{return id(42);}): cannot handle async/sync*/async* functions
async_break_in_finally_test: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_continue_label_test/await_in_body: Crash # (test()async{await t...  cannot handle async/sync*/async* functions
async_continue_label_test/await_in_condition: Crash # (test()async{await t...  cannot handle async/sync*/async* functions
async_continue_label_test/await_in_init: Crash # (test()async{await t...  cannot handle async/sync*/async* functions
async_continue_label_test/await_in_update: Crash # (test()async{await t...  cannot handle async/sync*/async* functions
async_continue_label_test/none: Crash # (test()async{await t...  cannot handle async/sync*/async* functions
async_control_structures_test: Crash # (asyncImplicitReturn...  cannot handle async/sync*/async* functions
async_finally_rethrow_test: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
async_or_generator_return_type_stacktrace_test/01: Crash # (void badReturnTypeAsync()async{}): cannot handle async/sync*/async* functions
async_or_generator_return_type_stacktrace_test/02: Crash # (void badReturnTypeAsyncStar()async*{}): cannot handle async/sync*/async* functions
async_or_generator_return_type_stacktrace_test/03: Crash # (void badReturnTypeSyncStar()sync*{}): cannot handle async/sync*/async* functions
async_regression_23058_test: Crash # (foo()async{return x.foo==2?42:x.foo;}): cannot handle async/sync*/async* functions
async_rethrow_test: Crash # (rethrowString()asyn...  cannot handle async/sync*/async* functions
async_return_types_test/nestedFuture: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_return_types_test/none: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_return_types_test/tooManyTypeParameters: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_return_types_test/wrongReturnType: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_return_types_test/wrongTypeParameter: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_star_cancel_and_throw_in_finally_test: Crash # (test()async{var com...  cannot handle async/sync*/async* functions
async_star_regression_23116_test: Crash # (test()async{Complet...  cannot handle async/sync*/async* functions
async_star_regression_2238_test: Crash # (f()async*{}): cannot handle async/sync*/async* functions
async_star_cancel_while_paused_test: Crash # (f()async*{}): cannot handle async/sync*/async* functions
async_star_stream_take_test: Crash # (f()async*{}): cannot handle async/sync*/async* functions
async_star_take_reyield_test: Crash # (f()async*{}): cannot handle async/sync*/async* functions
async_star_await_pauses_test: Crash # (f()async*{}): cannot handle async/sync*/async* functions
async_star_test: Crash # (f()async*{}): cannot handle async/sync*/async* functions
async_switch_test/none: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_switch_test/withDefault: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
async_test/none: Crash # (bar(int p1,p2)async{var z=8;return p2+z+foo;}): cannot handle async/sync*/async* functions
async_test/type-mismatch1: Crash # (bar(int p1,p2)async{var z=8;return p2+z+foo;}): cannot handle async/sync*/async* functions
async_test/type-mismatch2: Crash # (bar(int p1,p2)async{var z=8;return p2+z+foo;}): cannot handle async/sync*/async* functions
async_test/type-mismatch3: Crash # (bar(int p1,p2)async{var z=8;return p2+z+foo;}): cannot handle async/sync*/async* functions
async_test/type-mismatch4: Crash # (bar(int p1,p2)async{var z=8;return p2+z+foo;}): cannot handle async/sync*/async* functions
async_this_bound_test: Crash # (test()async{await testA();await testB();}): cannot handle async/sync*/async* functions
async_throw_in_catch_test/forceAwait: Crash # (test()async{await r...  cannot handle async/sync*/async* functions
async_throw_in_catch_test/none: Crash # (test()async{await r...  cannot handle async/sync*/async* functions
asyncstar_concat_test: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
asyncstar_throw_in_catch_test: Crash # (test()async{await r...  cannot handle async/sync*/async* functions
asyncstar_yield_test: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
asyncstar_yieldstar_test: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
await_backwards_compatibility_test/none: Crash # (test1()async{var x=await 9;Expect.equals(9,x);}): cannot handle async/sync*/async* functions
await_exceptions_test: Crash # (awaitFoo()async{await foo();}): cannot handle async/sync*/async* functions
await_for_cancel_test: Crash # (test()async{await test1();await test2();}): cannot handle async/sync*/async* functions
await_for_test: Crash # (consumeSomeOfInfini...  cannot handle async/sync*/async* functions
await_for_use_local_test: Crash # (test()async{var cou...  cannot handle async/sync*/async* functions
await_future_test: Crash # (test()async{var res...  cannot handle async/sync*/async* functions
await_nonfuture_test: Crash # (foo()async{Expect.equals(X,10);return await 5;}): cannot handle async/sync*/async* functions
await_not_started_immediately_test: Crash # (foo()async{x++ ;await 1;x++ ;}): cannot handle async/sync*/async* functions
await_postfix_expr_test: Crash # (test()async{Expect....  cannot handle async/sync*/async* functions
await_regression_test: Crash # (main()async{testNes...  cannot handle async/sync*/async* functions
await_test: Crash # (others()async{var a...  cannot handle async/sync*/async* functions
cha_deopt1_test: Crash # (d.make_u()): deferred access is not implemented
cha_deopt2_test: Crash # (d.make_u()): deferred access is not implemented
cha_deopt3_test: Crash # (d.make_u()): deferred access is not implemented
closure_in_constructor_test: Crash # Invalid argument(s)
closure_type_variables_test: Crash # Invalid argument(s)
closures_initializer_test: RuntimeError # Please triage this failure.
const_evaluation_test/01: Crash # (static Iterable<Str...  cannot handle async/sync*/async* functions
constructor12_test: RuntimeError # Please triage this failure.
crash_6725_test/01: Crash # unsupported operation on erroneous element
custom_await_stack_trace_test: Crash # (main()async{try {va...  cannot handle async/sync*/async* functions
deferred_call_empty_before_load_test: Crash # (lib1.thefun()): deferred access is not implemented
deferred_closurize_load_library_test: Crash # (lib.trueVar): deferred access is not implemented
deferred_constant_list_test: Crash # (lib.finalConstList): deferred access is not implemented
deferred_constraints_constants_test/none: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_constants_test/reference_after_load: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/as_operation: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/catch_check: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/is_check: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/new: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/new_before_load: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/new_generic1: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/new_generic2: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/new_generic3: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/none: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/static_method: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation1: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation_generic1: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation_generic2: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation_generic3: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation_generic4: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation_non_deferred: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation_null: Crash # (lib.constantInstance): deferred access is not implemented
deferred_constraints_type_annotation_test/type_annotation_top_level: Crash # (lib.constantInstance): deferred access is not implemented
deferred_function_type_test: Crash # (lib.runTest()): deferred access is not implemented
deferred_global_test: Crash # (lib.finalConstGlobal): deferred access is not implemented
deferred_inlined_test: Crash # (lib.foo()): deferred access is not implemented
deferred_load_constants_test/none: Crash # (foo.c): deferred access is not implemented
deferred_load_inval_code_test: Crash # (d.foo()): deferred access is not implemented
deferred_load_library_wrong_args_test/none: RuntimeError # Y.loadLibrary is not a function
deferred_mixin_test: RuntimeError # X.loadLibrary is not a function
deferred_no_such_method_test: RuntimeError # D.loadLibrary is not a function
deferred_not_loaded_check_test: Crash # (lib.closure(sideEffect())): deferred access is not implemented
deferred_only_constant_test: Crash # (lib.constant): deferred access is not implemented
deferred_optimized_test: Crash # (lib.foo()): deferred access is not implemented
deferred_redirecting_factory_test: Crash # (test()async{await t...  cannot handle async/sync*/async* functions
deferred_regression_22995_test: Crash # (lib.foofoo()): deferred access is not implemented
deferred_shadow_load_library_test: Crash # (lib.trueVar): deferred access is not implemented
deferred_shared_and_unshared_classes_test: Crash # (lib2.foo()): deferred access is not implemented
deferred_static_seperate_test: Crash # (lib1.x): deferred access is not implemented
deferred_type_dependency_test/as: Crash # (main()async{await l...  cannot handle async/sync*/async* functions
deferred_type_dependency_test/is: Crash # (main()async{await l...  cannot handle async/sync*/async* functions
deferred_type_dependency_test/none: Crash # (main()async{await l...  cannot handle async/sync*/async* functions
deferred_type_dependency_test/type_annotation: Crash # (main()async{await l...  cannot handle async/sync*/async* functions
enum_mirror_test: Crash # (static Iterable<Str...  cannot handle async/sync*/async* functions
final_super_field_set_test/01: RuntimeError # Please triage this failure.
first_class_types_test: RuntimeError # Please triage this failure.
flatten_test/01: Crash # (test()async{int x=await new Derived<int>();}): cannot handle async/sync*/async* functions
flatten_test/02: Crash # (test()async{Future<int> f()async=>new Derived<int>();}): cannot handle async/sync*/async* functions
flatten_test/03: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/04: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/05: Crash # (test()async{FixedPo...  cannot handle async/sync*/async* functions
flatten_test/06: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/07: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/08: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/09: Crash # (test()async{Diverge...  cannot handle async/sync*/async* functions
flatten_test/10: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/11: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/12: Crash # (test()async{Future<...  cannot handle async/sync*/async* functions
flatten_test/none: Crash # (test()async{}): cannot handle async/sync*/async* functions
for2_test: Crash # The null object does not have a getter 'field'.
for_variable_capture_test: Crash # (i=0): For-loop variable captured in loop header
generic2_test: RuntimeError # Please triage this failure.
generic_field_mixin3_test: RuntimeError # Please triage this failure.
generic_instanceof_test: RuntimeError # Please triage this failure.
generic_native_test: RuntimeError # Please triage this failure.
if_null_assignment_behavior_test/12: RuntimeError # Please triage this failure.
if_null_assignment_behavior_test/28: RuntimeError # Please triage this failure.
if_null_assignment_static_test/01: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/03: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/04: RuntimeError # v0.get$b is not a function
if_null_assignment_static_test/05: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/29: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/31: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/32: RuntimeError # v0.get$b is not a function
if_null_assignment_static_test/33: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/36: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/38: RuntimeError # v0.get$a is not a function
if_null_assignment_static_test/39: RuntimeError # v0.get$b is not a function
if_null_assignment_static_test/40: RuntimeError # v0.get$a is not a function
infinite_switch_label_test: Crash # (switch (target){l0:...  continue to a labeled switch case
instance_creation_in_function_annotation_test: Crash # (static Iterable<Str...  cannot handle async/sync*/async* functions
instanceof2_test: RuntimeError # Please triage this failure.
instanceof4_test/01: RuntimeError # Please triage this failure.
invocation_mirror_invoke_on_test: RuntimeError # Please triage this failure.
invocation_mirror_test: Crash # (super[37]=42): visitUnresolvedSuperIndexSet
issue_1751477_test: RuntimeError # O.loadLibrary is not a function
list_is_test: RuntimeError # Please triage this failure.
list_test: RuntimeError # Please triage this failure.
many_generic_instanceof_test: RuntimeError # Please triage this failure.
many_overridden_no_such_method_test: RuntimeError # Please triage this failure.
nested_switch_label_test: Crash # (switch (target){out...  continue to a labeled switch case
no_such_method_test: RuntimeError # Please triage this failure.
null_test/none: Crash # (static Iterable<Str...  cannot handle async/sync*/async* functions
overridden_no_such_method_test: RuntimeError # Please triage this failure.
redirecting_factory_reflection_test: Crash # (static Iterable<Str...  cannot handle async/sync*/async* functions
regress_18535_test: Crash # (static Iterable<Str...  cannot handle async/sync*/async* functions
regress_22438_test: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
regress_22443_test: RuntimeError # M.loadLibrary is not a function
regress_22445_test: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
regress_22579_test: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
regress_22728_test: Crash # (main()async{bool fa...  cannot handle async/sync*/async* functions
regress_22777_test: Crash # (test()async{try {te...  cannot handle async/sync*/async* functions
regress_23408_test: RuntimeError # G.loadLibrary is not a function
regress_23498_test: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
regress_23500_test/01: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
regress_23500_test/02: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
regress_23500_test/none: Crash # (main()async{var err...  cannot handle async/sync*/async* functions
super_bound_closure_test/01: RuntimeError # Cannot read property 'call' of undefined
super_bound_closure_test/none: RuntimeError # Cannot read property 'call' of undefined
super_call4_test: RuntimeError # Please triage this failure.
super_getter_setter_test: Crash # Class 'PartialMethodElement' has no instance getter 'initializer'.
super_implicit_closure_test: RuntimeError # Cannot read property 'call' of undefined
super_operator_index5_test: Crash # (super[0]=42): visitUnresolvedSuperIndexSet
super_operator_index7_test: Crash # (super[0]=42): visitUnresolvedSuperIndexSet
super_operator_index8_test: Crash # (super[f()]=g()): visitUnresolvedSuperIndexSet
super_operator_index_test/03: Crash # (super[4]=42): visitUnresolvedSuperIndexSet
super_operator_index_test/05: Crash # (super[4]=42): visitUnresolvedSuperIndexSet
switch_label2_test: Crash # (switch (target){cas...  continue to a labeled switch case
switch_label_test: Crash # (switch (animal){cas...  continue to a labeled switch case
switch_try_catch_test: Crash # (switch (0){_0:case ...  continue to a labeled switch case
sync_generator1_test/01: Crash # (dreiVier()sync*{yield* 3;}): cannot handle async/sync*/async* functions
sync_generator1_test/none: Crash # (einsZwei()sync*{yie...  cannot handle async/sync*/async* functions
sync_generator2_test/07: Crash # (sync()sync*{yield sync;}): cannot handle async/sync*/async* functions
sync_generator2_test/08: Crash # (sync()sync*{yield sync;}): cannot handle async/sync*/async* functions
sync_generator2_test/10: Crash # (sync()sync*{yield sync;}): cannot handle async/sync*/async* functions
sync_generator2_test/none: Crash # (sync()sync*{yield sync;}): cannot handle async/sync*/async* functions
sync_generator3_test/test1: Crash # (f()sync*{try {yield...  cannot handle async/sync*/async* functions
sync_generator3_test/test2: Crash # (g()sync*{try {yield...  cannot handle async/sync*/async* functions
syncstar_less_than_test: Crash # (Iterable<int> foo()...  cannot handle async/sync*/async* functions
syncstar_yield_test/copyParameters: Crash # (Iterable<int> foo3(...  cannot handle async/sync*/async* functions
syncstar_yield_test/none: Crash # (Iterable<int> foo3(...  cannot handle async/sync*/async* functions
syncstar_yieldstar_test: Crash # (main()async{Expect....  cannot handle async/sync*/async* functions
type_parameter_test/01: Crash # Invalid argument(s)
type_parameter_test/02: Crash # Invalid argument(s)
type_parameter_test/03: Crash # Invalid argument(s)
type_parameter_test/04: Crash # Invalid argument(s)
type_parameter_test/05: Crash # Invalid argument(s)
type_parameter_test/06: Crash # Invalid argument(s)
type_parameter_test/none: Crash # Invalid argument(s)
type_variable_closure2_test: RuntimeError # Please triage this failure.
type_variable_closure_test: Crash # Invalid argument(s)
type_variable_field_initializer_closure_test: RuntimeError # Please triage this failure.
type_variable_field_initializer_test: RuntimeError # Please triage this failure.
type_variable_nested_test: RuntimeError # Please triage this failure.

[ $compiler == dart2js && ($runtime == d8 || $runtime == jsshell) ]
issue23244_test: RuntimeError # 23244
