This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/47987] ICE on legal code (when attempting to inline non-implicitly instantiated template member function)
- From: "niemayer at isg dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 4 Mar 2011 11:43:35 +0000
- Subject: [Bug c++/47987] ICE on legal code (when attempting to inline non-implicitly instantiated template member function)
- Auto-submitted: auto-generated
- References: <bug-47987-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47987
--- Comment #1 from niemayer at isg dot de 2011-03-04 11:43:25 UTC ---
The line that gcc reports to cause the ICE contains:
if (offset_a2->preallocate(text_1.length())) {
"offset_a2" is an instance of class Array<unsigned long, true, _T<AbsPtr>,
unsigned long> - if that class is declared to be an "extern template by
extern template class Array<unsigned long, true, _T<AbsPtr>, unsigned long>;
before the function that causes the ICE, compilation works fine as well as it
does with implicit template instantiation. (All class names within namespace
"LKV").