https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105779
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #3) > Here is a even more reduced testcase which is rejected rather than crashes. > It is also is rejected on the trunk: > template<int> > struct struct1 > { > static auto apply() > { > return 1; > } > }; > > int method(int(*f)()); > > int t = method(struct1<1>::apply); Note if you want to reproduce the crash, just change method to: template<class T> int method(T(*f)());