blob: b492b9f367398b7a61b71425bf079951ad13541a [file] [log] [blame]
A<B<A<int>>> bar1b() => throw 42;
B<A<int>> bar1a() => throw 42;
bar2a(B<A<int>> x) => throw 42;
bar2b(A<B<A<int>>> x) => throw 42;
bar3a<X extends B<A<int>>>() => throw 42;
bar3b<X extends A<B<A<int>>>>() => throw 42;
class A<T> {}
class Bar1<X extends B<A<int>>> {
B<A<int>> barBar11() => throw 42;
barBar12(B<A<int>> x) => throw 42;
barBar13<X extends B<A<int>>>() => throw 42;
}
class Bar2<X extends A<B<A<int>>>> {
A<B<A<int>>> barBar21() => throw 42;
barBar22(A<B<A<int>>> x) => throw 42;
barBar23<X extends A<B<A<int>>>>() => throw 42;
}
foo() {}
main() {}
typedef B<X extends A<X>> = A<X>;
typedef Baz1 = B<A<int>>;
typedef Baz2 = A<B<A<int>>>;