https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99846
Jonathan Wakely <redi at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |INVALID
Status|NEW |RESOLVED
--- Comment #10 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Patrick Palka from comment #7)
> After CWG 2369 (i.e. in GCC 11), we check constraints sooner during overload
> resolution, so when considering the operator<=> candidate we end up looping
> during constraint checking, which we consider to be a fatal error.
Jason suggested adding a constraint to variant's operator<=> so that
satisfaction would fail before we try the loopy part. But I don't know how to
do that.
I think both G++ and libstdc++ are behaving correctly here, and I can't think
of a non-standard change we could make to support it. So closing as not a bug.