diff --git a/lld/ELF/InputFiles.cpp b/lld/ELF/InputFiles.cpp index f504ae068d36..b95aefe467d7 100644 --- a/lld/ELF/InputFiles.cpp +++ b/lld/ELF/InputFiles.cpp @@ -129,7 +129,7 @@ template typename ELFT::SymRange ELFFileBase::getElfSymbols(bool OnlyGlobals) { if (!Symtab) return Elf_Sym_Range(nullptr, nullptr); - Elf_Sym_Range Syms = ELFObj.symbols(Symtab); + Elf_Sym_Range Syms = check(ELFObj.symbols(Symtab)); uint32_t NumSymbols = std::distance(Syms.begin(), Syms.end()); uint32_t FirstNonLocal = Symtab->sh_info; if (FirstNonLocal == 0 || FirstNonLocal > NumSymbols) @@ -896,7 +896,7 @@ template std::vector LazyObjectFile::getElfSymbols() { for (const Elf_Shdr &Sec : Sections) { if (Sec.sh_type != SHT_SYMTAB) continue; - Elf_Sym_Range Syms = Obj.symbols(&Sec); + Elf_Sym_Range Syms = check(Obj.symbols(&Sec)); uint32_t FirstNonLocal = Sec.sh_info; StringRef StringTable = check(Obj.getStringTableForSymtab(Sec, Sections)); std::vector V;