diff options
Diffstat (limited to 'lld/lib/Driver/DarwinLdDriver.cpp')
-rw-r--r-- | lld/lib/Driver/DarwinLdDriver.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lld/lib/Driver/DarwinLdDriver.cpp b/lld/lib/Driver/DarwinLdDriver.cpp index 992f8adc8c0..ea4600096fb 100644 --- a/lld/lib/Driver/DarwinLdDriver.cpp +++ b/lld/lib/Driver/DarwinLdDriver.cpp @@ -80,9 +80,12 @@ loadFile(MachOLinkingContext &ctx, StringRef path, ErrorOr<std::unique_ptr<MemoryBuffer>> mbOrErr = ctx.getMemoryBuffer(path); if (std::error_code ec = mbOrErr.getError()) return makeErrorFile(path, ec); - std::vector<std::unique_ptr<File>> files; - if (std::error_code ec = ctx.registry().loadFile(std::move(mbOrErr.get()), files)) + std::unique_ptr<File> file; + if (std::error_code ec = + ctx.registry().loadFile(std::move(mbOrErr.get()), file)) return makeErrorFile(path, ec); + std::vector<std::unique_ptr<File>> files; + files.push_back(std::move(file)); for (std::unique_ptr<File> &pf : files) { // If file is a dylib, inform LinkingContext about it. if (SharedLibraryFile *shl = dyn_cast<SharedLibraryFile>(pf.get())) { |