diff --git a/lld/ELF/SymbolTable.cpp b/lld/ELF/SymbolTable.cpp index 00e21d0016f6..4d7c163a9c61 100644 --- a/lld/ELF/SymbolTable.cpp +++ b/lld/ELF/SymbolTable.cpp @@ -78,6 +78,7 @@ void SymbolTable::addFile(std::unique_ptr File) { resolve(B); } +// Add an undefined symbol. template SymbolBody *SymbolTable::addUndefined(StringRef Name) { auto *Sym = new (Alloc) Undefined(Name, false, STV_DEFAULT, false); @@ -85,6 +86,8 @@ SymbolBody *SymbolTable::addUndefined(StringRef Name) { return Sym; } +// Add an undefined symbol. Unlike addUndefined, that symbol +// doesn't have to be resolved, thus "opt" (optional). template SymbolBody *SymbolTable::addUndefinedOpt(StringRef Name) { auto *Sym = new (Alloc) Undefined(Name, false, STV_HIDDEN, true);