[all-commits] [llvm/llvm-project] 7b9627: [lldb][SymbolFileDWARF] Fall back to using parent ...
Michael Buch via All-commits
all-commits at lists.llvm.org
Thu May 29 23:16:16 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7b96272bd991adb51240151c779be23a023227c1
https://github.com/llvm/llvm-project/commit/7b96272bd991adb51240151c779be23a023227c1
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-05-30 (Fri, 30 May 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
A lldb/test/API/lang/cpp/decl-from-submodule/Makefile
A lldb/test/API/lang/cpp/decl-from-submodule/TestDeclFromSubmodule.py
A lldb/test/API/lang/cpp/decl-from-submodule/TopLevel/module1.h
A lldb/test/API/lang/cpp/decl-from-submodule/TopLevel/module2.h
A lldb/test/API/lang/cpp/decl-from-submodule/main.cpp
A lldb/test/API/lang/cpp/decl-from-submodule/module.modulemap
Log Message:
-----------
[lldb][SymbolFileDWARF] Fall back to using parent DW_AT_LLVM_include_path for submodules (#142044)
Inferred submodule declarations are emitted in DWARF as `DW_TAG_module`s
without `DW_AT_LLVM_include_path`s. Instead the parent DIE will have the
include path. This patch adds support for such setups. Without this, the
`ClangModulesDeclVendor` would fail to `AddModule` the submodules (i.e.,
compile and load the submodules). This would cause errors such as:
```
note: error: Header search couldn't locate module 'TopLevel'
```
The test added here also tests
https://github.com/llvm/llvm-project/pull/141220. Without that patch
we'd fail with:
```
note: error: No module map file in /Users/jonas/Git/llvm-worktrees/llvm-project/lldb/test/API/lang/cpp/decl-from-submodule
```
Unfortunately the embedded clang instance doesn't allow us to use the
decls we find in the modules. But we'll try to fix that in a separate
patch.
rdar://151022173
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list