# 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/element_types_keygen_test: CompileTimeError # Chrome 57 keygen removed
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 && !$preview_dart_2 ]
mirrors/metadata_nested_constructor_call_test/none: CompileTimeError

[ $compiler == dart2analyzer && $strong ]
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/repeated_private_anon_mixin_app_test: CompileTimeError, OK # Intentional library name conflict.
