FIR: use Java 8 rules in not implemented checker
This commit is contained in:
Vendored
+4
-4
@@ -8,11 +8,11 @@ interface IRight {
|
||||
fun foo() {}
|
||||
}
|
||||
|
||||
class CDerived : ALeft(), IRight
|
||||
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class CDerived<!> : ALeft(), IRight
|
||||
|
||||
abstract class CAbstract : ALeft(), IRight
|
||||
|
||||
class CDerivedFromAbstract : CAbstract()
|
||||
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class CDerivedFromAbstract<!> : CAbstract()
|
||||
|
||||
interface ILeft {
|
||||
fun foo()
|
||||
@@ -21,10 +21,10 @@ interface ILeft {
|
||||
abstract class AILeft : ILeft
|
||||
|
||||
// Should be ERROR
|
||||
class AILeftImpl : AILeft(), IRight
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class AILeftImpl<!> : AILeft(), IRight
|
||||
|
||||
// Should be ERROR
|
||||
class RightLeft : ILeft, IRight
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class RightLeft<!> : ILeft, IRight
|
||||
|
||||
interface IBase {
|
||||
fun foo()
|
||||
|
||||
Vendored
+4
-4
@@ -8,11 +8,11 @@ interface IRight {
|
||||
fun foo() {}
|
||||
}
|
||||
|
||||
class CDerived : ALeft(), IRight
|
||||
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class CDerived<!> : ALeft(), IRight
|
||||
|
||||
abstract class CAbstract : ALeft(), IRight
|
||||
|
||||
class CDerivedFromAbstract : CAbstract()
|
||||
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class CDerivedFromAbstract<!> : CAbstract()
|
||||
|
||||
interface ILeft {
|
||||
fun foo()
|
||||
@@ -21,10 +21,10 @@ interface ILeft {
|
||||
abstract class AILeft : ILeft
|
||||
|
||||
// Should be ERROR
|
||||
class AILeftImpl : AILeft(), IRight
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class AILeftImpl<!> : AILeft(), IRight
|
||||
|
||||
// Should be ERROR
|
||||
class RightLeft : ILeft, IRight
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class RightLeft<!> : ILeft, IRight
|
||||
|
||||
interface IBase {
|
||||
fun foo()
|
||||
|
||||
+1
-1
@@ -8,6 +8,6 @@ interface IRight {
|
||||
|
||||
interface IDerived : ILeft, IRight
|
||||
|
||||
class CDerived : ILeft, IRight
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class CDerived<!> : ILeft, IRight
|
||||
|
||||
abstract class ADerived : ILeft, IRight
|
||||
@@ -8,11 +8,11 @@ interface B {
|
||||
|
||||
open class D: B
|
||||
|
||||
open class C: D(), A
|
||||
open <!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class C<!>: D(), A
|
||||
|
||||
// ------------
|
||||
|
||||
class Test: Impl(), CProvider
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class Test<!>: Impl(), CProvider
|
||||
|
||||
open class CC
|
||||
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
interface A {
|
||||
fun foo() {}
|
||||
}
|
||||
|
||||
interface B : A {
|
||||
abstract override fun foo()
|
||||
}
|
||||
|
||||
interface C : A {
|
||||
abstract override fun foo()
|
||||
}
|
||||
|
||||
interface D : A {
|
||||
override fun foo() = super.foo()
|
||||
}
|
||||
|
||||
// Fake override Z#foo should be open
|
||||
class Z : B, C, D
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
interface A {
|
||||
fun foo() {}
|
||||
}
|
||||
|
||||
Vendored
-13
@@ -1,13 +0,0 @@
|
||||
// FILE: JavaInterface.java
|
||||
|
||||
interface JavaInterface {
|
||||
void foo(int javaName);
|
||||
}
|
||||
|
||||
// FILE: kotlin.kt
|
||||
|
||||
interface KotlinTrait {
|
||||
public fun foo(someOtherName: Int) {}
|
||||
}
|
||||
|
||||
class BothTraitsSubclass : JavaInterface, KotlinTrait
|
||||
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// FILE: JavaInterface.java
|
||||
|
||||
interface JavaInterface {
|
||||
|
||||
Vendored
+1
-1
@@ -25,7 +25,7 @@ class D : B, A {
|
||||
}
|
||||
}
|
||||
|
||||
class E: B, A {
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class E<!>: B, A {
|
||||
fun foo() {
|
||||
super<B>.test()
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -24,7 +24,7 @@ class D : B, A {
|
||||
}
|
||||
}
|
||||
|
||||
class E: B, A {
|
||||
<!MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED!>class E<!>: B, A {
|
||||
fun foo() {
|
||||
super<A>.test()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user