[libcxx-commits] [libcxx] [lldb] [lldb][libc++] Hide all libc++ implementation details from stacktraces (PR #108870)

Michael Buch via libcxx-commits libcxx-commits at lists.llvm.org
Mon Sep 23 06:49:32 PDT 2024


================
@@ -90,9 +79,26 @@ class LibCXXFrameRecognizer : public StackFrameRecognizer {
     if (!sc.function)
       return {};
 
+    // Check if we have a regex match
+    bool matches_regex = false;
     for (RegularExpression &r : m_hidden_regex)
-      if (r.Execute(sc.function->GetNameNoArguments()))
+      if (r.Execute(sc.function->GetNameNoArguments())) {
+        matches_regex = true;
+        break;
+      }
+
+    if (matches_regex) {
+      // Only hide this frame if the immediate caller is also within libc++.
+      lldb::StackFrameSP parent_frame =
----------------
Michael137 wrote:

`parent_frame` -> `parent_frame_sp`.

Also, we need to check `parent_frame` and `GetThread()` for `nullptr` here

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


More information about the libcxx-commits mailing list