GCC 3.2.2 was released today. Gabriel Dos_Reis announced the release saying:
"This release is a bug-fix release in the GCC 3.2 series. There are no new major features; however there are many bugs fixed. More detail about this release is available here.
GCC is the GNU Compiler Collection. This second bug-fix release in the 3.2 line follows the earlier GCC 3.2.1 [story] by a little over two months. Read on for the complete announcement.
From: Gabriel Dos_Reis CC: gcc-announce Subject: GCC 3.2.2 released Date: Wed, 5 Feb 2003 13:45:50 +0100 (MET) GCC 3.2.2 is now available from sites listed at these URLs: http://www.gnu.org/order/ftp.html http://gcc.gnu.org/mirrors.html This release is a bug-fix release in the GCC 3.2 series. There are no new major features; however there are many bugs fixed. More detail about this release is available here http://gcc.gnu.org/gcc-3.2/changes.html Many people contributed fixes, back-ports and testing for this release. Special thanks to Joe Buck, Joel Sherrill, Mark Mitchell, Eric Botcazou, Gerald Pfeifer, Alexandre Oliva, Franz Sirl, Benjamin Kosnik, John David Anglin. Your 3.2.2 Release Manager, -- [email blocked] -##- http://www-sop.inria.fr/galaad/ Tel: [blocked] -##- GALAAD Project Fax: [blocked] -##- INRIA Sophia Antipolis -- France
more important: kernel or compiler?
When new kernels come out, lusers on slashdot post comments about how they can't wait to compile the new kernel but for desktop users, new compiler releases are probably more important.
Oh, I can't wait to recompile my desktop with this compiler!
(oh what an exiting life)
I wonder what kernel is faster:
Linux 2.2.22 compiled with GCC 3.2.2
or
Linux 2.4.21 compiled with GCC 2.95.3
Not that it's worth geting excited about but I reckon the compiler is the more important. Just a thought.
Ciaran O'Riordan
compiler Vs kernel
Yeah, good programming is ten times as important but it's very hard to
find a good "drop-in" replacement for a bad programmer ;)
> a change in optimization strategies may mean the optimizer misses
> things it once caught
Same with the kernel, the fork() system call in linux 2.5 is a good
example. (slower than the 2.4 version but allows other areas to be
optimised better.)
Ciaran O'Riordan
Re: more important: kernel or compiler?
The 2.2 kernel doesn't support building with GCC 3.x, nor is support expected to be put in anytime soon.
Where is the tarball
GCC 3.2.2 is not available on any of the GNU mirrors that I checked. Where can I download it?
Mirror
ftp://ftp.funet.fi/pub/mirrors/sourceware.cygnus.com/pub/gcc/releases/gc...
ABI breakage
"We believe that the ABI for the C++ standard library is now stable and will not change in future versions of the compiler. However, hard experience has taught us to be cautious; it is possible that more problems will be found. It is our intention to make changes to the ABI only if they are necessary for correct compilation of C++, as opposed to conformance to the ABI documents."
Man, those poor bastards. All that promised ABI compliance that was broken time and time again, and now they're saying they won't follow through with changes for ABI compliance if they find them, unless they also fix incorrect compilation? Working on the compiler is so hard...
m.
I think the real problem is t
I think the real problem is that C++ name mangling's a bitch.
Eh?
Name-mangling is the least of their worries. Vtable layout, RTTI, exception stack-unwinding information, etc.
m.
ABI breakage
> All that promised ABI compliance that was broken time and
> time again, and now they're saying they won't follow through with
>changes for ABI compliance if they find them, unless they also fix
> incorrect compilation? Working on the compiler is so hard...
C++ just sucks bigtime. There are so many corner cases that it's almost undoable to get it all right. And you need continuous testing to make sure some dumb two-liner patch doesn't break the ABI. To make matters worse, the ABI specs don't come with an ABI test suite, so as a compiler engineer you have to come up with your own test suite, and writing test cases isn't sexy. Many GCC volunteers don't like doing things that are not sexy, so the GCC ABI just does not get enough testing...
Re: ABI testsuites
Both Intel and CodeSourcery have their own ABI testsuites, but unfortunately they can't release them.
ABI compliance checker
To avoid unexpected ABI breaks may be used tools for static comparison of old library code with a new one, such as free ABI-compliance-checker from http://ispras.linuxfoundation.org/index.php/ABI_compliance_checker
Take it easy... :)
They're just trying to avoid breaking gcc 3.2 binary compatibility. E.g. if you compile a c++ library with gcc 3.2, then upgrade your compiler to gcc 3.2.x, you wouldn't need to recompile the library.
The original idea was to make gcc 3.2 compatible with the official abi, but as they didn't have a good testsuite a few bugs slipped through. Instead of breaking the abi again for every new bug they found, they decided that sticking to the gcc 3.2 abi was the lesser of two evils. By the time they will have their new and fancy testsuite running, so that they can be sure to have found most abi bugs, they will break the gcc-3.2 abi, so that they can follow the official abi as closely as possible. This will probably happen for the gcc 3.4 release, I remember reading that gcc 3.3 would still use the gcc 3.2 abi.