================
@@ -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
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to