[PATCH] D105821: [analyzer] [WIP] Model destructor for std::unique_ptr
Deep Majumder via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 29 05:49:21 PDT 2021
RedDocMD added inline comments.
================
Comment at: clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp:143
+ llvm::ArrayRef<llvm::StringLiteral> ValidNames(STD_PTR_NAMES);
+ return llvm::is_contained(ValidNames, Name);
}
----------------
vsavchenko wrote:
> And why can't we pass `STD_PTR_NAMES` directly to `llvm::is_contained`?
Ooh, so there is an overload for that as well. :)
================
Comment at: clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp:381
+ const MemRegion *ThisRegion = DC->getCXXThisVal().getAsRegion();
+ assert(ThisRegion && "We do not support explicit calls to destructor");
+ const auto *InnerPtrVal = State->get<TrackedRegionMap>(ThisRegion);
----------------
vsavchenko wrote:
> And if it happens we are going to crash with assertion failure?
Assuming assertions are enabled, that is.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D105821/new/
https://reviews.llvm.org/D105821
More information about the cfe-commits
mailing list