diff options
Diffstat (limited to 'llvm/tools/obj2yaml/elf2yaml.cpp')
-rw-r--r-- | llvm/tools/obj2yaml/elf2yaml.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/tools/obj2yaml/elf2yaml.cpp b/llvm/tools/obj2yaml/elf2yaml.cpp index bd27c103403..dea3cf73a5d 100644 --- a/llvm/tools/obj2yaml/elf2yaml.cpp +++ b/llvm/tools/obj2yaml/elf2yaml.cpp @@ -376,8 +376,12 @@ Error ELFDumper<ELFT>::dumpCommonSection(const Elf_Shdr *Shdr, if (Shdr->sh_link != ELF::SHN_UNDEF) { auto LinkSection = Obj.getSection(Shdr->sh_link); - if (LinkSection.takeError()) - return LinkSection.takeError(); + if (!LinkSection) + return make_error<StringError>( + "unable to resolve sh_link reference in section '" + S.Name + + "': " + toString(LinkSection.takeError()), + inconvertibleErrorCode()); + NameOrErr = getUniquedSectionName(*LinkSection); if (!NameOrErr) return NameOrErr.takeError(); |