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: Convergence of GCC - slightly off topic


yabadabadoo123@hotmail.com (yabada badoo) writes:

> Not wanting to start any flames, but I was
> wondering what is the experts take on the
> likelyhood of convergence of the various
> versions of gcc in the varous linux distributions,
> now that 3.2 is getting consistent positive appraise.

I expect that almost all of the GNU/Linux distributions will shortly
(for various definitions of "shortly") be going to a 3.2-compatible
compiler.  I say "compatible" because I expect that each distributor
will probably apply one or more patches to address local problems; in
many cases, those patches are obtained direct from GCC's CVS tree,
or are sitting in gcc-patches waiting for approval, so any forks are
only a temporary matter.

> I was hoping to get feedback from seasoned (battered
> battle faces :-) c and c++ folks that are more seasoned in dealing with 
> sitiations that might expose some of the more thornier aspects of 3.2 with 
> respect to the other (older) gcc versions shipped with various linux 
> distros.

The chief gotcha is that if you have code that has never been compiled by
any compiler other than g++ 2.x or egcs, it probably makes assumptions
that aren't valid C++, such as that the standard classes are in the global
namespace rather than the std:: namespace, or uses interfaces in libstdc++
that diverged from the standard and have since been removed.  This means
that you may need to fix your code.  If you have code that already
compiles with more than one C++ compiler you'll have far less trouble.

Because of the more complete standard C++ headers and because performance
tuning isn't complete, 3.2.x (the compiler itself) runs more slowly than
2.95.  The effect is most noticeable for small programs that include
standard headers like <iostream>: you may have just written "Hello, world"
but the compiler has to process tens of thousands of lines of headers.

3.2.1 has a number of bugfixes, many that were found by the people at the
various distros as they tried to build complete distributions with 3.2.
It is planned for Oct 15 release, but that's only a target; don't be
surprised if it is a few days off from that.

> What about gcc on other OS that linux?

There have been more problems on OSes whose object file formats don't
support weak symbols, such as AIX.  The situation there is improving
compared to early 3.x releases.  3.2.1 has a number of powerpc-specific
bugfixes.



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