== main == fun main() { while(1 > 0) { 2 } } --------------------- l0: NEXT:[r(1)] PREV:[] l2: l5: r(1) NEXT:[r(0)] PREV:[, jmp(l2)] r(0) NEXT:[r(>)] PREV:[r(1)] r(>) NEXT:[r(1 > 0)] PREV:[r(0)] r(1 > 0) NEXT:[jf(l3)] PREV:[r(>)] jf(l3) NEXT:[read (Unit), r(2)] PREV:[r(1 > 0)] l4: r(2) NEXT:[jmp(l2)] PREV:[jf(l3)] jmp(l2) NEXT:[r(1)] PREV:[r(2)] l3: read (Unit) NEXT:[] PREV:[jf(l3)] l1: NEXT:[] PREV:[read (Unit)] error: NEXT:[] PREV:[] sink: NEXT:[] PREV:[] ===================== == dowhile == fun dowhile() { do {return} while(1 > 0) } --------------------- l0: NEXT:[ret l1] PREV:[] l2: l4: ret l1 NEXT:[] PREV:[] l5: * r(1) NEXT:[r(0)] PREV:[] * r(0) NEXT:[r(>)] PREV:[] * r(>) NEXT:[r(1 > 0)] PREV:[] * r(1 > 0) NEXT:[jt(l2)] PREV:[] * jt(l2) NEXT:[read (Unit), ret l1] PREV:[] l3: * read (Unit) NEXT:[] PREV:[] l1: NEXT:[] PREV:[ret l1] error: NEXT:[] PREV:[] sink: NEXT:[] PREV:[] =====================