Files
kotlin-fork/compiler/testData/codegen/box/javaFieldAndKotlinProperty/javaProtectedFieldAndKotlinInvisiblePropertyWrite.kt
T
Alexander Udalov 4ad594a3cd Minor, move tests about Java field and Kotlin property
Because the `fieldRename` directory was originally about cases when
private fields are renamed because of clashes.
2023-02-23 12:54:00 +01:00

38 lines
629 B
Kotlin
Vendored

// TARGET_BACKEND: JVM_IR
// IGNORE_BACKEND_K1: JVM_IR
// IGNORE_BACKEND_K2: JVM_IR
// tried to access field derived.Intermediate.a from class derived.Derived
// Field VS property: case "reference", protected field, invisible property
// FILE: BaseJava.java
package base;
public class BaseJava {
protected String a = "";
}
// FILE: Derived.kt
package derived
import base.BaseJava
open class Intermediate : BaseJava() {
private val a = "FAIL"
}
class Derived : Intermediate() {
fun foo() = a
fun bar() {
a = "OK"
}
}
fun box(): String {
val d = Derived()
d.bar()
return d.foo()
}