質問です。
VC6.0時代は
for(int i = 0; i < 10; ++i)
{
//いろいろ
}
printf("%d", i);

とすることができましたが、VC9.0ではprintfのところではすでにiが無効になってしまいますよね。
これって、C/C++が昔からこだわっていた「互換性を保つ」に反している気がするのですが、どうなのでしょうか?

VC6.0時代の解釈がC++の言語仕様上間違っていたので、直したとかなんでしょうか?