GCC 3.1 Released
gergnz writes "Just popped into my inbox, GCC 3.1 released. There are many bug fixes over 3.0. "we focused more on quality than new features" Mark Michell. Here are the changes, and you can see a list of ftp servers here. This is the release I have been waiting for. I will now upgrade :-) Well Done to all involved!"
Windows was at that level 8 years ago! Even VC++ is up to 7.0 now. Sheesh! Faster development with fewer bugs, my ass.
Seriously, though. Hopefully this takes care of all those niggling bugs that made 3.0 unusable. Maybe this will encourage everyone to jump from the 2.x tree finally.
I have been pwned because my
Here's a short run-down of the improvements that really caught my eye this time around.
Everyone knows I'm no fan of the GNU project, but GCC3.1 shows that they have a lot going for them. Very exciting guys, I can't wait to see what 3.2 has in store.
--Dan
[Well, I won't dwell on my rejected submission for this.]
But my attempt to build gcc 3.1 on sparc-sun-solaris2.8 gave me this problem:
../../gcc-3.1/gcc/p rint-rtl.c -o print-rtl.o
../../gcc-3.1/gcc/print-rtl.c:30:
../../gcc-3.1/gcc/tree.h:3183: stray '\273' in program
../../gcc-3.1/gcc/tree.h:3183: stray '\224' in program
../../gcc-3.1/gcc/tree.h:3183: stray '\315' in program
../../gcc-3.1/gcc/tree.h:3183: stray '\352' in program
../../gcc-3.1/gcc/tree.h:3183: stray '\274' in program
../../gcc-3.1/gcc/tree.h:3183: parse error before '&' token
../../gcc-3.1/gcc/tree.h:3183: stray '\246' in program
../../gcc-3.1/gcc/tree.h:3183: stray '\21' in program
.
.
.
echo timestamp > s-check
stage1/xgcc -Bstage1/
-B/usr/local/sparc-sun-solaris2.8/bin/ -c
-DIN_GCC -g -O2 -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic
-Wno-long-long -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -I. -I../../gcc-3.1/gcc
-I../../gcc-3.1/gcc/. -I../../gcc-3.1/gcc/config
-I../../gcc-3.1/gcc/../include
In file included from
[This went on for some while.]
Any ideas?
"Provided by the management for your protection."
Nope, the only compilers which are close to having export are the EDG-based ones. Comeau might be on sale in release (rather than beta) form this month. No released compiler has export just yet, but some are real close now. (http://www.edg.com/ or http://www.comeaucomputing.com/ for some more details if you care.)
ODR is One Definition Rule. It's the clause of the ISO C++ Standard (that's where you'd go to look for it) that says that an entity used in a program must be defined exactly once.
Some of the KDE libs apparently were trying to define things more than once, and have the linker merge them. Which falls outside the realm of C++, and is actually done for some behind-the-scenes things, but not normally, and not by default.
Anyhow, there was a long thread on the gcc list, where the remaining multiple inheritence issues were dealt with, and the ODR problems explained to the good KDE folks. So all should be well there.
Slow startup times remain; that's a different problem.
You cannot apply a technological solution to a sociological problem. (Edwards' Law)