diff options
author | Nico Weber <nicolasweber@gmx.de> | 2015-04-24 22:16:53 +0000 |
---|---|---|
committer | Nico Weber <nicolasweber@gmx.de> | 2015-04-24 22:16:53 +0000 |
commit | 1f0f165d50211e72d41395abd74def920347380e (patch) | |
tree | 7f73ea68bb158f5190a7db1aab1e6937db5ae60c /clang/lib/Driver/Driver.cpp | |
parent | c8d987b12194493d7634c3bde31b0d9340ceb3d2 (diff) | |
download | bcm5719-llvm-1f0f165d50211e72d41395abd74def920347380e.tar.gz bcm5719-llvm-1f0f165d50211e72d41395abd74def920347380e.zip |
clang-cl: Don't look up absolute paths in %LIB%.
Before this patch, passing a non-existent absolute path to clang-cl would cause
stat'ing of impossible paths. For example, `clang-cl -c d:\adsfasdf.txt` would
cause a stat of
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\LIBd:\asdfadsf.cc
llvm-svn: 235787
Diffstat (limited to 'clang/lib/Driver/Driver.cpp')
-rw-r--r-- | clang/lib/Driver/Driver.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index 07a5e42cb13..7e52b1fbca9 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -989,7 +989,8 @@ static bool DiagnoseInputExistence(const Driver &D, const DerivedArgList &Args, if (llvm::sys::fs::exists(Twine(Path))) return true; - if (D.IsCLMode() && llvm::sys::Process::FindInEnvPath("LIB", Value)) + if (D.IsCLMode() && !llvm::sys::path::is_absolute(Twine(Path)) && + llvm::sys::Process::FindInEnvPath("LIB", Value)) return true; D.Diag(clang::diag::err_drv_no_such_file) << Path; |