Files
kotlin-fork/compiler/testData/diagnostics/tests/controlFlowAnalysis/delegatedPropertyEarlyAccess.fir.kt
T

33 lines
689 B
Kotlin
Vendored

// See also KT-10869: Accessing lazy properties from init causes IllegalArgumentException
import kotlin.reflect.KProperty
class CustomDelegate {
operator fun getValue(thisRef: Any?, prop: KProperty<*>): String = prop.name
}
class Kaboom() {
// Here and below we should have errors for simple AND delegated
init {
delegated.hashCode()
simple.hashCode()
withGetter.hashCode()
}
val other = delegated
val another = simple
val something = withGetter
val delegated: String by CustomDelegate()
val simple = "xyz"
val withGetter: String
get() = "abc"
// No error should be here
val after = delegated
}