[llvm-branch-commits] [clang] [LifetimeSafety] Track per-field origins for record types (PR #195603)

Gábor Horváth via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Jun 11 09:00:45 PDT 2026


================
@@ -131,6 +131,20 @@ class OriginNode {
     return nullptr;
   }
 
+  /// To reach the record, peels the base's outer origin when the
+  /// base is a glvalue (`IsGLValue`) and one more level for an arrow access
+  /// (`IsArrow`), then looks up `FD`. Returns null if `FD` is not reachable.
+  OriginNode *resolveMemberField(const FieldDecl *FD, bool IsGLValue,
----------------
Xazax-hun wrote:

I wonder if the `IsGLValue` part belongs to the call site but otherwise it looks great! I do not have a very strong opinion about this part though, I wonder what @usx95 thinks. 

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


More information about the llvm-branch-commits mailing list