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

[ $compiler == dart2analyzer ]
html/debugger_test: CompileTimeError # Issue 28969
html/js_function_getter_trust_types_test: Skip # dart2js specific flags.
html/js_typed_interop_default_arg_test/default_value: MissingCompileTimeError # Issue #25759
mirrors/deferred_mirrors_metadata_test: Fail # Issue 17522
mirrors/deferred_type_test: StaticWarning, OK # Deliberately refers to a deferred type in a declaration.
mirrors/generic_f_bounded_mixin_application_test: StaticWarning # Test Issue
mirrors/mirrors_nsm_mismatch_test: StaticWarning, OK
mirrors/mirrors_nsm_test: StaticWarning, OK
mirrors/mirrors_nsm_test/dart2js: StaticWarning, OK
mirrors/redirecting_factory_test/01: StaticWarning # test issue X, The return type 'Class<T2, T1>' of the redirected constructor is not assignable to 'Class<T1, T2>'
mirrors/redirecting_factory_test/none: StaticWarning # test issue X, The return type 'Class<T2, T1>' of the redirected constructor is not assignable to 'Class<T1, T2>
mirrors/repeated_private_anon_mixin_app_test: StaticWarning, OK # Intentional library name conflict.

[ $compiler == dart2analyzer && $strong ]
html/transferables_test: CompileTimeError # Issue 30975
mirrors/deferred_mirrors_metadata_test: StaticWarning # Issue 28969
mirrors/deferred_type_test: CompileTimeError, OK # Deliberately refers to a deferred type in a declaration.
mirrors/generic_f_bounded_mixin_application_test: CompileTimeError
mirrors/mirrors_nsm_mismatch_test: CompileTimeError, OK
mirrors/mirrors_nsm_test: CompileTimeError, OK
mirrors/mirrors_nsm_test/dart2js: CompileTimeError, OK
mirrors/relation_subclass_test: CompileTimeError, OK
mirrors/repeated_private_anon_mixin_app_test: CompileTimeError, OK # Intentional library name conflict.

[ $compiler == dart2analyzer && !$strong ]
html/custom/element_upgrade_failure_test: MissingCompileTimeError
mirrors/generic_bounded_by_type_parameter_test/02: MissingCompileTimeError
mirrors/generic_bounded_test/01: MissingCompileTimeError
mirrors/generic_bounded_test/02: MissingCompileTimeError
mirrors/generic_interface_test/01: MissingCompileTimeError
mirrors/generics_test/01: MissingCompileTimeError
mirrors/redirecting_factory_different_type_test/01: MissingCompileTimeError
mirrors/reflect_class_test/01: MissingCompileTimeError
mirrors/reflect_class_test/02: MissingCompileTimeError
mirrors/reflected_type_classes_test/01: MissingCompileTimeError
mirrors/reflected_type_classes_test/02: MissingCompileTimeError
mirrors/reflected_type_classes_test/03: MissingCompileTimeError
mirrors/reflected_type_test/01: MissingCompileTimeError
mirrors/reflected_type_test/02: MissingCompileTimeError
mirrors/reflected_type_test/03: MissingCompileTimeError
mirrors/regress_16321_test/01: MissingCompileTimeError

