Originally posted by XSquared
The error message was because <iostream.h> is an old header file, which is only there so you can compile old programs. You should always use <iostream>, which wraps all of the functions from <iostream.h> in the std namespace.

So, in fact, there is nothing wrong with your compiler, it was just adhering to the standards.
As an interesting aside, Visual Studio .NET 2003, which I just installed, doesn't even SUPPLY iostream.h anymore, nor any of the deprecated C++ libraries.

And ashesh, your compiler isn't broken, the code was. Since the newest C++ standard in 1998, <iostream.h> has been superceded, and the compiler was informing you that you should use the new (and correct) headers.