blob: 5d1e2befe9b7809f6058156240ad4f42c32a8059 [file] [log] [blame]
part 'check_bounds_lib.dart';
class A {
}
class B extends A {
}
class Class<T extends A> {
}
extension Extension<T extends B> ( ){ }
on Class<T> (){ }
main() { }
test() { }
final A a = new A();
final Class<A> classA = new Class<A>();
final field1 = classA.method();
final field2 = Extension(classA).method();
final field3 = Extension<A>(classA).method();
final field4 = Extension<B>(classA).method();
final field5 = Extension(classA).genericMethod(a);
final field6 = Extension(classA).genericMethod<A>(a);
final field7 = Extension(classA).genericMethod<B>(a);
final field8 = Extension<A>(classA).genericMethod(a);
final field9 = Extension<A>(classA).genericMethod<A>(a);
final field10 = Extension<A>(classA).genericMethod<B>(a);
final field11 = Extension<B>(classA).genericMethod(a);
final field12 = Extension<B>(classA).genericMethod<A>(a);
final field13 = Extension<B>(classA).genericMethod<B>(a);
final Class<B> classB = new Class<B>();
final field14 = classB.method();
final field15 = Extension(classB).method();
final field16 = Extension<A>(classB).method();
final field17 = Extension<B>(classB).method();
final field18 = classB.genericMethod(a);
final field19 = classB.genericMethod<A>(a);
final field20 = classB.genericMethod<B>(a);
final field21 = Extension(classB).genericMethod(a);
final field22 = Extension(classB).genericMethod<A>(a);
final field23 = Extension(classB).genericMethod<B>(a);
final field24 = Extension<A>(classB).genericMethod(a);
final field25 = Extension<A>(classB).genericMethod<A>(a);
final field26 = Extension<A>(classB).genericMethod<B>(a);
final field27 = Extension<B>(classB).genericMethod(a);
final field28 = Extension<B>(classB).genericMethod<A>(a);
final field29 = Extension<B>(classB).genericMethod<B>(a);