[PATCH] D88113: [llvm-objcopy][NFC] refactor error handling. part 1.
Alexey Lapshin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 23 07:07:01 PDT 2020
avl added inline comments.
================
Comment at: llvm/tools/llvm-objcopy/MachO/MachOReader.cpp:89
if (!SecRef)
- reportError(MachOObj.getFileName(), SecRef.takeError());
+ return createStringError(errc::invalid_argument,
+ "'" + MachOObj.getFileName() +
----------------
jhenderson wrote:
> Can you use the error code associated with `SecRef` instead of `errc::invalid_argument` here?
As far as I understand that could be done in that way:
```
inline Error errorWithContext(StringRef Context, Error E) {
assert(E);
std::string Buf;
raw_string_ostream OS(Buf);
Optional<std::error_code> EC;
handleAllErrors(std::move(E), [&](const ErrorInfoBase &EI) {
OS << "'" + Context + "': ";
if (!EC)
EC = EI.convertToErrorCode();
EI.log(OS);
OS << "\n";
});
OS.flush();
return createStringError(*EC, Buf);
}
```
but you`ve asked me to not create a special routine for that.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D88113/new/
https://reviews.llvm.org/D88113
More information about the llvm-commits
mailing list