llvm-project/llvm/tools/llvm-readobj
Kevin Enderby 42398051d8 Finish cleaning up most of the error handling in libObject’s MachOUniversalBinary
and its clients to use the new llvm::Error model for error handling.

Changed getAsArchive() from ErrorOr<...> to Expected<...> so now all
interfaces there use the new llvm::Error model for return values.

In the two places it had if (!Parent) this is actually a program error so changed
from returning errorCodeToError(object_error::parse_failed) to calling
report_fatal_error() with a message.

In getObjectForArch() added error messages to its two llvm::Error return values
instead of returning errorCodeToError(object_error::arch_not_found) with no
error message.

For the llvm-obdump, llvm-nm and llvm-size clients since the only binary files in
Mach-O Universal Binaries that are supported are Mach-O files or archives with
Mach-O objects, updated their logic to generate an error when a slice contains
something like an ELF binary instead of ignoring it. And added a test case for
that.

The last error stuff to be cleaned up for libObject’s MachOUniversalBinary is
the use of errorOrToExpected(Archive::create(ObjBuffer)) which needs
Archive::create() to be changed from ErrorOr<...> to Expected<...> first,
which I’ll work on next. 

llvm-svn: 274079
2016-06-28 23:16:13 +00:00
..
ARMAttributeParser.cpp Move llvm-readobj/StreamWriter to Support. 2016-05-03 00:28:04 +00:00
ARMAttributeParser.h Move llvm-readobj/StreamWriter to Support. 2016-05-03 00:28:04 +00:00
ARMEHABIPrinter.h Move llvm-readobj/StreamWriter to Support. 2016-05-03 00:28:04 +00:00
ARMWinEHPrinter.cpp Thread Expected<...> up from libObject’s getSymbolAddress() for symbols to allow 2016-06-24 18:24:42 +00:00
ARMWinEHPrinter.h Move llvm-readobj/StreamWriter to Support. 2016-05-03 00:28:04 +00:00
CMakeLists.txt [codeview] Add type stream merging prototype 2016-05-14 00:02:53 +00:00
COFFDumper.cpp Delete some dead code. 2016-06-21 19:48:12 +00:00
COFFImportDumper.cpp llvm-readobj: Dump more info for COFF import libraries. 2015-08-28 10:27:50 +00:00
CodeView.h Silence gcc warning about ternary and enumerations 2016-01-28 23:59:35 +00:00
ELFDumper.cpp [llvm-readobj] - Teach llvm-readobj to print dependencies of SHT_GNU_verdef and refactor dumping method. 2016-06-22 13:43:38 +00:00
Error.cpp Add FIXMEs to all derived classes of std::error_category. 2016-05-24 20:13:46 +00:00
Error.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
LLVMBuild.txt
MachODumper.cpp Move llvm-readobj/StreamWriter to Support. 2016-05-03 00:28:04 +00:00
ObjDumper.cpp Move llvm-readobj/StreamWriter to Support. 2016-05-03 00:28:04 +00:00
ObjDumper.h [COFF] Expose the PE debug data directory and dump it 2016-06-02 17:10:43 +00:00
StackMapPrinter.h [StackMaps] Add a lightweight parser for stackmap version 1 sections. 2015-06-26 23:56:53 +00:00
Win64EHDumper.cpp Thread Expected<...> up from libObject’s getSymbolAddress() for symbols to allow 2016-06-24 18:24:42 +00:00
Win64EHDumper.h Move llvm-readobj/StreamWriter to Support. 2016-05-03 00:28:04 +00:00
llvm-readobj.cpp Finish cleaning up most of the error handling in libObject’s MachOUniversalBinary 2016-06-28 23:16:13 +00:00
llvm-readobj.h Thread Expected<...> up from libObject’s getName() for symbols to allow llvm-objdump to produce a good error message. 2016-04-20 21:24:34 +00:00