diff options
author | Hans Wennborg <hans@hanshq.net> | 2019-05-16 12:08:34 +0000 |
---|---|---|
committer | Hans Wennborg <hans@hanshq.net> | 2019-05-16 12:08:34 +0000 |
commit | 4da9ff9fcfe8987472dc894489597bd338aac85e (patch) | |
tree | 21bc0332451ec4093db5da5255ee98577ac5926e /llvm/lib/Object/IRObjectFile.cpp | |
parent | a8f88c388f75cb03bd21beb0b64f87d8a8727254 (diff) | |
download | bcm5719-llvm-4da9ff9fcfe8987472dc894489597bd338aac85e.tar.gz bcm5719-llvm-4da9ff9fcfe8987472dc894489597bd338aac85e.zip |
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
Diffstat (limited to 'llvm/lib/Object/IRObjectFile.cpp')
-rw-r--r-- | llvm/lib/Object/IRObjectFile.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/llvm/lib/Object/IRObjectFile.cpp b/llvm/lib/Object/IRObjectFile.cpp index 636f1521262..debe7899bfe 100644 --- a/llvm/lib/Object/IRObjectFile.cpp +++ b/llvm/lib/Object/IRObjectFile.cpp @@ -74,12 +74,12 @@ Expected<MemoryBufferRef> IRObjectFile::findBitcodeInObject(const ObjectFile &Obj) { for (const SectionRef &Sec : Obj.sections()) { if (Sec.isBitcode()) { - Expected<StringRef> Contents = Sec.getContents(); - if (!Contents) - return Contents.takeError(); - if (Contents->size() <= 1) + StringRef SecContents; + if (std::error_code EC = Sec.getContents(SecContents)) + return errorCodeToError(EC); + if (SecContents.size() <= 1) return errorCodeToError(object_error::bitcode_section_not_found); - return MemoryBufferRef(*Contents, Obj.getFileName()); + return MemoryBufferRef(SecContents, Obj.getFileName()); } } |