diff options
Diffstat (limited to 'llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp')
| -rw-r--r-- | llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp index 4bf308f87c2..ff2ce46a01d 100644 --- a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp +++ b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp @@ -453,11 +453,13 @@ Error FileAnalysis::parseCodeSections() { if (!Section.getName(SectionName) && SectionName == ".plt") continue; - Expected<StringRef> Contents = Section.getContents(); - if (!Contents) - return Contents.takeError(); - ArrayRef<uint8_t> SectionBytes = arrayRefFromStringRef(*Contents); + StringRef SectionContents; + if (Section.getContents(SectionContents)) + return make_error<StringError>("Failed to retrieve section contents", + inconvertibleErrorCode()); + ArrayRef<uint8_t> SectionBytes((const uint8_t *)SectionContents.data(), + Section.getSize()); parseSectionContents(SectionBytes, {Section.getAddress(), Section.getIndex()}); } |

