https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67402
Bug ID: 67402 Summary: outside definition of member class of an explicitly specialized member class Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: a20150531abc at 126 dot com Target Milestone: --- template<class T> struct A { struct B{}; }; template<> struct A<char>::B{ void f(); struct C; struct D{}; // ok }; void A<char>::B::f(){}// ok struct A<char>::B::C{};// error int main() { return 0; } prog.cc:14:24: error: too few template-parameter-lists