99e2a14b9c
Treat changes inside non-top level property initializer as OOB It is OOB because CFG for a class depends on a property initializer, so we must rebuild CFG for the class Also, this commit makes the API more understandable ^KT-59687
36 lines
889 B
Kotlin
36 lines
889 B
Kotlin
open class A
|
|
(init: A.() -> Unit)/* NonReanalyzableNonClassDeclarationStructureElement */
|
|
{/* NonReanalyzableClassDeclarationStructureElement */
|
|
val prop: String = ""/* NonReanalyzableNonClassDeclarationStructureElement */
|
|
}
|
|
|
|
class B()/* NonReanalyzableNonClassDeclarationStructureElement */ : A()/* NonReanalyzableClassDeclarationStructureElement */
|
|
|
|
object C : A(
|
|
{
|
|
fun foo() = B.prop.toString()
|
|
}
|
|
) {/* NonReanalyzableClassDeclarationStructureElement */
|
|
|
|
}
|
|
|
|
val f = object : A(
|
|
{
|
|
fun bar() = B.prop.toString()
|
|
}
|
|
) {
|
|
|
|
}/* NonReanalyzableNonClassDeclarationStructureElement */
|
|
|
|
class D : A(
|
|
{
|
|
fun foo() = B.prop.toString()
|
|
}
|
|
) {/* NonReanalyzableClassDeclarationStructureElement */
|
|
constructor(): super(
|
|
{
|
|
fun boo() = prop.toString()
|
|
}
|
|
)/* NonReanalyzableNonClassDeclarationStructureElement */
|
|
}
|