https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101056

            Bug ID: 101056
           Summary: std::compare_partial_order_fallback missing the
                    constraint of "F < E is well-formed"
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hewillk at gmail dot com
  Target Milestone: ---

In [cmp#alg-6.3]: Otherwise, if the expressions E == F, E < F, and F < E are
all well-formed and convertible to bool, [...].

#include <compare>
struct E {};
const E e;
E f;
bool operator< (const E&, E&) { return false; }
bool operator==(const E&, E&) { return true; }
auto ord = std::compare_partial_order_fallback(e, f);

https://godbolt.org/z/TTooWPqEz

Reply via email to