https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113966
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |ppalka at gcc dot gnu.org --- Comment #7 from Patrick Palka <ppalka at gcc dot gnu.org> --- template<class T> concept C = T::value; template<class T> struct A { template<class U> requires requires { { T() } -> C; } friend void f(A) { } }; template struct A<int>; We probably don't want to do do_auto_deduction at all during partial substitution, since that could cause requirements to get checked out of order.