Restricted Types and Infinite Loops