aboutsummaryrefslogtreecommitdiff
path: root/lld/ELF/SymbolTable.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lld/ELF/SymbolTable.cpp')
-rw-r--r--lld/ELF/SymbolTable.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lld/ELF/SymbolTable.cpp b/lld/ELF/SymbolTable.cpp
index 6283d943984a..70aea288c53f 100644
--- a/lld/ELF/SymbolTable.cpp
+++ b/lld/ELF/SymbolTable.cpp
@@ -42,7 +42,7 @@ void SymbolTable::wrap(Symbol *sym, Symbol *real, Symbol *wrap) {
if (real->exportDynamic)
sym->exportDynamic = true;
- if (sym->isUndefined())
+ if (!real->isUsedInRegularObj && sym->isUndefined())
sym->isUsedInRegularObj = false;
// Now renaming is complete, and no one refers to real. We drop real from