== bar == fun bar(n: Int) { } --------------------- : Int NEW: magic[FAKE_INITIALIZER](n: Int) -> ===================== == foo == fun foo() { var a = 1 bar(a++) bar(a--) bar(++a) bar(--a) } --------------------- 1 : Int NEW: r(1) -> a : Int NEW: r(a) -> a++ : Int COPY bar(a++) : * NEW: call(bar(a++), bar|) -> a : Int NEW: r(a) -> a-- : Int COPY bar(a--) : * NEW: call(bar(a--), bar|) -> a : Int NEW: r(a) -> ++a : Int NEW: call(++a, inc|) -> bar(++a) : * NEW: call(bar(++a), bar|) -> a : Int NEW: r(a) -> --a : Int NEW: call(--a, dec|) -> bar(--a) : * NEW: call(bar(--a), bar|) -> { var a = 1 bar(a++) bar(a--) bar(++a) bar(--a) } : * COPY =====================