for (const auto &Input : Inputs) {
auto ErrOrObj = object::ObjectFile::createObjectFile(Input);
- if (!ErrOrObj) {
- return handleErrors(ErrOrObj.takeError(),
- [&](std::unique_ptr<ECError> EC) -> Error {
- return createFileError(Input, Error(std::move(EC)));
- });
- }
+ if (!ErrOrObj)
+ return ErrOrObj.takeError();
auto &Obj = *ErrOrObj->getBinary();
Objects.push_back(std::move(*ErrOrObj));
+++ /dev/null
-RUN: rm -rf %t
-RUN: mkdir %t
-RUN: cd %t
-RUN: cp %p/../Inputs/dwos_list_from_exec/b.dwo b.dwo
-RUN: cp %p/../Inputs/dwos_list_from_exec/main main
-RUN: not llvm-dwp -e binary -o /dev/null 2>&1 | FileCheck %s --check-prefix=CHECK-BIN
-RUN: not llvm-dwp -e main -o /dev/null 2>&1 | FileCheck %s --check-prefix=CHECK-1ST-DWO
-RUN: cp %p/../Inputs/dwos_list_from_exec/a.dwo a.dwo
-RUN: rm b.dwo
-RUN: not llvm-dwp -e main -o /dev/null 2>&1 | FileCheck %s --check-prefix=CHECK-2ND-DWO
-
-Build commands for the test binaries:
-
-clang++ -Xclang -fdebug-compilation-dir -Xclang "./" -g -O0 -gsplit-dwarf a.cpp b.cpp -o main
-
-sources:
-a.cpp:
- void a() {}
-
-b.cpp:
- void b() {}
- int main() {
- return 0;
- }
-
-CHECK-BIN: error: 'binary': No such file or directory
-CHECK-1ST-DWO: error: './a.dwo': No such file or directory
-CHECK-2ND-DWO: error: './b.dwo': No such file or directory
for (const auto &ExecFilename : ExecFilenames) {
auto DWOs = getDWOFilenames(ExecFilename);
if (!DWOs) {
- logAllUnhandledErrors(
- handleErrors(DWOs.takeError(),
- [&](std::unique_ptr<ECError> EC) -> Error {
- return createFileError(ExecFilename,
- Error(std::move(EC)));
- }),
- WithColor::error());
+ logAllUnhandledErrors(DWOs.takeError(), WithColor::error());
return 1;
}
DWOFilenames.insert(DWOFilenames.end(),
auto ErrOrTriple = readTargetTriple(DWOFilenames.front());
if (!ErrOrTriple) {
- logAllUnhandledErrors(
- handleErrors(ErrOrTriple.takeError(),
- [&](std::unique_ptr<ECError> EC) -> Error {
- return createFileError(DWOFilenames.front(),
- Error(std::move(EC)));
- }),
- WithColor::error());
+ logAllUnhandledErrors(ErrOrTriple.takeError(), WithColor::error());
return 1;
}