Date
2020-01-05.16:13:01
Message id
10910

Content

Proposed resolution:

This wording is relative to N4842.

  1. Modify [cmp.concept] as indicated:

    template<class T, class U, class Cat = partial_ordering>
      concept three_way_comparable_with =
        weakly-equality-comparable-with<T, U> &&
        partially-ordered-with<T, U> &&
        three_way_comparable<T, Cat> &&
        three_way_comparable<U, Cat> &&
        common_reference_with<const remove_reference_t<T>&, const remove_reference_t<U>&> &&
        three_way_comparable<
          common_reference_t<const remove_reference_t<T>&, const remove_reference_t<U>&>, Cat> &&
        weakly-equality-comparable-with<T, U> &&
        partially-ordered-with<T, U> &&
        requires(const remove_reference_t<T>& t, const remove_reference_t<U>& u) {
          { t <=> u } -> compares-as<Cat>;
          { u <=> t } -> compares-as<Cat>;
        };