http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46420
Summary: [C++0X][4.6 regression] ICE: in tsubst_copy, at cp/pt.c:11677 Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: marc.gli...@normalesup.org template<typename> class vector { }; struct A{}; template <class T1> void complete_test(vector<T1> data1){ A drop=A(); } int main(){ vector<double> vect1; complete_test(vect1); } Fine with -std=c++98 but not with -std=c++0x: bug.cpp: In function ‘void complete_test(vector<T1>) [with T1 = double]’: bug.cpp:9:22: instantiated from here bug.cpp:5:11: internal compiler error: in tsubst_copy, at cp/pt.c:11677 This was mistakenly reported in PR 46156 but is a different bug. According to H.J. Lu, it was caused by revision 166167: http://gcc.gnu.org/ml/gcc-cvs/2010-11/msg00053.html