This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: g++ 3.4.1

At 10:17 AM 11/16/2004, Mikael Åsberg wrote:

"Martin Magnusson" wrote:
I just tried upgrading from g++ 3.3.1 (which currently gives me an
"internal compiler error" on my code) to the 3.4.1 version available from
the Cygwin setup. After doing so, however, I get a flood of error messages
about the many templates I have (such as "template-id xxx for yyy does not
match any template declaration" and several other).

Should I start to adapt my code to gcc 3.4.1, or would it be safer to wait
until it is available as default from the setup? Is it likely that the
error messages I get is due to the Cygwin port, or would it be g++ itself?

/ martin

g++ version 3.4.x is alot less forgiving (read: more compliant) than earlier versions of g++ (GCC) were regarding standard C++. This is a good thing. I haven't used the test version you mention but I've been compiling my own versions of GCC under Cygwin for some time and right now I am using the latest version (3.4.3). I haven't had any problems other than not being able to use -mno-cygwin anymore but I can live with that. So, you probably have problems with your C++ code, i.e. it's not standard- compliant but GCC used to accept it. Crank up the warning levels and turn off compiler extensions and start fixing the code.

ICE is probably the fault of the compiler, regardless of any possible shortcomings of your source code. Other than that, I have no disagreement with Mikael. If you "fix the code" and still provoke problems, there is some advantage in submitting bug reports against a version which is currently actively maintained.

Tim Prince

-- Unsubscribe info: Problem reports: Documentation: FAQ:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]