diff options
Diffstat (limited to 'libcxx/include/__compare/ordering.h')
| -rw-r--r-- | libcxx/include/__compare/ordering.h | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/libcxx/include/__compare/ordering.h b/libcxx/include/__compare/ordering.h index 1d466d669eec..ff148abf234f 100644 --- a/libcxx/include/__compare/ordering.h +++ b/libcxx/include/__compare/ordering.h @@ -10,7 +10,8 @@  #define _LIBCPP___COMPARE_ORDERING_H  #include <__config> -#include <type_traits> +#include <__type_traits/enable_if.h> +#include <__type_traits/is_same.h>  #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)  #  pragma GCC system_header @@ -312,6 +313,12 @@ inline constexpr strong_ordering strong_ordering::equal(_OrdResult::__equiv);  inline constexpr strong_ordering strong_ordering::equivalent(_OrdResult::__equiv);  inline constexpr strong_ordering strong_ordering::greater(_OrdResult::__greater); +/// [cmp.categories.pre]/1 +/// The types partial_ordering, weak_ordering, and strong_ordering are +/// collectively termed the comparison category types. +template <class _Tp> +concept __comparison_category = __one_of_v<_Tp, partial_ordering, weak_ordering, strong_ordering>; +  #endif // _LIBCPP_STD_VER > 17  _LIBCPP_END_NAMESPACE_STD | 
