[Lldb-commits] [PATCH] D157609: [lldb] Add more ways to find split DWARF files

David Spickett via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Wed Sep 6 06:05:56 PDT 2023


DavidSpickett marked 2 inline comments as done.
DavidSpickett added inline comments.


================
Comment at: lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:1747-1754
     if (!comp_dir) {
       unit.SetDwoError(Status::createWithFormat(
           "unable to locate relative .dwo debug file \"{0}\" for "
           "skeleton DIE {1:x16} without valid DW_AT_comp_dir "
           "attribute",
           dwo_name, cu_die.GetOffset()));
       return nullptr;
----------------
clayborg wrote:
> If we have no comp_dir, then we should still search for the file right? We are returning early here without trying to use the search paths?
Refactored this to log and carry on to the later searches.

We don't test for this situation at all so it's likely very rare, which means logging it is fine. Standard advice on unexplained failures to find things is check the logs.


================
Comment at: lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:1779
+        FileSystem::Instance().Resolve(dirspec);
+        if (!FileSystem::Instance().IsDirectory(dirspec))
+          continue;
----------------
clayborg wrote:
> Will this return false for a symlink to a directory?
In this case no because comp_dir was always being added to it, unless the result of that was also pointing to a symlink.

I have added a test case to check you can set the search path to a symlink, I'm not sure of an easy way to do that for comp_dir.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D157609/new/

https://reviews.llvm.org/D157609



More information about the lldb-commits mailing list