[clang] [LifetimeSafety] Detect iterator invalidation through container aliases (PR #195231)
Zeyi Xu via cfe-commits
cfe-commits at lists.llvm.org
Fri May 1 22:03:14 PDT 2026
================
@@ -345,37 +384,41 @@ void Invalidate1Use2IsOk() {
auto it = s.strings1.begin();
s.strings2.push_back("1");
*it;
-}void Invalidate1Use2ViaRefIsOk() {
+}
+
+// FIXME: Requires field-sensitive AccessPaths to fix.
+void Invalidate1Use2ViaRefIsOk() {
S s;
- auto it = s.strings2.begin();
+ auto it = s.strings2.begin(); // expected-warning {{object whose reference is captured is later invalidated}}
auto& strings2 = s.strings2;
----------------
zeyi2 wrote:
Fixed, thanks!
https://github.com/llvm/llvm-project/pull/195231
More information about the cfe-commits
mailing list