summaryrefslogtreecommitdiffstats
path: root/llvm/tools/obj2yaml/elf2yaml.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/obj2yaml/elf2yaml.cpp')
-rw-r--r--llvm/tools/obj2yaml/elf2yaml.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/llvm/tools/obj2yaml/elf2yaml.cpp b/llvm/tools/obj2yaml/elf2yaml.cpp
index dbb8c7d436b..ffcb2d0ece4 100644
--- a/llvm/tools/obj2yaml/elf2yaml.cpp
+++ b/llvm/tools/obj2yaml/elf2yaml.cpp
@@ -295,7 +295,10 @@ ELFDumper<ELFT>::dumpRelSection(const Elf_Shdr *Shdr) {
return EC;
const Elf_Shdr *SymTab = *SymTabOrErr;
- for (const Elf_Rel &Rel : Obj.rels(Shdr)) {
+ auto Rels = Obj.rels(Shdr);
+ if (std::error_code EC = Rels.getError())
+ return EC;
+ for (const Elf_Rel &Rel : *Rels) {
ELFYAML::Relocation R;
if (std::error_code EC = dumpRelocation(&Rel, SymTab, R))
return EC;
@@ -319,7 +322,10 @@ ELFDumper<ELFT>::dumpRelaSection(const Elf_Shdr *Shdr) {
return EC;
const Elf_Shdr *SymTab = *SymTabOrErr;
- for (const Elf_Rela &Rel : Obj.relas(Shdr)) {
+ auto Rels = Obj.relas(Shdr);
+ if (std::error_code EC = Rels.getError())
+ return EC;
+ for (const Elf_Rela &Rel : *Rels) {
ELFYAML::Relocation R;
if (std::error_code EC = dumpRelocation(&Rel, SymTab, R))
return EC;
OpenPOWER on IntegriCloud