blob: e23af818602c61795213ed95a8cc626310bacaaa [file]
// ISSUE: KT-52223
// IGNORE_BACKEND: JVM, NATIVE
// ^EagerInitialization is not supported on JVM, Native has different behaviour
// IGNORE_KLIB_RUNTIME_ERRORS_WITH_CUSTOM_SECOND_STAGE: JS:2.4
// KT-52223: Fixed in 2.5.20-Beta1
// PROPERTY_LAZY_INITIALIZATION
// FILE: lib.kt
var initialized = false
// FILE: lib2.kt
@OptIn(kotlin.ExperimentalStdlibApi::class)
@EagerInitialization
val eagerLambda = { }
val lazyProperty = run { initialized = true }
// FILE: main.kt
fun box(): String {
eagerLambda()
if (initialized) return "fail: eagerLambda() initialized lazyProperty of its own file"
lazyProperty
if (!initialized) return "fail: lazyProperty was never initialized"
return "OK"
}