diff options
Diffstat (limited to 'libcxx/include/__functional/operations.h')
-rw-r--r-- | libcxx/include/__functional/operations.h | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/libcxx/include/__functional/operations.h b/libcxx/include/__functional/operations.h index 7ddc006..9aa28e4 100644 --- a/libcxx/include/__functional/operations.h +++ b/libcxx/include/__functional/operations.h @@ -13,8 +13,7 @@ #include <__config> #include <__functional/binary_function.h> #include <__functional/unary_function.h> -#include <__type_traits/integral_constant.h> -#include <__type_traits/operation_traits.h> +#include <__type_traits/desugars_to.h> #include <__utility/forward.h> #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) @@ -41,10 +40,10 @@ _LIBCPP_CTAD_SUPPORTED_FOR_TYPE(plus); // The non-transparent std::plus specialization is only equivalent to a raw plus // operator when we don't perform an implicit conversion when calling it. template <class _Tp> -struct __desugars_to<__plus_tag, plus<_Tp>, _Tp, _Tp> : true_type {}; +inline const bool __desugars_to_v<__plus_tag, plus<_Tp>, _Tp, _Tp> = true; template <class _Tp, class _Up> -struct __desugars_to<__plus_tag, plus<void>, _Tp, _Up> : true_type {}; +inline const bool __desugars_to_v<__plus_tag, plus<void>, _Tp, _Up> = true; #if _LIBCPP_STD_VER >= 14 template <> @@ -315,11 +314,11 @@ struct _LIBCPP_TEMPLATE_VIS equal_to<void> { // The non-transparent std::equal_to specialization is only equivalent to a raw equality // comparison when we don't perform an implicit conversion when calling it. template <class _Tp> -struct __desugars_to<__equal_tag, equal_to<_Tp>, _Tp, _Tp> : true_type {}; +inline const bool __desugars_to_v<__equal_tag, equal_to<_Tp>, _Tp, _Tp> = true; // In the transparent case, we do not enforce that template <class _Tp, class _Up> -struct __desugars_to<__equal_tag, equal_to<void>, _Tp, _Up> : true_type {}; +inline const bool __desugars_to_v<__equal_tag, equal_to<void>, _Tp, _Up> = true; #if _LIBCPP_STD_VER >= 14 template <class _Tp = void> |