ZequanWu wrote: Since this makes lldb to do type searching more aggressively, I want to get a sense of performance impact on simplified template names from this PR. When I running the a test program with LLDB (with this PR), LLDB crashes. I don't have a reduced test case yet, will probably working on getting one when I have time: ``` Please include the directory content when filing a bug report PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace. Stack dump: 0. Program arguments: /usr/local/google/home/zequanwu/work/llvm-project/out/cmake-reldbg/bin/lldb blaze-bin/storage/contribservice/utils/configuration/contribution_schema/builtin_field_spec_spanner_semantics_factory_test -o "b builtin_field_spec_spanner_semantics_factory_test.cc:866" -o r -o "expr this" -o "expr *this" -batch #0 0x00005584fdde1dd8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /usr/local/google/home/zequanwu/work/llvm-project/llvm/lib/Support/Unix/Signals.inc:804:13 #1 0x00005584fdde00a0 llvm::sys::RunSignalHandlers() /usr/local/google/home/zequanwu/work/llvm-project/llvm/lib/Support/Signals.cpp:106:18 #2 0x00005584fdde2591 SignalHandler(int, siginfo_t*, void*) /usr/local/google/home/zequanwu/work/llvm-project/llvm/lib/Support/Unix/Signals.inc:0:3 #3 0x00007f9658c49e20 (/lib/x86_64-linux-gnu/libc.so.6+0x3fe20) #4 0x00007f9658c9de5c __pthread_kill_implementation ./nptl/pthread_kill.c:44:76 #5 0x00007f9658c49d82 raise ./signal/../sysdeps/posix/raise.c:27:6 #6 0x00007f965f371a58 SignalHandler(int, siginfo_t*, void*) /usr/local/google/home/zequanwu/work/llvm-project/llvm/lib/Support/Unix/Signals.inc:420:1 #7 0x00007f9658c49e20 (/lib/x86_64-linux-gnu/libc.so.6+0x3fe20) #8 0x00007f965f2360ca lldb_private::plugin::dwarf::SymbolFileDWARF::FindTypes(lldb_private::TypeQuery const&, lldb_private::TypeResults&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:2692:12 #9 0x00007f965f26439c IsCppForwardDeclObjC(lldb_private::plugin::dwarf::SymbolFileDWARF&, ParsedDWARFTypeAttributes const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:376:8 #10 0x00007f965f26439c DWARFASTParserClang::ParseStructureLikeDIE(lldb_private::SymbolContext const&, lldb_private::plugin::dwarf::DWARFDIE const&, ParsedDWARFTypeAttributes&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:1848:9 #11 0x00007f965f262004 std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>::__shared_ptr(std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>&&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1533:20 #12 0x00007f965f262004 std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>::operator=(std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>&&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1621:2 #13 0x00007f965f262004 std::shared_ptr<lldb_private::Type>::operator=(std::shared_ptr<lldb_private::Type>&&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr.h:439:27 #14 0x00007f965f262004 DWARFASTParserClang::ParseTypeFromDWARF(lldb_private::SymbolContext const&, lldb_private::plugin::dwarf::DWARFDIE const&, bool*) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:613:15 #15 0x00007f965f236d39 std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>::operator bool() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1671:23 #16 0x00007f965f236d39 lldb_private::plugin::dwarf::SymbolFileDWARF::ParseType(lldb_private::SymbolContext const&, lldb_private::plugin::dwarf::DWARFDIE const&, bool*) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:3101:7 #17 0x00007f965f23161e std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>::__shared_ptr(std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>&&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1533:20 #18 0x00007f965f23161e std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>::operator=(std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>&&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1621:2 #19 0x00007f965f23161e std::shared_ptr<lldb_private::Type>::operator=(std::shared_ptr<lldb_private::Type>&&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr.h:439:27 #20 0x00007f965f23161e lldb_private::plugin::dwarf::SymbolFileDWARF::GetTypeForDIE(lldb_private::plugin::dwarf::DWARFDIE const&, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:2848:15 #21 0x00007f965f22fee3 std::__shared_ptr<lldb_private::Type, (__gnu_cxx::_Lock_policy)2>::get() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1667:16 #22 0x00007f965f22fee3 lldb_private::plugin::dwarf::SymbolFileDWARF::ResolveType(lldb_private::plugin::dwarf::DWARFDIE const&, bool, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:1629:63 #23 0x00007f965f226bab lldb_private::plugin::dwarf::SymbolFileDWARF::ResolveTypeUID(lldb_private::plugin::dwarf::DWARFDIE const&, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:0:12 #24 0x00007f965f26bc54 DWARFASTParserClang::ParseInheritance(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::CompilerType, lldb::AccessType, std::shared_ptr<lldb_private::Module> const&, std::vector<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>, std::allocator<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>>>&, lldb_private::ClangASTImporter::LayoutInfo&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:1615:23 #25 0x00007f965f26e143 DWARFASTParserClang::ParseChildMembers(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::CompilerType const&, std::vector<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>, std::allocator<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>>>&, std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>&, std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>&, std::vector<DWARFASTParserClang::DelayedAddObjCClassProperty, std::allocator<DWARFASTParserClang::DelayedAddObjCClassProperty>>&, lldb::AccessType, lldb_private::ClangASTImporter::LayoutInfo&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:3206:7 #26 0x00007f965f26d5c6 __gnu_cxx::__normal_iterator<lldb_private::plugin::dwarf::DWARFDIE*, std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>>::__normal_iterator(lldb_private::plugin::dwarf::DWARFDIE* const&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_iterator.h:1068:20 #27 0x00007f965f26d5c6 std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>::begin() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:874:16 #28 0x00007f965f26d5c6 DWARFASTParserClang::CompleteRecordType(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::CompilerType const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:2219:28 #29 0x00007f965f26e93a DWARFASTParserClang::CompleteTypeFromDWARF(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::Type*, lldb_private::CompilerType const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:0:5 #30 0x00007f965f230c18 lldb_private::plugin::dwarf::SymbolFileDWARF::CompleteType(lldb_private::CompilerType&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:1622:21 #31 0x00007f965edbf069 lldb_private::Type::ResolveCompilerType(lldb_private::Type::ResolveState) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Symbol/Type.cpp:739:7 #32 0x00007f965edbf3e7 std::__weak_count<(__gnu_cxx::_Lock_policy)2>::__weak_count(std::__weak_count<(__gnu_cxx::_Lock_policy)2> const&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1155:19 #33 0x00007f965edbf3e7 std::__weak_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2>::__weak_ptr(std::__weak_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2> const&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1995:7 #34 0x00007f965edbf3e7 std::weak_ptr<lldb_private::TypeSystem>::weak_ptr(std::weak_ptr<lldb_private::TypeSystem> const&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr.h:830:7 #35 0x00007f965edbf3e7 lldb_private::CompilerType::CompilerType(lldb_private::CompilerType const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/include/lldb/Symbol/CompilerType.h:93:9 #36 0x00007f965edbf3e7 lldb_private::Type::GetFullCompilerType() /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Symbol/Type.cpp:773:10 #37 0x00007f965f26bc74 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count(std::__weak_count<(__gnu_cxx::_Lock_policy)2> const&, std::nothrow_t) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1254:17 #38 0x00007f965f26bc74 std::__shared_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2>::__shared_ptr(std::__weak_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2> const&, std::nothrow_t) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1733:9 #39 0x00007f965f26bc74 std::shared_ptr<lldb_private::TypeSystem>::shared_ptr(std::weak_ptr<lldb_private::TypeSystem> const&, std::nothrow_t) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr.h:535:9 #40 0x00007f965f26bc74 std::weak_ptr<lldb_private::TypeSystem>::lock() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr.h:874:16 #41 0x00007f965f26bc74 lldb_private::CompilerType::operator bool() const /usr/local/google/home/zequanwu/work/llvm-project/lldb/include/lldb/Symbol/CompilerType.h:117:26 #42 0x00007f965f26bc74 DWARFASTParserClang::ParseInheritance(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::CompilerType, lldb::AccessType, std::shared_ptr<lldb_private::Module> const&, std::vector<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>, std::allocator<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>>>&, lldb_private::ClangASTImporter::LayoutInfo&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:1628:3 #43 0x00007f965f26e143 DWARFASTParserClang::ParseChildMembers(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::CompilerType const&, std::vector<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>, std::allocator<std::unique_ptr<clang::CXXBaseSpecifier, std::default_delete<clang::CXXBaseSpecifier>>>>&, std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>&, std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>&, std::vector<DWARFASTParserClang::DelayedAddObjCClassProperty, std::allocator<DWARFASTParserClang::DelayedAddObjCClassProperty>>&, lldb::AccessType, lldb_private::ClangASTImporter::LayoutInfo&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:3206:7 #44 0x00007f965f26d5c6 __gnu_cxx::__normal_iterator<lldb_private::plugin::dwarf::DWARFDIE*, std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>>::__normal_iterator(lldb_private::plugin::dwarf::DWARFDIE* const&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_iterator.h:1068:20 #45 0x00007f965f26d5c6 std::vector<lldb_private::plugin::dwarf::DWARFDIE, std::allocator<lldb_private::plugin::dwarf::DWARFDIE>>::begin() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:874:16 #46 0x00007f965f26d5c6 DWARFASTParserClang::CompleteRecordType(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::CompilerType const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:2219:28 #47 0x00007f965f26e93a DWARFASTParserClang::CompleteTypeFromDWARF(lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::Type*, lldb_private::CompilerType const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:0:5 #48 0x00007f965f230c18 lldb_private::plugin::dwarf::SymbolFileDWARF::CompleteType(lldb_private::CompilerType&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:1622:21 #49 0x00007f965f2be7d3 std::__weak_count<(__gnu_cxx::_Lock_policy)2>::~__weak_count() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1167:6 #50 0x00007f965f2be7d3 std::__weak_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2>::~__weak_ptr() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1997:29 #51 0x00007f965f2be7d3 lldb_private::CompilerType::~CompilerType() /usr/local/google/home/zequanwu/work/llvm-project/lldb/include/lldb/Symbol/CompilerType.h:37:7 #52 0x00007f965f2be7d3 lldb_private::TypeSystemClang::CompleteTagDecl(clang::TagDecl*) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:9099:3 #53 0x00007f965f2c378a clang::TagDecl::isCompleteDefinition() const /usr/local/google/home/zequanwu/work/llvm-project/llvm/../clang/include/clang/AST/Decl.h:3688:46 #54 0x00007f965f2c378a GetCompleteRecordType(clang::ASTContext*, clang::QualType, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:2641:26 #55 0x00007f965f2a963a GetCompleteQualType(clang::ASTContext*, clang::QualType, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:2744:13 #56 0x00007f965f2b5746 lldb_private::TypeSystemClang::GetIndexOfChildMemberWithName(void*, llvm::StringRef, bool, std::vector<unsigned int, std::allocator<unsigned int>>&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:6742:11 #57 0x00007f965ed7eaf5 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:337:8 #58 0x00007f965ed7eaf5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1069:11 #59 0x00007f965ed7eaf5 std::__shared_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1525:31 #60 0x00007f965ed7eaf5 lldb_private::CompilerType::TypeSystemSPWrapper::~TypeSystemSPWrapper() /usr/local/google/home/zequanwu/work/llvm-project/lldb/include/lldb/Symbol/CompilerType.h:50:9 #61 0x00007f965ed7eaf5 lldb_private::CompilerType::GetIndexOfChildMemberWithName(llvm::StringRef, bool, std::vector<unsigned int, std::allocator<unsigned int>>&) const /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Symbol/CompilerType.cpp:971:14 #62 0x00007f965f2b5aa1 lldb_private::TypeSystemClang::GetIndexOfChildMemberWithName(void*, llvm::StringRef, bool, std::vector<unsigned int, std::allocator<unsigned int>>&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:0:0 #63 0x00007f965ed7eaf5 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:337:8 #64 0x00007f965ed7eaf5 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1069:11 #65 0x00007f965ed7eaf5 std::__shared_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1525:31 #66 0x00007f965ed7eaf5 lldb_private::CompilerType::TypeSystemSPWrapper::~TypeSystemSPWrapper() /usr/local/google/home/zequanwu/work/llvm-project/lldb/include/lldb/Symbol/CompilerType.h:50:9 #67 0x00007f965ed7eaf5 lldb_private::CompilerType::GetIndexOfChildMemberWithName(llvm::StringRef, bool, std::vector<unsigned int, std::allocator<unsigned int>>&) const /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Symbol/CompilerType.cpp:971:14 #68 0x00007f965eeffd78 std::__weak_count<(__gnu_cxx::_Lock_policy)2>::~__weak_count() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1167:6 #69 0x00007f965eeffd78 std::__weak_ptr<lldb_private::TypeSystem, (__gnu_cxx::_Lock_policy)2>::~__weak_ptr() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1997:29 #70 0x00007f965eeffd78 lldb_private::CompilerType::~CompilerType() /usr/local/google/home/zequanwu/work/llvm-project/lldb/include/lldb/Symbol/CompilerType.h:37:7 #71 0x00007f965eeffd78 lldb_private::ValueObject::GetChildMemberWithName(llvm::StringRef, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/ValueObject/ValueObject.cpp:428:7 #72 0x00007f96612c71f5 std::__shared_ptr<lldb_private::ValueObject, (__gnu_cxx::_Lock_policy)2>::operator bool() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1671:16 #73 0x00007f96612c71f5 lldb_private::ClangExpressionUtil::GetLambdaValueObject(lldb_private::StackFrame*) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionUtil.cpp:21:9 #74 0x00007f96612d28f8 std::__shared_ptr<lldb_private::ValueObject, (__gnu_cxx::_Lock_policy)2>::operator bool() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/shared_ptr_base.h:1671:16 #75 0x00007f96612d28f8 (anonymous namespace)::AddLambdaCaptureDecls(lldb_private::StreamString&, lldb_private::StackFrame*, (anonymous namespace)::TokenVerifier const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp:231:12 #76 0x00007f96612d28f8 lldb_private::ClangExpressionSourceCode::AddLocalVariableDecls(lldb_private::StreamString&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, lldb_private::StackFrame*) const /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp:324:7 #77 0x00007f96612d3626 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_M_data() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/basic_string.h:228:28 #78 0x00007f96612d3626 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_M_is_local() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/basic_string.h:269:6 #79 0x00007f96612d3626 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_M_dispose() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/basic_string.h:287:7 #80 0x00007f96612d3626 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::~basic_string() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/basic_string.h:809:9 #81 0x00007f96612d3626 lldb_private::ClangExpressionSourceCode::GetText(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, lldb_private::ExecutionContext&, bool, bool, llvm::ArrayRef<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) const /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp:427:9 #82 0x00007f96612de50b lldb_private::ClangUserExpression::CreateSourceCode(lldb_private::DiagnosticManager&, lldb_private::ExecutionContext&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp:424:9 #83 0x00007f96612df342 std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>::~vector() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/stl_vector.h:735:30 #84 0x00007f96612df342 lldb_private::ClangUserExpression::PrepareForParsing(lldb_private::DiagnosticManager&, lldb_private::ExecutionContext&, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp:549:3 #85 0x00007f96612e017c lldb_private::ClangUserExpression::Parse(lldb_private::DiagnosticManager&, lldb_private::ExecutionContext&, lldb_private::ExecutionPolicy, bool, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp:653:7 #86 0x00007f965ecf50a0 lldb_private::UserExpression::Evaluate(lldb_private::ExecutionContext&, lldb_private::EvaluateExpressionOptions const&, llvm::StringRef, llvm::StringRef, std::shared_ptr<lldb_private::ValueObject>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, lldb_private::ValueObject*) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Expression/UserExpression.cpp:280:27 #87 0x00007f965ee664f0 lldb_private::Target::EvaluateExpression(llvm::StringRef, lldb_private::ExecutionContextScope*, std::shared_ptr<lldb_private::ValueObject>&, lldb_private::EvaluateExpressionOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, lldb_private::ValueObject*) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Target/Target.cpp:2858:25 #88 0x00007f96611a2794 lldb_private::CommandObjectExpression::EvaluateExpression(llvm::StringRef, lldb_private::Stream&, lldb_private::Stream&, lldb_private::CommandReturnObject&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Commands/CommandObjectExpression.cpp:428:38 #89 0x00007f96611a39f5 lldb_private::CommandObjectExpression::DoExecute(llvm::StringRef, lldb_private::CommandReturnObject&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Commands/CommandObjectExpression.cpp:668:7 #90 0x00007f965ed45d60 lldb_private::CommandObject::Cleanup() /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Interpreter/CommandObject.cpp:268:3 #91 0x00007f965ed45d60 lldb_private::CommandObjectRaw::Execute(char const*, lldb_private::CommandReturnObject&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Interpreter/CommandObject.cpp:855:5 #92 0x00007f965ed34d65 lldb_private::ElapsedTime::~ElapsedTime() /usr/local/google/home/zequanwu/work/llvm-project/lldb/include/lldb/Target/Statistics.h:88:36 #93 0x00007f965ed34d65 lldb_private::CommandInterpreter::HandleCommand(char const*, lldb_private::LazyBool, lldb_private::CommandReturnObject&, bool) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Interpreter/CommandInterpreter.cpp:2128:3 #94 0x00007f965ed395f0 lldb_private::CommandInterpreter::IOHandlerInputComplete(lldb_private::IOHandler&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Interpreter/CommandInterpreter.cpp:3229:15 #95 0x00007f965ec8aa94 lldb_private::IOHandlerEditline::Run() /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Core/IOHandler.cpp:0:22 #96 0x00007f965ec66bbc __gthread_mutex_lock(pthread_mutex_t*) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/x86_64-linux-gnu/c++/14/bits/gthr-default.h:762:12 #97 0x00007f965ec66bbc __gthread_recursive_mutex_lock(pthread_mutex_t*) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/x86_64-linux-gnu/c++/14/bits/gthr-default.h:824:10 #98 0x00007f965ec66bbc std::recursive_mutex::lock() /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/mutex:125:17 #99 0x00007f965ec66bbc std::lock_guard<std::recursive_mutex>::lock_guard(std::recursive_mutex&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_mutex.h:250:19 #100 0x00007f965ec66bbc lldb_private::Debugger::RunIOHandlers() /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Core/Debugger.cpp:1163:45 #101 0x00007f965ed3b856 lldb_private::CommandInterpreter::RunCommandInterpreter(lldb_private::CommandInterpreterRunOptions&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/Interpreter/CommandInterpreter.cpp:3519:5 #102 0x00007f965ea73d53 lldb::SBDebugger::RunCommandInterpreter(lldb::SBCommandInterpreterRunOptions const&) /usr/local/google/home/zequanwu/work/llvm-project/lldb/source/API/SBDebugger.cpp:1288:14 #103 0x00005584fddc2b8d Driver::MainLoop() /usr/local/google/home/zequanwu/work/llvm-project/lldb/tools/driver/Driver.cpp:558:17 #104 0x00005584fddc3a74 main /usr/local/google/home/zequanwu/work/llvm-project/lldb/tools/driver/Driver.cpp:810:26 #105 0x00007f9658c33d68 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3 #106 0x00007f9658c33e25 call_init ./csu/../csu/libc-start.c:128:20 #107 0x00007f9658c33e25 __libc_start_main ./csu/../csu/libc-start.c:347:5 #108 0x00005584fddbfd51 _start (/usr/local/google/home/zequanwu/work/llvm-project/out/cmake-reldbg/bin/lldb+0x22d51) [1] 341741 segmentation fault (core dumped) /usr/local/google/home/zequanwu/work/llvm-project/out/cmake-reldbg/bin/lldb ```
https://github.com/llvm/llvm-project/pull/130768 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits