-
-
Notifications
You must be signed in to change notification settings - Fork 132
Closed
Description
The shortest I see is
_ZSt12__apply_implIZN5mongo20stacktrace_test_util25StackTraceSigAltStackTest10tryHandlerEPFviP9siginfo_tPvEEUlvE_St5tupleIJEETpTnmJEEDcOT_OT0_St16integer_sequenceImJXspT1_EEE
c++trace
seems to choke on this well, but llvm-cxxtrace
demangles to
decltype(auto) std::__apply_impl<mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'(), std::tuple<>>(mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'()&&, std::tuple<>&&, std::integer_sequence<unsigned long, ...>)
If it helps, it is this function from libstdc++'s <tuple>
compiled with clang.
Here are a few more examples that failed to demangle. They all seem to involve lambda's but I don't know if that is why it is choking. Some functions with lambdas are correctly demangled.
> llvm-cxxfilt
_ZZN5mongo4stdx6threadC1IZNS_20stacktrace_test_util25StackTraceSigAltStackTest10tryHandlerEPFviP9siginfo_tPvEEUlvE_JETnNSt9enable_ifIXntsr3stdE9is_same_vIS1_NSt5decayIT_E4typeEEEiE4typeELi0EEESD_DpOT0_ENUlvE_clEv
mongo::stdx::thread::thread<mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'(), 0>(mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'())::'lambda'()::operator()()
_ZSt13__invoke_implIvZN5mongo4stdx6threadC1IZNS0_20stacktrace_test_util25StackTraceSigAltStackTest10tryHandlerEPFviP9siginfo_tPvEEUlvE_JETnNSt9enable_ifIXntsr3stdE9is_same_vIS2_NSt5decayIT_E4typeEEEiE4typeELi0EEESE_DpOT0_EUlvE_JEESE_St14__invoke_otherOT0_DpOT1_
mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'() std::__invoke_impl<void, mongo::stdx::thread::thread<mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'(), 0>(mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'())::'lambda'()>(std::__invoke_other, mongo::stdx::thread::thread<mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'(), 0>(mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'())::'lambda'()&&)
_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJZN5mongo4stdx6threadC1IZNS3_20stacktrace_test_util25StackTraceSigAltStackTest10tryHandlerEPFviP9siginfo_tPvEEUlvE_JETnNSt9enable_ifIXntsr3stdE9is_same_vIS5_NSt5decayIT_E4typeEEEiE4typeELi0EEESH_DpOT0_EUlvE_EEEEE6_M_runEv
std::thread::_State_impl<std::thread::_Invoker<std::tuple<mongo::stdx::thread::thread<mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'(), 0>(mongo::stacktrace_test_util::StackTraceSigAltStackTest::tryHandler(void (*)(int, siginfo_t*, void*))::'lambda'())::'lambda'()>>>::_M_run()
Metadata
Metadata
Assignees
Labels
No labels