[clang] [LifetimeSafety] Overhaul CFG and analysis to also work with trivially destructed temporary objects (PR #177985)
Gábor Horváth via cfe-commits
cfe-commits at lists.llvm.org
Fri Feb 6 04:15:31 PST 2026
================
@@ -188,50 +188,52 @@ void test_aggregate_lifetime_extension() {
// CXX11-NEXT: 14: {[B1.13]}
// Double curly braces trigger regexps, escape as per FileCheck manual.
// CXX11-NEXT: 15: C c = {{[{][{]}}A(), A(){{[}][}]}};
-// CXX11-NEXT: 16: ~A() (Temporary object destructor)
+// CXX11-NEXT: 16: (FullExprCleanup collected 2 MTEs)
----------------
Xazax-hun wrote:
> The list of expirations we track in CFGFullExprCleanup currently get consumed in the analysis by emitting a contiguous sequence of ExpireFacts
I agree that this is unlikely to matter for the lifetime analysis but it might matter to other clients of the CFG in the future. That being said, if it is hard to test I am OK not testing this for now.
https://github.com/llvm/llvm-project/pull/177985
More information about the cfe-commits
mailing list