blob: b6a325bafe1f41ca8e8bcc3084b0f3a90f799013 [file] [log] [blame]
// Copyright (c) 2018, 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.
// @dart = 2.7
/*class: A:checkedTypeArgument,checks=[],typeArgument*/
class A<T> {}
/*class: B:checkedInstance*/
class B<T> {}
/*class: C:checks=[],indirectInstance*/
class C<T> {}
/*class: D:checks=[$isB],instance*/
class D<T> extends C<T> implements B<A<T>> {}
@pragma('dart2js:noInline')
test(o) => o is B<A<String>>;
main() {
test(new D<String>());
test(new D<int>());
}