Compiling a certain file with errors causes a compiler crash. I will try to attach the preprocessor output I saved with --save-temps. g++ -v --save-temps -pipe -march=i686 -g -I../include tests/testvisitor.cxx -L../generated/lib g++: Warning: -pipe ignored since -save-temps specified Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs gcc version 2.96 20000731 (Red Hat Linux 7.0) /usr/lib/gcc-lib/i386-redhat-linux/2.96/cpp0 -lang-c++ -D__GNUG__=2 -v -I../include -D__GNUC__=2 -D__GNUC_MINOR__=96 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem(posix) -g -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -D__pentiumpro -D__pentiumpro__ -D__tune_pentiumpro__ tests/testvisitor.cxx testvisitor.ii GNU CPP version 2.96 20000731 (Red Hat Linux 7.0) (cpplib) (i386 Linux/ELF) ignoring nonexistent directory "/usr/local/include" ignoring nonexistent directory "/usr/i386-redhat-linux/include" #include "..." search starts here: #include <...> search starts here: ../include /usr/include/g++-3 /usr/lib/gcc-lib/i386-redhat-linux/2.96/include /usr/include End of search list. /usr/lib/gcc-lib/i386-redhat-linux/2.96/cc1plus testvisitor.ii -quiet -dumpbase testvisitor.cxx -march=i686 -g -version -o testvisitor.s GNU C++ version 2.96 20000731 (Red Hat Linux 7.0) (i386-redhat-linux) compiled by GNU C version 2.96 20000731 (Red Hat Linux 7.0). tests/testvisitor.cxx: In function `void iteratorTest (const StrChunkPtr &)': tests/testvisitor.cxx:44: variable `StrChunk::__iterator i' has initializer but incomplete type tests/testvisitor.cxx:44: invalid use of undefined type `class StrChunk::__iterator' ../include/StrMod/StrChunk.h:65: forward declaration of `class StrChunk::__iterator' tests/testvisitor.cxx:45: variable `StrChunk::__iterator end' has initializer but incomplete type tests/testvisitor.cxx:45: invalid use of undefined type `class StrChunk::__iterator' ../include/StrMod/StrChunk.h:65: forward declaration of `class StrChunk::__iterator' tests/testvisitor.cxx:48: Internal error #390. tests/testvisitor.cxx:48: Internal compiler error in arg_assoc_type, at ../gcc/cp/decl2.c:4961 Please submit a full bug report. See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions. Compilation exited abnormally with code 1 at Thu Oct 5 10:31:19
Created attachment 3964 [details] This is the preprocessor output that causes the coredump.
Fix submitted to gcc-patches, if it is accepted, it will make it into rawhide and upcoming gcc errata.
Fixed in gcc-c++-2.96-63 in rawhide.