================ @@ -53,10 +54,32 @@ class LibCXXFrameRecognizer : public StackFrameRecognizer { public: LibCXXFrameRecognizer() - : m_hidden_function_regex( - R"(^std::__1::(__function.*::operator\(\)|__invoke))" - R"((\[.*\])?)" // ABI tag. - R"(( const)?$)"), // const. + : m_hidden_regex{ + // internal implementation details of std::function + // std::__1::__function::__alloc_func<void (*)(), std::__1::allocator<void (*)()>, void ()>::operator()[abi:ne200000] + // std::__1::__function::__func<void (*)(), std::__1::allocator<void (*)()>, void ()>::operator() + // std::__1::__function::__value_func<void ()>::operator()[abi:ne200000]() const + RegularExpression{"" + R"(^std::__[0-9]*::)" // Namespace. + R"(__function::.*::operator\(\))" + R"((\[.*\])?)" // ABI tag. + R"(( const)?$)"}, // const. + // internal implementation details of std::invoke + // std::__1::__invoke[abi:ne200000]<void (*&)()> + RegularExpression{ + R"(^std::__[0-9]*::)" // Namespace. + R"(__invoke)" ---------------- vogelsgesang wrote:
I wonder if we should simply hide everything starting with `^std::__[0-9]*::__.*`. Or are there any `__` functions in libc++ which are not implementation details and should be shown in stacktraces by default? https://github.com/llvm/llvm-project/pull/105695 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits