https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94719
Bug ID: 94719 Summary: ICE with constrained inherited constructor template from class template since r10-7859 Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ppalka at gcc dot gnu.org Target Milestone: --- $ cat testcase.C template<typename T> struct bar { template<int N = 5> requires (N == 5) bar() { } }; template<typename T> struct foo : bar<T> { using foo::bar::bar; }; void baz() { foo<int>{}; } $ g++ -std=c++2a -fconcepts testcase.C: In instantiation of ‘foo<int>::foo() [with int N = 5][inherited from bar<int>]’: testcase.C:17:12: required from here testcase.C:5:17: internal compiler error: unexpected expression ‘N’ of kind template_parm_index 5 | requires (N == 5) | ~~~^~~~~ This is caused by the fix for PR94549.