[Bug c++/12403] New: ICE on member function template specialization
stefaandr at hotmail dot com
gcc-bugzilla@gcc.gnu.org
Thu Sep 25 16:26:00 GMT 2003
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12403
Summary: ICE on member function template specialization
Product: gcc
Version: 3.4
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: stefaandr at hotmail dot com
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
compiling this code (extracted from bug report 1908):
struct foo {
template<typename T> void bar (T &t) {};
template<> void bar<double>(double &t) {};
}
I get an internal compiler error (suppose it's valid code, but I'm not sure).
Reading specs from /esat/firenze/install/lib/gcc/i686-pc-linux-gnu/3.4/specs
Configured with: ../../src/gcc/3.4/configure --prefix=/esat/firenze/install
--program-suffix=-3.4 --enable-languages=c,c++ : (reconfigured)
Thread model: posix
gcc version 3.4 20030925 (experimental)
/esat/firenze/install/libexec/gcc/i686-pc-linux-gnu/3.4/cc1plus -quiet -v
-D_GNU_SOURCE test102.cpp -quiet -dumpbase test102.cpp -mtune=pentiumpro
-auxbase test102 -version -o /tmp/ccrvcurt.s
ignoring nonexistent directory "/esat/firenze/install/lib/gcc/i686-pc-linux-gnu/3.4/../../../../
i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/esat/firenze/install/lib/gcc/i686-pc-linux-gnu/3.4/../../../../include/c++/3.4
/esat/firenze/install/lib/gcc/i686-pc-linux-gnu/3.4/../../../../include/c++/3.4/
i686-pc-linux-gnu
/esat/firenze/install/lib/gcc/i686-pc-linux-gnu/3.4/../../../../include/c++/3.4/backward
/usr/local/include
/esat/firenze/install/include
/esat/firenze/install/lib/gcc/i686-pc-linux-gnu/3.4/include
/usr/include
End of search list.
GNU C++ version 3.4 20030925 (experimental) (i686-pc-linux-gnu)
compiled by GNU C version 3.3.1.
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
test102.cpp:3: error: invalid explicit specialization
test102.cpp:3: error: template-id `bar<double>' in declaration of primary template
test102.cpp:3: internal compiler error: tree check: accessed elt 1 of tree_vec with 0
elts in push_template_decl_real, at cp/pt.c:2806
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
More information about the Gcc-bugs
mailing list