------- Comment #1 from rguenth at gcc dot gnu dot org 2007-12-07 19:03 ------- Confirmed.
This one ICEs different: template<typename T1> class Foo {}; template<template<typename T1> class Comp = Foo> void STATIC_ASSERT() { } int main() { unsigned int b; STATIC_ASSERT<>(); } t.C: In function int main(): t.C:1: internal compiler error: in tsubst_decl, at cp/pt.c:7602 Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-4.3/README.Bugs> for instructions. and this one is a reduced one for the original ICE: template<typename T1> class Foo {}; template<typename T1, template<typename T1> class Comp = Foo> void STATIC_ASSERT(T1) { } int main() { unsigned int b; STATIC_ASSERT<>(b); } -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords| |ice-on-valid-code Last reconfirmed|0000-00-00 00:00:00 |2007-12-07 19:03:40 date| | Summary|[4.3] ICE on Usage of |ICE on Usage of default |default function template |function template argument |argument | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34383