blob: a8476805f7890262f5a840fddeb6ae9b18527ae1 [file] [log] [blame]
library test;
class A<S, T> {
A(this.x, this.y);
A.named(this.x, this.y);
S x;
T y;
}
class B<S, T> extends A<T, S> {
B(S y, T x) : super(x, y);
B.named(S y, T x) : super.named(x, y);
}
class C<S> extends B<S, S> {
C(S a) : super(a, a);
C.named(S a) : super.named(a, a);
}
class D<S, T> extends B<T, int> {
D(T a) : super(a, 3);
D.named(T a) : super.named(a, 3);
}
class E<S, T> extends A<C<S>, T> {
E(T a) : super(throw '', a);
}
class F<S, T> extends A<S, T> {
F(S x, T y, {required List<S> a, required List<T> b}) : super(x, y);
F.named(S x, T y, [S? a, T? b]) : super(x, y);
}
main() {}
void test() {}