diff --git a/clang/lib/AST/AttrImpl.cpp b/clang/lib/AST/AttrImpl.cpp index 3d994e06d234..0c7e81f1749c 100644 --- a/clang/lib/AST/AttrImpl.cpp +++ b/clang/lib/AST/AttrImpl.cpp @@ -289,21 +289,20 @@ namespace { // - DeclArgument // - OMPTraitInfoArgument // - VariadicOMPInteropInfoArgument -template constexpr bool useDefaultEquality() { - return std::is_same_v || std::is_same_v || - std::is_same_v || std::is_same_v || - std::is_same_v || std::is_same_v || - std::is_enum_v || std::is_integral_v; -} +#define USE_DEFAULT_EQUALITY \ + (std::is_same_v || std::is_same_v || \ + std::is_same_v || std::is_same_v || \ + std::is_same_v || std::is_same_v || \ + std::is_enum_v || std::is_integral_v) template -typename std::enable_if_t(), bool> +typename std::enable_if_t equalAttrArgs(T A, T B, StructuralEquivalenceContext &Context) { return false; } template -typename std::enable_if_t(), bool> +typename std::enable_if_t equalAttrArgs(T A1, T A2, StructuralEquivalenceContext &Context) { return A1 == A2; }