FIR: report ABSTRACT_*_NOT_IMPLEMENTED on appropriate intersections

This commit is contained in:
Mikhail Glukhikh
2021-04-06 00:07:18 +03:00
parent 0fa2821ac1
commit 818c54e3a6
26 changed files with 30 additions and 107 deletions
@@ -6,8 +6,8 @@ public interface MyList<E> extends java.util.List<E>, I {}
fun <R> elemAndList(r: R, t: MutableList<R>): R = TODO()
interface I
class A : Comparable<A>, I
class B : Comparable<B>, I
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class A<!> : Comparable<A>, I
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class B<!> : Comparable<B>, I
fun test() {
elemAndList(A(), list(B()))
@@ -3,7 +3,7 @@ interface Message<M : Message<M>> {
fun <T> ext(e: Ext<M, T>): T
}
class MyMessage : Message<MyMessage>
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class MyMessage<!> : Message<MyMessage>
class MyExt : Ext<MyMessage, String>
fun <M : Message<M>, T> Message<M>.extF(e: Ext<M, T>): T = ext(e)