Fix resolution of inherited Kotlin properties in Java classes

#KT-6720 Fixed
This commit is contained in:
Alexander Udalov
2015-02-03 22:21:03 +03:00
parent 5170ab3588
commit cafc1ea24d
7 changed files with 67 additions and 6 deletions
@@ -0,0 +1,18 @@
// FILE: AC.kt
trait A {
val a: Int
}
// FILE: B.java
public abstract class B implements A {
}
// FILE: C.kt
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class C<!> : B()
fun main() {
C().a
}
@@ -0,0 +1,26 @@
package
internal fun main(): kotlin.Unit
internal trait A {
internal abstract val a: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public abstract class B : A {
public constructor B()
internal abstract override /*1*/ /*fake_override*/ val a: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
internal final class C : B {
public constructor C()
internal abstract override /*1*/ /*fake_override*/ val a: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}