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

[ $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 && $browser ]
config_import_test: Fail # Test flag is not passed to the compiler.

[ $compiler == dart2js ]
invocation_mirror_empty_arguments_test: Fail # Issue 24331
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
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_2_test: CompileTimeError # Issue 23773
mixin_super_bound2_test: CompileTimeError # Issue 23773
mixin_super_use_test: CompileTimeError # Issue 23773
mixin_superclass_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

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 && $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 ]
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
double_int_to_string_test: RuntimeError # Issue 1533
mint_arithmetic_test: RuntimeError # Issue 1533
left_shift_test: RuntimeError # Issue 1533
regress_24283_test: RuntimeError # Issue 1533
constructor_named_arguments_test/01: CompileTimeError # Issue 25225
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.
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
method_override5_test: RuntimeError # Issue 12809

[ $compiler == dart2js && $runtime != drt && $runtime != dartium ]
issue23244_test: RuntimeError # 23244

[ $compiler == dart2js && $cps_ir ]
async_await_syntax_test/a03a: Crash # (a03a()async*{}): cannot handle sync*/async* functions
async_await_syntax_test/a03b: Crash # (a03b()async*{}): cannot handle sync*/async* functions
async_await_syntax_test/a06a: Crash # (await for(var o in st){}): await for
async_await_syntax_test/a09a: Crash # (a09a()async*{yield 0;}): cannot handle sync*/async* functions
async_await_syntax_test/a10a: Crash # (a10a()async*{yield* [] ;}): cannot handle sync*/async* functions
async_await_syntax_test/a11d: Crash # (get async async*{}): cannot handle sync*/async* functions
async_await_syntax_test/b03a: Crash # (b03a()async*{}): cannot handle sync*/async* functions
async_await_syntax_test/b06a: Crash # (await for(var o in st){}): await for
async_await_syntax_test/b09a: Crash # (b09a()async*{yield 0;}): cannot handle sync*/async* functions
async_await_syntax_test/b10a: Crash # (b10a()async*{yield* [] ;}): cannot handle sync*/async* functions
async_await_syntax_test/b11d: Crash # (get async async*{}): cannot handle sync*/async* functions
async_await_syntax_test/c03a: Crash # (c03a()async*{}): cannot handle sync*/async* functions
async_await_syntax_test/c06a: Crash # (await for(var o in st){}): await for
async_await_syntax_test/c09a: Crash # (c09a()async*{yield 0;}): cannot handle sync*/async* functions
async_await_syntax_test/c10a: Crash # (c10a()async*{yield* [] ;}): cannot handle sync*/async* functions
async_await_syntax_test/d03a: Crash # (()async*{}): cannot handle sync*/async* functions
async_await_syntax_test/d06a: Crash # (await for(var o in st){}): await for
async_await_syntax_test/d09a: Crash # (()async*{yield 0;}): cannot handle sync*/async* functions
async_await_syntax_test/d10a: Crash # (()async*{yield* [] ;}): cannot handle sync*/async* functions
async_await_test/02: Crash # (switch (v){label:ca...  continue to a labeled switch case
async_await_test/03: Crash # (switch (v){label:ca...  continue to a labeled switch case
async_await_test/none: Crash # (switch (v){label:ca...  continue to a labeled switch case
async_or_generator_return_type_stacktrace_test/02: Crash # (void badReturnTypeAsyncStar()async*{}): cannot handle sync*/async* functions
async_return_types_test/nestedFuture: Crash #  cannot handle sync*/async* functions
async_return_types_test/none: Crash # cannot handle sync*/async* functions
async_return_types_test/tooManyTypeParameters: Crash # cannot handle sync*/async* functions
async_return_types_test/wrongReturnType: Crash # cannot handle sync*/async* functions
async_return_types_test/wrongTypeParameter: Crash # cannot handle sync*/async* functions
async_star_await_pauses_test: Crash # (await for(var i in ...  await for
async_star_cancel_and_throw_in_finally_test: Crash # (foo()async*{try {in...  cannot handle sync*/async* functions
async_star_cancel_while_paused_test: Crash # (f()async*{list.add(...  cannot handle sync*/async* functions
async_star_regression_2238_test: Crash # (f()async*{label1:label2:yield 0;}): cannot handle sync*/async* functions
async_star_regression_23116_test: Crash # (Stream<int> foo(Com...  cannot handle sync*/async* functions
async_star_regression_fisk_test: Crash # (fisk()async*{res.ad...  cannot handle sync*/async* functions
async_star_stream_take_test: Crash # (Stream makeStream(i...  cannot handle sync*/async* functions
async_star_take_reyield_test: Crash # (fivePartialSums(Str...  cannot handle sync*/async* functions
async_star_test: Crash # (f()async*{}): cannot handle sync*/async* functions
asyncstar_concat_test: Crash # (concat(a,b)async*{yield* a;yield* b;}): cannot handle sync*/async* functions
asyncstar_throw_in_catch_test: Crash # (foo4(Tracer tracer)...  cannot handle sync*/async* functions
asyncstar_yield_test: Crash # (Stream<int> foo4()a...  cannot handle sync*/async* functions
asyncstar_yieldstar_test: Crash # (foo2(Stream subStream)async*{yield* subStream;}): cannot handle sync*/async* functions
await_for_cancel_test: Crash # (await for(var x in controller.stream){for(int j=0;j<10;j++ ){if(j==5)continue outer;}}): await for
await_for_test: Crash # (await for(var x in infiniteStream()){i++ ;if(i>10)break;t4.record(x);}): await for
await_for_use_local_test: Crash # (await for(var v in s){accum+= v;}): await for
call_closurization_test: RuntimeError # Bad type inference for ".call" tear-off.
closure_in_constructor_test: RuntimeError # Please triage this failure.
closures_initializer_test: RuntimeError # Please triage this failure.
constructor12_test: RuntimeError # Please triage this failure.
deferred_super_dependency_test/01: Crash # Class 'PartialMethodElement' has no instance getter 'initializer'.
field3a_negative_test: Fail # Bogus result from type inference in case of invalid program.
first_class_types_test: RuntimeError # Please triage this failure.
generic2_test: RuntimeError # Please triage this failure.
generic_instanceof_test: RuntimeError # Please triage this failure.
generic_native_test: RuntimeError # Please triage this failure.
gc_test: Crash # Internal Error: Pending statics (see above).
infinite_switch_label_test: Crash # (switch (target){l0:...  continue to a labeled switch case
instanceof2_test: RuntimeError # Please triage this failure.
instanceof4_test/01: RuntimeError # Please triage this failure.
invocation_mirror_test: Crash # (super[37]=42): visitUnresolvedSuperIndexSet
list_is_test: RuntimeError # Please triage this failure.
list_test: RuntimeError # Please triage this failure.
many_generic_instanceof_test: RuntimeError # Please triage this failure.
nested_switch_label_test: Crash # (switch (target){out...  continue to a labeled switch case
regress_23500_test/01: Crash # (await for(var c in new Stream.fromIterable([] )){}): await for
stack_trace_test: Fail # Stack trace not preserved when inlining?
super_call4_test: RuntimeError # Please triage this failure.
super_getter_setter_test: Crash # Class 'PartialMethodElement' has no instance getter 'initializer'.
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
type_variable_closure2_test: RuntimeError # Issue 25309: T lost in List<T>
type_variable_closure4_test: RuntimeError # T lost in <T,T>{}
type_variable_field_initializer_closure_test: RuntimeError # Issue 25309: T lost in List<T>
type_variable_field_initializer_test: RuntimeError # Issue 25309: T lost in List<T>
type_variable_nested_test: RuntimeError # Issue 25309: T lost in List<T>

[ $compiler == dart2js && $cps_ir && $host_checked == false ]
regress_21795_test: Pass, RuntimeError # Due to inlining?

[ $compiler == dart2js && $cps_ir && $host_checked ]
async_throw_in_catch_test/forceAwait: Crash # Issue 24485
async_throw_in_catch_test/none: Crash # Issue 24485
execute_finally9_test: Crash # Issue 24485
regress_21795_test: Crash # Issue 24485
regress_23537_test: Crash # Issue 24485
