Well, the assumption you have typically been making, when your unsigned loop counter is causing problems because it is larger than expected, is that the counter will exhibit a particular behavior when it over- or underflows. IIRC, this is unspecified in the standard and you can&#x27;t write portable code making such assumptions.<p>I can see how the type changing to a smaller one might cause problems, but I don&#x27;t see how IshKebab&#x27;s example could happen without exploiting implementation specific overflow behavior.