Files
kotlin-fork/compiler/testData/codegen/box/javaFieldAndKotlinProperty/javaFieldAndKotlinLateinitProperty.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

25 lines
527 B
Kotlin
Vendored

// TARGET_BACKEND: JVM_IR
// Field VS property: case "lateinit"
// FILE: BaseJava.java
public class BaseJava {
public String a = "FAIL";
public String fieldValue() {
return a;
}
}
// FILE: Derived.kt
class Derived : BaseJava() {
lateinit var a: String
}
fun box(): String {
val d = Derived()
d.a = "OK"
if ((d as BaseJava).a == "OK") return "FAIL (accidental shadowed field access #1)"
if (d.fieldValue() == "OK") return "FAIL (accidental shadowed field access #2)"
return d.a
}