blob: 36a6a665c47b7998f6d11601369ac33f488e1060 [file] [log] [blame]
class A<X extends A<X>?> {}
class B<X extends A<Null>?> implements A<X> {
void method1<Y extends A<Null>?>(A<Y> a, A<A<Null>>? b) {}
void method2<Y extends String>(D<Y> a, D<String>? b) {}
}
class C {
C.internal(_) {}
factory C.fact(A<A<Null>>? a) {}
factory C.redirect(A<A<Null>>? a) = C.internal;
}
class D<X extends num> {}
extension Extension1<X extends A<X>?> on A<X> {
void method1<Y extends A<Y>?>(A<Y> a, A<A<Null>>? b) {}
void method2<Y extends String>(D<Y> a, D<String>? b) {}
}
extension ext2<X extends A<Null>?> on A<X> {}
main() {}
test() {}