This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC 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: Upgrade now ?


Dag Nygren wrote:

Hi,

Have been running gcc 2.95.3 for ages here and it seems to
work OK.
Now I would like some advice on a possible upgrade.

1. What are the benefits ?
2. Is 3.2 good/stable enough
3. Any drawbacks ?
4. Will my previusely compiled libraries work ?

BRGDS

It depends on what you want ? C, C++, Java .... Linux, solaris, cygwin ... ?

For C++ I find that the 3.2 compiler is better than VC++ in correctness and support but since we have VC++ (6.0) as a limitation we're stuck with what works for both. ( So far only one nasty kludge, which is we have a macro named __gcc_typename that expands to 'typename' for gcc and the empty string for VC++ - and only in 2 places. ) The gcc2xx C++ compiler just isn't there. I'm still keeping away from namespaces until gdb supports them. It has become much better but I still get crashes in gdb when trying to examine classes derived from pure abstract base classes - which limits the ability to 'print this'.
The gcc 3.0x compiler for solaris had issues, I never reported them because it was not trivial to track down but it looked like code gen errors - and then I wasn't sure becuase the debugger was not allways telling the truth. The breakthrough came with gcc 3.1.1 for our solaris build where either I was able to get enough of a build to work or the code gen errors were fixed.

3.2 is a slower compiler (imho) and when we're doing optimized builds it can take a while the 2.xx compilers I seem to recollect as being much faster. The project is not so big as this makes too much of a difference.

so:
1. C++ has big benefits in compliance.
2. 3.2 is stable enough
3. gdb sucks
4. Not in C++ they won't and why do you care so much.

G




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