[clang] [LifetimeSafety] Introduce buildOriginFlowChain for use-after-scope (PR #199345)

Utkarsh Saxena via cfe-commits cfe-commits at lists.llvm.org
Tue Jun 2 04:15:47 PDT 2026


================
@@ -471,13 +474,50 @@ class LifetimeSafetySemaHelperImpl : public LifetimeSafetySemaHelper {
   }
 
   std::string getDiagSubjectDescription(const Expr *E) {
+    // FIXME: Ideally, this should use IgnoreParenImpCasts().
+    // However, according to the comment on IgnoreParenImpCasts(),
+    // it is not fully equivalent to IgnoreImpCasts() + IgnoreParens().
+    // Once the FIXME in IgnoreParenImpCasts() is resolved,
+    // this can be switched to use IgnoreParenImpCasts().
+    E = E->IgnoreImpCasts()->IgnoreParens();
----------------
usx95 wrote:

Can you give reason why `E = E->IgnoreImpCasts()` is not enough. 
Can we `return false` for `ParenExpr` in `shouldShowInAliasChain` ?

https://github.com/llvm/llvm-project/pull/199345


More information about the cfe-commits mailing list