On Jan 16, 6:53*am, The Lord of the Strings
<lordofthestrings...@gmail.comwrote:
<...>
Quote:
I took some win32 C code that worked fine in Visual C++ 6 and tried
compiling it in Visual C++ Express 2008 and it did not compile. *I
checked all dependencies - includes, libraries - they were all there.
I noticed the copyright on VC++ 6 was 1998, so I think its time for
something new! I'd like to stick with C/C++.
The problems you have are very much related to VC++6. In versions of VC
++ including VC7.1 Microsoft decided to make the compiler as far as
possible conformant to the C++ standard at the expense of backward
compatibility. The result was a great compiler, and for example in
VC7.1 and beyond you can do things with templates that are simply
impossible in VC6.0, but things that worked in VC6 are often invalid
fro the point of view of conforming C++.
Its a known problem of C++ that simple errors can cause huge error
messages ( In the draft of the next version of the standard there are
move sto try to help with this issue), so if you are getting
voluminous error messages when trying to compile the old code, things
often look much worse that they actually are. It is often worth
looking at the last paragraph of the error message first. Also error
messages can often give misleading hints as to the true error. OTOH
what they say is a good place to start.
It will also help to get a grasp of some of the nuances of the
language as laid down in the C++ standard, so that you can identify
how to fix problems in your old code.
I would guess at the moment you are in the worst stage of porting your
old code. Persevere, watch the list of error mesages get a bit shorter
and you are well on the way.
HTH
regards
Andy Little