Issue 87176
Summary SymbolFileDWARFDebugMap::FindTypes only finds types defined in the first compile unit
Labels new issue
Assignees
Reporter pabusse
    The early-exit condition inside `SymbolFileDWARFDebugMap::FindTypes ` is inverted:

```cpp
void SymbolFileDWARFDebugMap::FindTypes(const TypeQuery &query,
 TypeResults &results) {
 std::lock_guard<std::recursive_mutex> guard(GetModuleMutex());
 ForEachSymbolFile([&](SymbolFileDWARF *oso_dwarf) -> bool {
 oso_dwarf->FindTypes(query, results);
    return !results.Done(query); // Keep iterating if we aren't done.
 });
}
```

`ForEachSymbolFile` stops iterating when the closure returns `true`. As a result, type queries only consider the first compile unit in a module.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to