https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78420
--- Comment #11 from Ville Voutilainen <ville.voutilainen at gmail dot com> --- Ah, the plot thickens. Jens Maurer wrote: "Regarding the std::less<T*> issue, it seems a bug in the standard to require that it be constexpr and deliver a total order. After all, the addresses of global objects are defined by the linker, so it doesn't seem plausible to get a compile-time answer for std::less<T*> that is the same as a later run-time answer." So I could theoretically just drop the constexpr from the pointer specializations and be done with this bugfix. On the other hand, I expect the plot to thicken further, as library wrappers that contain pointers don't establish a total order, but in that regard we have no conformance bugs; the standard doesn't specify that they would.