[Lldb-commits] [lldb] [lldb] Push ExpressionEvaluation policy and remove identity check fallbacks (PR #195775)

Jonas Devlieghere via lldb-commits lldb-commits at lists.llvm.org
Tue Jul 7 08:06:42 PDT 2026


================
@@ -4368,11 +4363,12 @@ Status Process::HaltPrivate() {
 }
 
 thread_result_t Process::RunPrivateStateThread(bool is_override) {
-  // Override PSTs exist solely to service RunThreadPlan expression evaluation.
-  // They must see parent frames, not provider-augmented frames.
-  std::optional<PolicyStack::Guard> policy_guard;
-  if (is_override)
-    policy_guard = PolicyStack::Get().PushPrivateState();
+  // All PSTs see the private reality (private state, private run lock).
+  // Override PSTs additionally skip frame providers and recognizers since
+  // they exist solely to service RunThreadPlan expression evaluation.
+  PolicyStack::Guard policy_guard =
+      is_override ? PolicyStack::Get().PushPrivateStateRunningExpression()
----------------
JDevlieghere wrote:

Maybe we could override the Private State Thread's creator take the intended policy/reason, rather than re-deriving it from the `is_override` bool. That way that's explicit rather than load bearing on a comment?

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


More information about the lldb-commits mailing list