diff options
author | Daniel Dunbar <daniel@zuster.org> | 2010-01-25 00:44:02 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2010-01-25 00:44:02 +0000 |
commit | 3bd54cc56276c386f4d50940a9fbfcad7a69cb75 (patch) | |
tree | a86e5d635da7b858dfdadc975e179e766fa34c4d /lib/Driver/Driver.cpp | |
parent | 1f8d7f94c7c61c7bb45ebb07e6ce5461bf2a80d5 (diff) |
ASTUnit: Don't check that input files exist when parsing ASTs from the command
line -- they may be remapped (fake) files. This is useful for testing parsing
entirely from memory.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94395 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Driver/Driver.cpp')
-rw-r--r-- | lib/Driver/Driver.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp index 852a018e10..62c2d12cd3 100644 --- a/lib/Driver/Driver.cpp +++ b/lib/Driver/Driver.cpp @@ -50,8 +50,8 @@ Driver::Driver(llvm::StringRef _Name, llvm::StringRef _Dir, Name(_Name), Dir(_Dir), DefaultHostTriple(_DefaultHostTriple), DefaultImageName(_DefaultImageName), Host(0), - CCCIsCXX(false), CCCEcho(false), CCCPrintBindings(false), - CCCGenericGCCName("gcc"), CCCUseClang(true), + CCCGenericGCCName("gcc"), CCCIsCXX(false), CCCEcho(false), + CCCPrintBindings(false), CheckInputsExist(true), CCCUseClang(true), CCCUseClangCXX(true), CCCUseClangCPP(true), CCCUsePCH(true), SuppressMissingInputWarning(false) { if (IsProduction) { @@ -579,10 +579,9 @@ void Driver::BuildActions(const ArgList &Args, ActionList &Actions) const { Ty = InputType; } - // Check that the file exists. It isn't clear this is worth doing, since - // the tool presumably does this anyway, and this just adds an extra stat - // to the equation, but this is gcc compatible. - if (memcmp(Value, "-", 2) != 0 && !llvm::sys::Path(Value).exists()) + // Check that the file exists, if enabled. + if (CheckInputsExist && memcmp(Value, "-", 2) != 0 && + !llvm::sys::Path(Value).exists()) Diag(clang::diag::err_drv_no_such_file) << A->getValue(Args); else Inputs.push_back(std::make_pair(Ty, A)); |