================
@@ -260,10 +260,17 @@ class LifetimeChecker {
SemaHelper->reportUseAfterInvalidation(
InvalidatedPVD, UF->getUseExpr(), Warning.InvalidatedByExpr);
- } else
+ } else {
// Scope-based expiry (use-after-scope).
+
+ llvm::SmallVector<OriginID> OriginFlowChain =
+ LoanPropagation.buildOriginFlowChain(FactMgr, UF, LID);
+ const llvm::SmallVector<const Expr *> ExprChain =
+ getExprChain(OriginFlowChain);
SemaHelper->reportUseAfterScope(IssueExpr, UF->getUseExpr(),
- MovedExpr, ExpiryLoc);
+ MovedExpr, ExpiryLoc, ExprChain);
----------------
usx95 wrote:
I would inline this to be brief. I expect we need to do this at other places as
well.
reportUseAfterScope(IssueExpr, UF->getUseExpr(),
MovedExpr, ExpiryLoc, getExprChain
(LoanPropagation.buildOriginFlowChain(UF, LID)));
https://github.com/llvm/llvm-project/pull/199345
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits