blob: 9f18186758b4a25a81d3853c84eb6598e4bb626a [file] [log] [blame]
interface I1
interface I2
interface Lazy<T> {
operator fun getValue(a1: Any, a2: Any): T
}
fun <T> lazy(f: () -> T): Lazy<T> = throw Exception()
class A {
private inner class B {
val o1 = object : I1 {}
val o2 by lazy {
object : I1 {}
}
val o3 = object : I1, I2 {} // FIR allows this since the containing class is private
val o4 by lazy { // FIR allows this since the containing class is private
object : I1, I2 {}
}
private val privateO1 = object : I1 {}
private val privateO2 by lazy {
object : I1 {}
}
private val privateO3 = object : I1, I2 {}
private val privateO4 by lazy {
object : I1, I2 {}
}
}
}