library test; | |
class B<T, U extends F<T>> { | |
B<T, F<T>> operator +(other) => null; | |
} | |
class C { | |
B<num, F<num>> operator [](int i) => null; | |
B<num, F<num>> x; | |
static B<num, F<num>> y; | |
void operator []=(int i, B<num, F<num>> v) {} | |
} | |
typedef void F<T>(T x); | |
void main() {} | |
void test1(B<num, F<num>> b) {} | |
void test2(C c) {} | |
void test3(C c) {} | |
void test4(C c) {} |