bool llvm::CheckBitcodeOutputToConsole(raw_ostream &stream_to_check,
bool print_warning) {
- if (&stream_to_check == &outs() &&
- sys::Process::StandardOutIsDisplayed()) {
+ if (stream_to_check.is_displayed()) {
if (print_warning) {
errs() << "WARNING: You're attempting to print out a bitcode file.\n"
<< "This is inadvisable as it may cause display problems. If\n"
Result.appendComponent(ExeName);
if (Result.canExecute())
return Result;
+ // If the path is absolute (and it usually is), call FindProgramByName to
+ // allow it to try platform-specific logic, such as appending a .exe suffix
+ // on Windows. Don't do this if we somehow have a relative path, because
+ // we don't want to go searching the PATH and accidentally find an unrelated
+ // version of the program.
+ if (Result.isAbsolute()) {
+ Result = sys::Program::FindProgramByName(Result.str());
+ if (!Result.empty())
+ return Result;
+ }
}
return sys::Path();