diff options
author | Rui Ueyama <ruiu@google.com> | 2015-01-14 00:21:34 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2015-01-14 00:21:34 +0000 |
commit | cfb2534ef859268bfaeedb4a59c0599fae452a7a (patch) | |
tree | 7184edd088a651b4afe6b5332ce6c5ec4fb8c014 /lld/lib/ReaderWriter/FileArchive.cpp | |
parent | 8efadbf868198022a2fe25fe2d9af9439cedae0b (diff) | |
download | bcm5719-llvm-cfb2534ef859268bfaeedb4a59c0599fae452a7a.tar.gz bcm5719-llvm-cfb2534ef859268bfaeedb4a59c0599fae452a7a.zip |
Revert "Convert other drivers to use WrapperNode" and subsequent commits.
r225764 broke a basic functionality on Mac OS. This change reverts
r225764, r225766, r225767, r225769, r225814, r225816, r225829, and r225832.
llvm-svn: 225859
Diffstat (limited to 'lld/lib/ReaderWriter/FileArchive.cpp')
-rw-r--r-- | lld/lib/ReaderWriter/FileArchive.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/lld/lib/ReaderWriter/FileArchive.cpp b/lld/lib/ReaderWriter/FileArchive.cpp index a344fdf72a7..5080c2a819d 100644 --- a/lld/lib/ReaderWriter/FileArchive.cpp +++ b/lld/lib/ReaderWriter/FileArchive.cpp @@ -67,9 +67,7 @@ public: /// \brief parse each member std::error_code - parseAllMembers(std::vector<std::unique_ptr<File>> &result) override { - if (std::error_code ec = parse()) - return ec; + parseAllMembers(std::vector<std::unique_ptr<File>> &result) const override { for (auto mf = _archive->child_begin(), me = _archive->child_end(); mf != me; ++mf) { std::unique_ptr<File> file; @@ -154,12 +152,9 @@ private: mb.getBuffer(), memberPath, false)); std::vector<std::unique_ptr<File>> files; - if (std::error_code ec = _registry.loadFile(std::move(memberMB), files)) - return ec; + _registry.parseFile(std::move(memberMB), files); assert(files.size() == 1); result = std::move(files[0]); - if (std::error_code ec = result->parse()) - return ec; // The memory buffer is co-owned by the archive file and the children, // so that the bufffer is deallocated when all the members are destructed. @@ -237,8 +232,8 @@ public: } std::error_code - loadFile(std::unique_ptr<MemoryBuffer> mb, const Registry ®, - std::vector<std::unique_ptr<File>> &result) const override { + parseFile(std::unique_ptr<MemoryBuffer> mb, const Registry ®, + std::vector<std::unique_ptr<File>> &result) const override { StringRef path = mb->getBufferIdentifier(); std::unique_ptr<FileArchive> file( new FileArchive(std::move(mb), reg, path, _logLoading)); |