FIR: report MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED also on interfaces

This commit is contained in:
Mikhail Glukhikh
2021-04-28 09:58:54 +03:00
committed by TeamCityServer
parent 3fc2cc410c
commit 67d1c35f19
9 changed files with 17 additions and 29 deletions
@@ -8,7 +8,7 @@ interface B {
abstract var bar: Unit
}
interface C : A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface C<!> : A, B
abstract class D(sealed var x: Int) {
abstract var y: Unit
@@ -34,7 +34,7 @@ abstract class Test1 : IStr by CStr(), IInt
abstract class Test2 : IStr, IInt by CInt()
abstract class Test3 : IStr by CStr(), IInt by CInt()
abstract <!MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>class Test3<!> : IStr by CStr(), IInt by CInt()
abstract class Test4 : IStr by CStr(), IGeneric<String>
@@ -49,9 +49,9 @@ abstract class Test8 : IGeneric<String> by CGeneric<String>(), IInt
// Can't test right now due to https://youtrack.jetbrains.com/issue/KT-10258
// abstract class Test9 : IGeneric<String> by CGeneric<String>(), IGeneric<Int>
abstract class Test10 : IInt by CInt(), IStr by CStr(), IAny by CAny()
abstract <!MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>class Test10<!> : IInt by CInt(), IStr by CStr(), IAny by CAny()
abstract class Test11 : IInt, IStr by CStr(), IAny by CAny()
abstract <!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>class Test11<!> : IInt, IStr by CStr(), IAny by CAny()
abstract class Test12 : IInt, IStr, IAny by CAny()
@@ -36,7 +36,7 @@ abstract class Test1 : IStr by CStr(), IInt
abstract class Test2 : IStr, IInt by CInt()
abstract class Test3 : IStr by CStr(), IInt by CInt()
abstract <!MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>class Test3<!> : IStr by CStr(), IInt by CInt()
abstract class Test4 : IStr by CStr(), IGeneric<String>
@@ -51,9 +51,9 @@ abstract class Test8 : IGeneric<String> by CGeneric<String>(), IInt
// Can't test due to https://youtrack.jetbrains.com/issue/KT-10258
// abstract class Test9 : IGeneric<String> by CGeneric<String>(), IGeneric<Int>
abstract class Test10 : IInt by CInt(), IStr by CStr(), IAny by CAny()
abstract <!MANY_IMPL_MEMBER_NOT_IMPLEMENTED!>class Test10<!> : IInt by CInt(), IStr by CStr(), IAny by CAny()
abstract class Test11 : IInt, IStr by CStr(), IAny by CAny()
abstract <!DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE!>class Test11<!> : IInt, IStr by CStr(), IAny by CAny()
abstract class Test12 : IInt, IStr, IAny by CAny()
@@ -1,13 +0,0 @@
interface ILeft {
fun foo() {}
}
interface IRight {
fun foo()
}
interface IDerived : ILeft, IRight
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class CDerived<!> : ILeft, IRight
abstract class ADerived : ILeft, IRight
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
interface ILeft {
fun foo() {}
}
@@ -10,9 +10,9 @@ interface B{
}
}
interface AB: A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface AB<!>: A, B
interface BA: B, A
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface BA<!>: B, A
interface C : A, B {
@@ -9,9 +9,9 @@ interface B{
}
}
interface AB: A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface AB<!>: A, B
interface BA: B, A
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface BA<!>: B, A
class C : A, B {
override fun test() {
@@ -9,8 +9,8 @@ interface A {
interface B{
fun test()
}
interface AB : A, B
interface BA : B, A
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface AB<!> : A, B
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>interface BA<!> : B, A
class C : A, B {
override fun test() {