Revert r360876 "[Object] Change object::SectionRef::getContents() to return Expected<StringRef>"
It broke the Clang build, see llvm-commits thread.
> Expected<ArrayRef<uint8_t>> may be better but use Expected<StringRef> for now.
>
> Follow-up of D61781.
llvm-svn: 360878
diff --git a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
index 4bf308f..ff2ce46 100644
--- a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
+++ b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
@@ -453,11 +453,13 @@
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()});
}