Einen klaren Vorteil sehe ich bei den Schleifenvariablen - da sollte der Compiler nicht mit spielen, wenn man diese außerhalb der Schleife weiter nutzt, die aktuelle Warnung wird dann doch viel zu oft übersehen.
Immerhin kannst du ja einstellen, daß hier anstatt einer Warnung ein Fehler gemeldet wird. Damit ließe sich solcher Code nicht compilieren.