summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-objdump/ELFDump.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/llvm-objdump/ELFDump.cpp')
-rw-r--r--llvm/tools/llvm-objdump/ELFDump.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/tools/llvm-objdump/ELFDump.cpp b/llvm/tools/llvm-objdump/ELFDump.cpp
index 7b44e3916c4..e9e0bcf30e8 100644
--- a/llvm/tools/llvm-objdump/ELFDump.cpp
+++ b/llvm/tools/llvm-objdump/ELFDump.cpp
@@ -24,7 +24,10 @@ using namespace llvm::object;
template <class ELFT> void printProgramHeaders(const ELFFile<ELFT> *o) {
typedef ELFFile<ELFT> ELFO;
outs() << "Program Header:\n";
- for (const typename ELFO::Elf_Phdr &Phdr : o->program_headers()) {
+ auto ProgramHeaderOrError = o->program_headers();
+ if (std::error_code EC = ProgramHeaderOrError.getError())
+ report_fatal_error(EC.message());
+ for (const typename ELFO::Elf_Phdr &Phdr : *ProgramHeaderOrError) {
switch (Phdr.p_type) {
case ELF::PT_LOAD:
outs() << " LOAD ";
OpenPOWER on IntegriCloud