summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object/MachOObjectFile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Object/MachOObjectFile.cpp')
-rw-r--r--llvm/lib/Object/MachOObjectFile.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/llvm/lib/Object/MachOObjectFile.cpp b/llvm/lib/Object/MachOObjectFile.cpp
index 50f0dd3dc4e..864d76f7112 100644
--- a/llvm/lib/Object/MachOObjectFile.cpp
+++ b/llvm/lib/Object/MachOObjectFile.cpp
@@ -2421,21 +2421,18 @@ bool MachOObjectFile::isRelocatableObject() const {
return getHeader().filetype == MachO::MH_OBJECT;
}
-ErrorOr<std::unique_ptr<MachOObjectFile>>
+Expected<std::unique_ptr<MachOObjectFile>>
ObjectFile::createMachOObjectFile(MemoryBufferRef Buffer) {
StringRef Magic = Buffer.getBuffer().slice(0, 4);
if (Magic == "\xFE\xED\xFA\xCE")
- return expectedToErrorOr(
- MachOObjectFile::create(Buffer, false, false));
+ return MachOObjectFile::create(Buffer, false, false);
else if (Magic == "\xCE\xFA\xED\xFE")
- return expectedToErrorOr(
- MachOObjectFile::create(Buffer, true, false));
+ return MachOObjectFile::create(Buffer, true, false);
else if (Magic == "\xFE\xED\xFA\xCF")
- return expectedToErrorOr(
- MachOObjectFile::create(Buffer, false, true));
+ return MachOObjectFile::create(Buffer, false, true);
else if (Magic == "\xCF\xFA\xED\xFE")
- return expectedToErrorOr(
- MachOObjectFile::create(Buffer, true, true));
+ return MachOObjectFile::create(Buffer, true, true);
//else
- return object_error::parse_failed;
+ return malformedError(Buffer.getBufferIdentifier(),
+ "Unrecognized MachO magic number");
}
OpenPOWER on IntegriCloud