class A {} | |
class B extends A {} | |
class C { | |
A? f4() {} | |
void f1(A x) {} | |
void f2([A? x]) {} | |
void f3({A? x}) {} | |
} | |
class D extends C { | |
B? f4() {} | |
void f1(Object x) {} | |
void f2([Object? x]) {} | |
void f3({Object? x}) {} | |
} | |
class E extends C { | |
Object? f4() {} | |
void f1(B x) {} | |
void f2([B? x]) {} | |
void f3({B? x}) {} | |
} | |
main() {} |