https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80449
Bug ID: 80449 Summary: ICE reporting failed partial class template specialization class template argument deduction Product: gcc Version: 7.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ed at catmur dot co.uk Target Milestone: --- The following invalid code ICEs: template<class S> struct C; template<> struct C<int> { C(int, int) {} }; auto k = C{0, 0}; <source>:4:16: error: class template argument deduction failed: auto k = C{0, 0}; ^ <source>:4:16: internal compiler error: Segmentation fault mmap: Cannot allocate memory ICE also occurs if the primary template is complete and does not provide an appropriate constructor: template<class S> struct C {}; template<> struct C<int> { C(int, int) {} }; auto k = C{0, 0}; Looks similar to bug 79790.