https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114784
--- Comment #5 from Daniel Bertalan <dani at danielbertalan dot dev> --- I tried Jakub's patch (thank you for the super quick response!), it crashes if the constructor has non-type template parameters: template <typename> struct SpanImpl { template <long> SpanImpl(); }; template <typename T> struct Span : SpanImpl<T> { using SpanImpl<T>::SpanImpl; }; Span<char> c = {}; $ g++ -std=c++20 crash.cpp crash.cpp: In instantiation of 'struct Span<char>': crash.cpp:8:12: required from here 8 | Span<char> c = {}; | ^ crash.cpp:5:22: internal compiler error: tree check: expected function_decl, have template_decl in implicitly_declare_fn, at cp/method.cc:3313 5 | using SpanImpl<T>::SpanImpl; | ^~~~~~~~