https://github.com/mchoo7 commented:
I followed the instructions in #180444, and this causes stack overflow. (It could be the other PR, but this seems to be more relevant). ``` Stack dump: 0. Program arguments: /home/mchoo/llvm/main/build/bin/lldb empty #0 0x0000000000237f68 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) Signals.cpp:0:0 #1 0x00000000002357bb llvm::sys::RunSignalHandlers() Signals.cpp:0:0 #2 0x0000000000238e12 SignalHandler(int, __siginfo*, void*) Signals.cpp:0:0 #3 0x00000008316489da (/lib/libthr.so.3+0x1a9da) #4 0x0000000831647feb (/lib/libthr.so.3+0x19feb) #5 0x00000008212e82d3 ([vdso]+0x2d3) #6 0x0000000833ac2887 (/lib/libc.so.7+0x19c887) #7 0x0000000833ac1424 (/lib/libc.so.7+0x19b424) #8 0x0000000833ab5166 (/lib/libc.so.7+0x18f166) #9 0x0000000833280c08 operator new(unsigned long) (/lib/libc++.so.1+0xfec08) #10 0x00000008272f09d2 std::__1::vector<unsigned int, std::__1::allocator<unsigned int>>::push_back[abi:sn210108](unsigned int const&) Symtab.cpp:0:0 #11 0x00000008272f166c lldb_private::UniqueCStringMap<unsigned int>::GetValues(lldb_private::ConstString, std::__1::vector<unsigned int, std::__1::allocator<unsigned int>>&) const Symtab.cpp:0:0 #12 0x00000008272f12c8 lldb_private::Symtab::GetNameIndexes(lldb_private::ConstString, std::__1::vector<unsigned int, std::__1::allocator<unsigned int>>&) Symtab.cpp:0:0 #13 0x00000008272f1aa0 lldb_private::Symtab::AppendSymbolIndexesWithNameAndType(lldb_private::ConstString, lldb::SymbolType, std::__1::vector<unsigned int, std::__1::allocator<unsigned int>>&) Symtab.cpp:0:0 #14 0x00000008272f25f1 lldb_private::Symtab::FindAllSymbolsWithNameAndType(lldb_private::ConstString, lldb::SymbolType, std::__1::vector<unsigned int, std::__1::allocator<unsigned int>>&) Symtab.cpp:0:0 #15 0x00000008271c9c81 lldb_private::Module::FindSymbolsWithNameAndType(lldb_private::ConstString, lldb::SymbolType, lldb_private::SymbolContextList&) Module.cpp:0:0 #16 0x00000008271d02a2 lldb_private::ModuleList::FindSymbolsWithNameAndType(lldb_private::ConstString, lldb::SymbolType, lldb_private::SymbolContextList&) const ModuleList.cpp:0:0 #17 0x00000008272e2b08 lldb_private::SymbolContext::FindBestGlobalDataSymbol(lldb_private::ConstString, lldb_private::Status&) SymbolContext.cpp:0:0 #18 0x00000008272e2e5c lldb_private::SymbolContext::FindBestGlobalDataSymbol(lldb_private::ConstString, lldb_private::Status&)::$_0::operator()(lldb_private::SymbolContextList const&, lldb_private::Status&) const SymbolContext.cpp:0:0 #19 0x00000008272e2b17 lldb_private::SymbolContext::FindBestGlobalDataSymbol(lldb_private::ConstString, lldb_private::Status&) SymbolContext.cpp:0:0 #20 0x00000008272e2e5c lldb_private::SymbolContext::FindBestGlobalDataSymbol(lldb_private::ConstString, lldb_private::Status&)::$_0::operator()(lldb_private::SymbolContextList const&, lldb_private::Status&) const SymbolContext.cpp:0:0 ``` So basically infinite recursive calls of `SymbolContext::FindBestGlobalDataSymbol()` https://github.com/llvm/llvm-project/pull/208905 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
