[clang] [clang] Infer lifetime_capture_by for STL containers (PR #117122)
Utkarsh Saxena via cfe-commits
cfe-commits at lists.llvm.org
Fri Nov 22 03:40:04 PST 2024
================
@@ -268,6 +268,40 @@ void Sema::inferLifetimeBoundAttribute(FunctionDecl *FD) {
}
}
+static bool IsPointerLikeType(QualType QT) {
+ QT = QT.getNonReferenceType();
+ if (QT->isPointerType())
+ return true;
+ auto *RD = QT->getAsCXXRecordDecl();
+ if (!RD)
+ return false;
+ RD = RD->getCanonicalDecl();
+ if (auto *CTSD = dyn_cast<ClassTemplateSpecializationDecl>(RD))
+ RD = CTSD->getSpecializedTemplate()->getTemplatedDecl();
----------------
usx95 wrote:
Hmm. It can reproduce with `<vector>` include but not with handcrafted `vector` in lit tests.
https://github.com/llvm/llvm-project/pull/117122
More information about the cfe-commits
mailing list