diff options
Diffstat (limited to 'lld/COFF')
-rw-r--r-- | lld/COFF/SymbolTable.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lld/COFF/SymbolTable.cpp b/lld/COFF/SymbolTable.cpp index 4b6555210d1a..82bd17a068a4 100644 --- a/lld/COFF/SymbolTable.cpp +++ b/lld/COFF/SymbolTable.cpp @@ -209,6 +209,10 @@ std::pair<StringRef, Symbol *> SymbolTable::findMangled(StringRef S) { Symbol *Sym = I.second; if (!Name.startswith(Prefix)) continue; + if (auto *B = dyn_cast<Lazy>(Sym->Body)) { + addMemberFile(B); + run(); + } if (isa<Defined>(Sym->Body)) return std::make_pair(Name, Sym); } |