# Copyright (c) 2017, 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.

[ $mode == product ]
assertion_test: SkipByDesign # Requires checked mode.

[ $compiler == none && $runtime == drt && !$checked ]
assertion_initializer_const_error2_test/cc02: Fail
assertion_initializer_const_error_test/01: Fail
assertion_initializer_const_function_error_test/01: Fail

[ ! $checked ]
function_type/*: Skip # Needs checked mode.

[ $hot_reload || $hot_reload_rollback ]
cha_deopt1_test: Crash # Requires deferred libraries
cha_deopt2_test: Crash # Requires deferred libraries
cha_deopt3_test: Crash # Requires deferred libraries

[ ! $checked && ! $strong ]
closure_type_test: RuntimeError

[ ! $strong ]
class_literal_static_test: MissingCompileTimeError # Requires strong mode
class_literal_static_test/none: Pass
class_override_test: MissingCompileTimeError # Requires strong mode
closure_internals_test/01: MissingCompileTimeError # Requires strong mode
closure_internals_test/02: MissingCompileTimeError # Requires strong mode
closure_internals_test/03: MissingCompileTimeError # Requires strong mode
