>Submitter-Id: net >Originator: Jeremy H. Brown >Organization: >Confidential: no >Synopsis: template with type and function templated on type causes >segfault. >Severity: serious >Priority: low >Category: c++ >Class: ice-on-illegal-code >Release: 3.3.2 (Debian) (Debian testing/unstable) >Environment: System: Linux razorfish 2.4.22-1-686 #6 Sat Oct 4 14:09:08 EST 2003 i686 GNU/Linux Architecture: i686
host: i486-pc-linux-gnu build: i486-pc-linux-gnu target: i486-pc-linux-gnu configured with: ../src/configure -v --enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-debug --enable-java-gc=boehm --enable-java-awt=xlib --enable-objc-gc i486-linux >Description: g++ segfaults on a templated class where the template is of a particular form (see below) >How-To-Repeat: Try to compile these three lines with g++ foo.cc -c ------------------------------------------------------------ template <class T, void *X<T>() > class Bar { }; ------------------------------------------------------------ You will see foo.cc:3: 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. >Fix: "Don't write broken code." Still, core-dumping isn't a very helpful diagnostic.