type T = T // cycle in type alias should not cause non-termination