diff options
Diffstat (limited to 'lld/lib/ReaderWriter/FileArchive.cpp')
-rw-r--r-- | lld/lib/ReaderWriter/FileArchive.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lld/lib/ReaderWriter/FileArchive.cpp b/lld/lib/ReaderWriter/FileArchive.cpp index d1f65e02a5e..d54a82d0f2c 100644 --- a/lld/lib/ReaderWriter/FileArchive.cpp +++ b/lld/lib/ReaderWriter/FileArchive.cpp @@ -113,7 +113,10 @@ protected: } error_code isDataSymbol(MemoryBuffer *mb, StringRef symbol) const { - std::unique_ptr<ObjectFile> obj(ObjectFile::createObjectFile(mb)); + auto objOrErr(ObjectFile::createObjectFile(mb)); + if (auto ec = objOrErr.getError()) + return ec; + std::unique_ptr<ObjectFile> obj(objOrErr.get()); error_code ec; SymbolRef::Type symtype; uint32_t symflags; |