aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Object
diff options
context:
space:
mode:
authorAlexey Samsonov <samsonov@google.com>2013-06-28 09:44:05 +0000
committerAlexey Samsonov <samsonov@google.com>2013-06-28 09:44:05 +0000
commitf49d8fcbd594007ac6f25a1f1f90919221011f97 (patch)
treeac4fd6b9ba6eb7d7bb541886caffd0fbd8144a9e /lib/Object
parent8175bc3d3bc8567a90b9dd50d68c1423baffd63b (diff)
downloadexternal_llvm-f49d8fcbd594007ac6f25a1f1f90919221011f97.zip
external_llvm-f49d8fcbd594007ac6f25a1f1f90919221011f97.tar.gz
external_llvm-f49d8fcbd594007ac6f25a1f1f90919221011f97.tar.bz2
Make a switch in createBinary fully-covered. Add forgotten macho_dsym_companion case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185139 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Object')
-rw-r--r--lib/Object/Binary.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/Object/Binary.cpp b/lib/Object/Binary.cpp
index 177c86c..fd9d3b4 100644
--- a/lib/Object/Binary.cpp
+++ b/lib/Object/Binary.cpp
@@ -75,7 +75,8 @@ error_code object::createBinary(MemoryBuffer *Source,
case sys::fs::file_magic::macho_dynamically_linked_shared_lib:
case sys::fs::file_magic::macho_dynamic_linker:
case sys::fs::file_magic::macho_bundle:
- case sys::fs::file_magic::macho_dynamically_linked_shared_lib_stub: {
+ case sys::fs::file_magic::macho_dynamically_linked_shared_lib_stub:
+ case sys::fs::file_magic::macho_dsym_companion: {
OwningPtr<Binary> ret(
ObjectFile::createMachOObjectFile(scopedSource.take()));
if (!ret)
@@ -98,9 +99,13 @@ error_code object::createBinary(MemoryBuffer *Source,
Result.swap(ret);
return object_error::success;
}
- default: // Unrecognized object file format.
+ case sys::fs::file_magic::unknown:
+ case sys::fs::file_magic::bitcode: {
+ // Unrecognized object file format.
return object_error::invalid_file_type;
+ }
}
+ llvm_unreachable("Unexpected Binary File Type");
}
error_code object::createBinary(StringRef Path, OwningPtr<Binary> &Result) {