infinite-loop prevention no longer introduces new statements - fix #116, fix #150