This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/32839] New: internal compiler error: Segmentation fault (templates)
- From: "danny dot boelens at artwork-systems dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 20 Jul 2007 12:40:27 -0000
- Subject: [Bug c++/32839] New: internal compiler error: Segmentation fault (templates)
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Yesterday, one of my collegues ran into an internal compiler error when playing
with some template code.
Although she ran into the ICE on Mac OS X with an Apple gcc 4.01 build, it was
easy enough to reproduce it on a linux box with a GNU gcc build. I'm logging
this against 4.2.1, but it seems every 4.x version segfaults; I tested with
4.02, 4.1-20060113 (yep, some old build laying around), 4.2.1 and even with the
latest 4.3-20070713.
I created a small test case (see attachment) and this is the output I get with
4.2.1:
dannyb@linux:~/bugs/ice> ~/opt/gcc-4.2.1/bin/g++ -v -o test test.cpp
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.2.1/configure --prefix=/home/dannyb/opt/gcc-4.2.1
--enable-languages=c,c++
Thread model: posix
gcc version 4.2.1
/home/dannyb/opt/gcc-4.2.1/libexec/gcc/i686-pc-linux-gnu/4.2.1/cc1plus -quiet
-v -D_GNU_SOURCE test.cpp -quiet -dumpbase test.cpp -mtune=generic -auxbase
test -version -o /tmp/ccyPKN6k.s
ignoring nonexistent directory
"/home/dannyb/opt/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/../../../../i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/home/dannyb/opt/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/../../../../include/c++/4.2.1
/home/dannyb/opt/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/../../../../include/c++/4.2.1/i686-pc-linux-gnu
/home/dannyb/opt/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/../../../../include/c++/4.2.1/backward
/usr/local/include
/home/dannyb/opt/gcc-4.2.1/include
/home/dannyb/opt/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/include
/usr/include
End of search list.
GNU C++ version 4.2.1 (i686-pc-linux-gnu)
compiled by GNU C version 4.2.1.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: cfede80d80c2b8e19355e4026d77f0b9
test.cpp: In member function ?void ScopeImpl<F>::Execute() [with F = void
(*)(int)]?:
test.cpp:31: instantiated from ?static void ScopeImplBase::SafeExecute(J&)
[with J = ScopeImpl<void (*)(int)>]?
test.cpp:50: instantiated from ?ScopeImpl<F>::~ScopeImpl() [with F = void
(*)(int)]?
test.cpp:46: instantiated from ?static void ScopeImpl<F>::MakeGuard(F) [with
F = void (*)(int)]?
test.cpp:68: instantiated from ?void DoAtExit(F) [with F = void (*)(int)]?
test.cpp:74: instantiated from here
test.cpp:54: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
--
Summary: internal compiler error: Segmentation fault (templates)
Product: gcc
Version: 4.2.1
Status: UNCONFIRMED
Severity: major
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: danny dot boelens at artwork-systems dot com
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32839