------- Additional Comments From dje at gcc dot gnu dot org 2005-01-11 20:29 ------- Jeff,
The problem does not have to be the source code or the compiler, it can be the way that you are invoking the compiler. I do not understand why you are invoking the compiler with -M -fpreprocessed -- you say that with those options it works, but it obviously does not work. I infer that you mean it works because you no longer receive error messages, but that change in behavior is a byproduct of the option not because those options are necessary or correct. You are skipping the compiler processing that produces the error messages *and* skipping the compiler processing that produces an object file. David Those additional options are wrong. You need to figure out how to address the error messages. If the application source code is standard C++, it should compile with both VC++ and with G++, modulo problems with conformance to standards. As best I can figure out from the discussion thread, VC++ is being "friendly" and implicitly inserting some header files that should be referenced explicitly. This is a difference in behavior between the two compilers, not a bug in either one. However, you need to adapt your source code and your build machinery to the behavior of each compiler. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19281