[Bug c++/37970] New: ICE in some (probably mal-formed) template code

2008-10-30 Thread keenan dot forbes at gmail dot com
This code (for better or worse) appeared to have built with 4.0.1. By adding
the "class" stuff in the template specialization the static member was actually
instantiated. With just <> no instantiation occurred.

g++ -v -save-temps -c tmp.cc
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v
--enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr
--enable-shared --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix --enable-nls
--program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu
--enable-libstdcxx-debug --enable-mpfr --with-tune=i686
--enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
 /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1plus -E -quiet -v -D_GNU_SOURCE tmp.cc
-mtune=i686 -fpch-preprocess -o tmp.ii
ignoring nonexistent directory "/usr/local/include/i486-linux-gnu"
ignoring nonexistent directory
"/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../i486-linux-gnu/include"
ignoring nonexistent directory "/usr/include/i486-linux-gnu"
#include "..." search starts here:
#include <...> search starts here:
 /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2
 /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/i486-linux-gnu
 /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/backward
 /usr/local/include
 /usr/lib/gcc/i486-linux-gnu/4.1.2/include
 /usr/include
End of search list.
 /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1plus -fpreprocessed tmp.ii -quiet
-dumpbase tmp.cc -mtune=i686 -auxbase tmp -version -o tmp.s
GNU C++ version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) (i486-linux-gnu)
compiled by GNU C version 4.1.2 20061115 (prerelease) (Debian
4.1.1-21).GGC heuristics: --param ggc-min-expand=81 --param
ggc-min-heapsize=96557
Compiler executable checksum: 183d42a838ed2b7313bffcb8f2f2fda7
tmp.cc: In constructor ‘ChainHashTable::ChainHashTable()
[with Key = const elfsymbol*, Value = CF::ElxrFunction*, HashFunc =
elfsymbol_hash]’:
tmp.cc:35:   instantiated from ‘MemoryManager::Link> ChainHashTable::linkmanager’
tmp.cc:35:   instantiated from ‘ChainHashTable::ChainHashTable() [with Key = const elfsymbol*, Value =
CF::ElxrFunction*, HashFunc = elfsymbol_hash]’
tmp.cc:65:   instantiated from here
tmp.cc:35: internal compiler error: in instantiate_decl, at cp/pt.c:11775
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.
For Debian GNU/Linux specific bug reporting instructions,
see .
Preprocessed source stored into /tmp/ccy7OWHQ.out file, please attach this to
your bugreport.


I don't see a way to attach the file, but perhaps that's available after I
commit...


-- 
   Summary: ICE in some (probably mal-formed) template code
   Product: gcc
   Version: 4.1.2
Status: UNCONFIRMED
  Severity: minor
  Priority: P3
 Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: keenan dot forbes at gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37970



[Bug c++/37970] ICE in some (probably mal-formed) template code

2008-10-30 Thread keenan dot forbes at gmail dot com


--- Comment #1 from keenan dot forbes at gmail dot com  2008-10-30 23:35 
---
Created an attachment (id=16591)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16591&action=view)
preprocessed file for ICE


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37970