================
@@ -144,7 +144,8 @@ TaggedUnionMemberCountCheck::getNumberOfEnumValues(const 
EnumDecl *ED) {
 
   if (EnableCountingEnumHeuristic && LastEnumConstant &&
       isCountingEnumLikeName(LastEnumConstant->getName()) &&
-      (LastEnumConstant->getInitVal() == (EnumValues.size() - 1))) {
+      (LastEnumConstant->getInitVal() ==
+       llvm::APSInt::getUnsigned(EnumValues.size() - 1u))) {
----------------
vbvictor wrote:

> From the error: `(with operand types 'llvm::APSInt' and 'unsigned long')` I 
> was assuming that the `(EnumValues.size() - 1)` gets converted to an 
> `unsigned long`

Yeah, but checking source code I suppose `bool operator==(uint64_t RHS) const` 
doesn't exist for llvm::APSInt

https://github.com/llvm/llvm-project/pull/147048
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to