http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46290
Summary: explicit instantiation: inconsistant behaviour between constructor and member functions Product: gcc Version: 4.5.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: steph...@magnenat.net Created attachment 22254 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22254 minimal test case Let a templated outer class and an inner class. When the outer class is explicitly instantiated before the implementation of the members of the inner class, the code for the constructor of the inner class is not generated, but the code for its other members is. When the explicit instantiation is after the implementation, all methods including the constructor have associated code. This difference of behaviour seems rather strange to me. Is it done on purpose or is it a bug?