[clang] [Clang][Sema] fix crash of attribute transform (PR #78088)

Aaron Ballman via cfe-commits cfe-commits at lists.llvm.org
Wed Jan 17 07:52:40 PST 2024


================
@@ -7081,10 +7085,10 @@ QualType TreeTransform<Derived>::TransformAttributedType(
   // FIXME: dependent operand expressions?
   if (getDerived().AlwaysRebuild() ||
       modifiedType != oldType->getModifiedType()) {
-    // TODO: this is really lame; we should really be rebuilding the
-    // equivalent type from first principles.
-    QualType equivalentType
-      = getDerived().TransformType(oldType->getEquivalentType());
+    TypeLocBuilder AuxiliaryTLB;
+    AuxiliaryTLB.reserve(TL.getFullDataSize());
----------------
AaronBallman wrote:

Yeah, I think that's a better approach. Transforming the type should not have changed anything about type location information associated with the type. WDYT @erichkeane ?

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


More information about the cfe-commits mailing list