================
@@ -1333,7 +1333,15 @@ void StmtProfiler::VisitPredefinedExpr(const 
PredefinedExpr *S) {
 void StmtProfiler::VisitIntegerLiteral(const IntegerLiteral *S) {
   VisitExpr(S);
   S->getValue().Profile(ID);
-  ID.AddInteger(S->getType()->castAs<BuiltinType>()->getKind());
+
+  QualType T = S->getType();
+  if (auto BitIntT = T->getAs<BitIntType>()) {
+    ID.AddBoolean(true);
+    BitIntT->Profile(ID);
+  } else {
+    ID.AddBoolean(false);
----------------
DonatNagyE wrote:

```suggestion
  QualType T = S->getType();
  ID.AddInteger(T->getTypeClass());
  if (auto BitIntT = T->getAs<BitIntType>()) {
    BitIntT->Profile(ID);
  } else {
```
I agree with @erichkeane's suggestion that `getTypeClass()` is more elegant 
than adding literal true and false.

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

Reply via email to