47 lines
1.5 KiB
Plaintext
Vendored
47 lines
1.5 KiB
Plaintext
Vendored
== foo ==
|
|
fun foo() {
|
|
class B {
|
|
val a: Int
|
|
get() {
|
|
val b: Int
|
|
return b
|
|
}
|
|
}
|
|
}
|
|
---------------------
|
|
L0:
|
|
1 <START>
|
|
2 mark({ class B { val a: Int get() { val b: Int return b } } })
|
|
jmp?(L2) NEXT:[<END>, v(val a: Int get() { val b: Int return b })]
|
|
v(val a: Int get() { val b: Int return b })
|
|
jmp?(L3) NEXT:[<END>, d(get() { val b: Int return b })]
|
|
d(get() { val b: Int return b }) NEXT:[<SINK>]
|
|
L1:
|
|
L2 [after local class]:
|
|
L3 [after local declaration]:
|
|
1 <END> NEXT:[<SINK>] PREV:[jmp?(L2), jmp?(L3)]
|
|
error:
|
|
<ERROR> PREV:[]
|
|
sink:
|
|
<SINK> PREV:[<ERROR>, <END>, d(get() { val b: Int return b })]
|
|
=====================
|
|
== get_a ==
|
|
get() {
|
|
val b: Int
|
|
return b
|
|
}
|
|
---------------------
|
|
L4:
|
|
3 <START>
|
|
4 mark({ val b: Int return b })
|
|
v(val b: Int)
|
|
r(b) -> <v0>
|
|
ret(*|<v0>) L5
|
|
L5:
|
|
3 <END> NEXT:[<SINK>]
|
|
error:
|
|
<ERROR> PREV:[]
|
|
sink:
|
|
<SINK> PREV:[<ERROR>, <END>]
|
|
=====================
|