================
@@ -148,9 +148,10 @@ class LifetimeChecker {
// field!
};
auto CheckImplicitThis = [&](const CXXMethodDecl *MD) {
- if (implicitObjectParamIsLifetimeBound(MD))
- VerifiedLiftimeboundEscapes.insert(MD);
- else if (auto *ReturnEsc = dyn_cast<ReturnEscapeFact>(OEF))
+ if (implicitObjectParamIsLifetimeBound(MD)) {
+ if (isa<ReturnEscapeFact>(OEF))
+ VerifiedLiftimeboundEscapes.insert(MD);
+ } else if (auto *ReturnEsc = dyn_cast<ReturnEscapeFact>(OEF))
AnnotationWarningsMap.try_emplace(MD, ReturnEsc->getReturnExpr());
----------------
Xazax-hun wrote:
I think it might be possible to simplify this a bit.
```suggestion
if (auto *ReturnEsc = dyn_cast<ReturnEscapeFact>(OEF)) {
if (implicitObjectParamIsLifetimeBound(MD))
VerifiedLiftimeboundEscapes.insert(MD);
else
AnnotationWarningsMap.try_emplace(MD, ReturnEsc->getReturnExpr());
}
```
https://github.com/llvm/llvm-project/pull/200786
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits