Revert r117582, which reverted r77396. Searching PATH for a string
authorDan Gohman <gohman@apple.com>
Thu, 28 Oct 2010 20:34:33 +0000 (20:34 +0000)
committerDan Gohman <gohman@apple.com>
Thu, 28 Oct 2010 20:34:33 +0000 (20:34 +0000)
which contains slashes is inconsistent with the meaning of PATH on
Unix-type platforms, and pretty surprising.

If the user has given a specific path to execute and we can't
execute it, we should fail and say why.  (Apparently the new
posix_spawn code doesn't always say why, but that's a separate
issue.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117596 91177308-0d34-0410-b5e6-96231b3b80d8

lib/System/Unix/Program.inc

index 3741bf8e6bab2a14c47abd80a6b85005c819dba2..110a6d14f48673de8f63e5eed64168f8009c4336 100644 (file)
@@ -63,7 +63,7 @@ Program::FindProgramByName(const std::string& progName) {
     return Path();
   // Use the given path verbatim if it contains any slashes; this matches
   // the behavior of sh(1) and friends.
-  if (progName.find('/') != std::string::npos && temp.canExecute())
+  if (progName.find('/') != std::string::npos)
     return temp;
 
   // At this point, the file name does not contain slashes. Search for it