https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114153
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> --- Without looking at the code, we probably just need to check if the type has a usable operator<=>. We check it out had a usable operator< which worked fine in C++17, but in C++20 x<y can work without having any operator<