== f == fun f() { class LocalClass() { fun f() { val x = "" fun loc() { val x3 = "" } } } } --------------------- L0: 1 2 mark({ class LocalClass() { fun f() { val x = "" fun loc() { val x3 = "" } } } }) jmp?(L2) NEXT:[, jmp?(L3)] jmp?(L3) NEXT:[, d(fun f() { val x = "" fun loc() { val x3 = "" } })] d(fun f() { val x = "" fun loc() { val x3 = "" } }) NEXT:[] L1: L2 [after local class]: L3 [after local declaration]: 1 NEXT:[] PREV:[jmp?(L2), jmp?(L3)] error: PREV:[] sink: PREV:[, , d(fun f() { val x = "" fun loc() { val x3 = "" } })] ===================== == f == fun f() { val x = "" fun loc() { val x3 = "" } } --------------------- L4: 3 4 mark({ val x = "" fun loc() { val x3 = "" } }) v(val x = "") mark("") r("") -> w(x|) jmp?(L6) NEXT:[, d(fun loc() { val x3 = "" })] d(fun loc() { val x3 = "" }) NEXT:[] L5: L6 [after local declaration]: 3 NEXT:[] PREV:[jmp?(L6)] error: PREV:[] sink: PREV:[, , d(fun loc() { val x3 = "" })] ===================== == loc == fun loc() { val x3 = "" } --------------------- L7: 5 6 mark({ val x3 = "" }) v(val x3 = "") mark("") r("") -> w(x3|) L8: 5 NEXT:[] error: PREV:[] sink: PREV:[, ] =====================