https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93479
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED --- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Jonathan Wakely from comment #2) > i.e. > > --- a/libstdc++-v3/libsupc++/compare > +++ b/libstdc++-v3/libsupc++/compare > @@ -525,7 +525,9 @@ namespace std > // BUILTIN-PTR-THREE-WAY(T, U) > template<typename _Tp, typename _Up> > concept __3way_builtin_ptr_cmp > - = convertible_to<_Tp, const volatile void*> > + = requires(_Tp&& __t, _Up&& __u) > + { static_cast<_Tp&&>(__t) <=> static_cast<_Up&&>(__u); } > + && convertible_to<_Tp, const volatile void*> Derp, I am ungood at C++. Commit g:f214ffb336d makes this less dumb. Thanks for the bug report.