https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86920
Bug ID: 86920 Summary: A matching template specialization is not selected Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: v.reshetnikov at gmail dot com Target Milestone: --- /****************** BEGIN SOURCE ******************/ template<class> struct S { template<bool...> struct X { static constexpr bool value = false; }; }; template<> template<bool v> struct S<int>::X<v> { static constexpr bool value = true; }; static_assert(S<int>::X<true>::value); /******************* END SOURCE *******************/ EXPECTED: no errors ACTUAL: <source>:15:15: error: static assertion failed 15 | static_assert(S<int>::X<true>::value); | ^~~~~~