Author: Vitaly Buka Date: 2025-02-22T13:33:15-08:00 New Revision: d2616cc3926ec0ac73ec547e04b64e045035bd3c
URL: https://github.com/llvm/llvm-project/commit/d2616cc3926ec0ac73ec547e04b64e045035bd3c DIFF: https://github.com/llvm/llvm-project/commit/d2616cc3926ec0ac73ec547e04b64e045035bd3c.diff LOG: [analyzer] Fix use after scope after #123003 (#128372) In #123003 make_first_range was applied to temporarily. Added: Modified: clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp Removed: ################################################################################ diff --git a/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp index 48fa0ebbfc609..3aafb5384b3a6 100644 --- a/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp @@ -203,8 +203,8 @@ void StackAddrEscapeChecker::checkAsyncExecutedBlockCaptures( // a variable of the type "dispatch_semaphore_t". if (isSemaphoreCaptured(*B.getDecl())) return; - for (const MemRegion *Region : - llvm::make_first_range(getCapturedStackRegions(B, C))) { + auto Regions = getCapturedStackRegions(B, C); + for (const MemRegion *Region : llvm::make_first_range(Regions)) { // The block passed to dispatch_async may capture another block // created on the stack. However, there is no leak in this situaton, // no matter if ARC or no ARC is enabled: _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits