================ @@ -3873,6 +3873,11 @@ static_assert(!__is_trivially_equality_comparable(NonTriviallyEqualityComparable #if __cplusplus >= 202002L +enum TriviallyEqualityComparableEnum { + x, y +}; +static_assert(__is_trivially_equality_comparable(TriviallyEqualityComparableEnum)); + ---------------- halbi2 wrote:
This is very nice, thank you! At line 3853 add: ``` static_assert(__is_trivially_equality_comparable(Enum)); static_assert(__is_trivially_equality_comparable(SignedEnum)); static_assert(__is_trivially_equality_comparable(UnsignedEnum)); static_assert(__is_trivially_equality_comparable(EnumClass)); static_assert(__is_trivially_equality_comparable(SignedEnumClass)); static_assert(__is_trivially_equality_comparable(UnsignedEnumClass)); ``` It would be beneficial also to test that the compiler does not crash in this case: ``` enum E { e }; static_assert(__is_trivially_equality_comparable(E)); bool operator==(E, E); static_assert(!__is_trivially_equality_comparable(E)); ``` https://github.com/llvm/llvm-project/pull/133587 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits