some C++ code in a project of mine triggers an ICE in various g++ versions:
$ g++-4.1 -g -Wall -Wdeprecated -Wno-cast-qual -pipe -O2 -ftracer finline-functions -fno-keep-static-consts -fPIC -DPIC -c xice-uma.cc xice-uma.cc:71: internal compiler error: in splice_child_die, at dwarf2out.c:5503 Please submit a full bug report,... $ g++-4.1 --version g++-4.1 (GCC) 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5) $ uname -a Linux cruncher 2.6.17-10-generic #2 SMP Tue Dec 5 22:28:26 UTC 2006 i686 GNU/Linux $ g++-4.0 xice-uma.cc xice-uma.cc: In member function ‘const AutoLocker::Locker* AutoLocker::locker() const’: xice-uma.cc:97: internal compiler error: Segmentation fault $ g++-3.4 xice-uma.cc xice-uma.cc: In member function `const AutoLocker::Locker* AutoLocker::locker() const': xice-uma.cc:97: internal compiler error: Segmentation fault $ g++-3.3 xice-uma.cc xice-uma.cc: In member function `const AutoLocker::Locker* AutoLocker::locker() const': xice-uma.cc:97: internal compiler error: Segmentation fault i managed to shrink this down to a may_alias attribute on a union, source code follows as xice-uma.cc. -- Summary: ICE in splice_child_die, at dwarf2out.c:5503 Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: timj at gtk dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30894