[compiler-rt] [clang] [llvm] [libcxx] [flang] [clang-tools-extra] [libc] [libcxx] Unifying __is_trivial_equality_predicate and __is_trivial_plus_operation into __desugars_to (PR #68642)

Anton Rydahl via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 6 11:08:59 PST 2023


================
@@ -29,12 +30,11 @@
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
-template <
-    typename _DifferenceType,
-    typename _Tp,
-    typename _BinaryOperation,
-    typename _UnaryOperation,
-    __enable_if_t<__is_trivial_plus_operation<_BinaryOperation, _Tp, _Tp>::value && is_arithmetic_v<_Tp>, int> = 0>
+template < typename _DifferenceType,
+           typename _Tp,
+           typename _BinaryOperation,
+           typename _UnaryOperation,
+           __enable_if_t<__desugars_to<_BinaryOperation, plus<_Tp> >::value && is_arithmetic_v<_Tp>, int> = 0>
----------------
AntonRydahl wrote:

I tried to remove is_arithmetic_type, and it makes some of our tests fail.

https://github.com/llvm/llvm-project/pull/68642


More information about the llvm-commits mailing list