Remove some calls to std::move.

Instead of moving out the data in a ErrorOr<std::unique_ptr<Foo>>, get
a reference to it.

Thanks to David Blaikie for the suggestion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214516 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola
2014-08-01 14:31:55 +00:00
parent a36429f26d
commit 9aa0b5e11e
19 changed files with 65 additions and 66 deletions

View File

@@ -891,11 +891,11 @@ static void DumpInput(StringRef file) {
errs() << ToolName << ": '" << file << "': " << EC.message() << ".\n";
return;
}
std::unique_ptr<Binary> binary = std::move(BinaryOrErr.get());
Binary &Binary = *BinaryOrErr.get();
if (Archive *a = dyn_cast<Archive>(binary.get()))
if (Archive *a = dyn_cast<Archive>(&Binary))
DumpArchive(a);
else if (ObjectFile *o = dyn_cast<ObjectFile>(binary.get()))
else if (ObjectFile *o = dyn_cast<ObjectFile>(&Binary))
DumpObject(o);
else
errs() << ToolName << ": '" << file << "': " << "Unrecognized file type.\n";