SmallVector<StringRef, 8> parts;
Names.split(parts, "|");
for (auto Name : parts) {
- auto P = sys::findProgramByName(Name);
- if (P) {
+ if (ErrorOr<std::string> P = sys::findProgramByName(Name)) {
ProgramPath = *P;
return true;
}
std::string tool = OptCmd;
if (OptCmd.empty()) {
- auto Path = sys::findProgramByName("opt");
- if (!Path)
- errs() << Path.getError().message() << "\n";
- else
+ if (ErrorOr<std::string> Path = sys::findProgramByName("opt"))
tool = *Path;
+ else
+ errs() << Path.getError().message() << "\n";
}
if (tool.empty()) {
errs() << "Cannot find `opt' in PATH!\n";
std::string Prog;
if (UseValgrind) {
- auto Path = sys::findProgramByName("valgrind");
- if (!Path)
- errs() << Path.getError().message() << "\n";
- else
+ if (ErrorOr<std::string> Path = sys::findProgramByName("valgrind"))
Prog = *Path;
+ else
+ errs() << Path.getError().message() << "\n";
} else
Prog = tool;
if (Prog.empty()) {