r346414 - [Tooling] Produce diagnostics for missing input files.
Sam McCall via cfe-commits
cfe-commits at lists.llvm.org
Thu Nov 8 08:57:01 PST 2018
Author: sammccall
Date: Thu Nov 8 08:57:01 2018
New Revision: 346414
URL: http://llvm.org/viewvc/llvm-project?rev=346414&view=rev
Log:
[Tooling] Produce diagnostics for missing input files.
Summary:
This was disabled way back in 2011, in the dark times before Driver was VFS-aware.
Also, make driver more VFS-aware :-)
This breaks one ClangTidy test (we improved the error message), will fix when
submitting.
Reviewers: ioeric
Subscribers: cfe-commits, alexfh
Differential Revision: https://reviews.llvm.org/D53958
Modified:
cfe/trunk/lib/Driver/Driver.cpp
cfe/trunk/lib/Tooling/Tooling.cpp
Modified: cfe/trunk/lib/Driver/Driver.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Driver.cpp?rev=346414&r1=346413&r2=346414&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/Driver.cpp (original)
+++ cfe/trunk/lib/Driver/Driver.cpp Thu Nov 8 08:57:01 2018
@@ -1972,7 +1972,7 @@ static bool DiagnoseInputExistence(const
}
}
- if (llvm::sys::fs::exists(Twine(Path)))
+ if (D.getVFS().exists(Path))
return true;
if (D.IsCLMode()) {
Modified: cfe/trunk/lib/Tooling/Tooling.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Tooling/Tooling.cpp?rev=346414&r1=346413&r2=346414&view=diff
==============================================================================
--- cfe/trunk/lib/Tooling/Tooling.cpp (original)
+++ cfe/trunk/lib/Tooling/Tooling.cpp Thu Nov 8 08:57:01 2018
@@ -303,8 +303,6 @@ bool ToolInvocation::run() {
const std::unique_ptr<driver::Driver> Driver(
newDriver(&Diagnostics, BinaryName, Files->getVirtualFileSystem()));
- // Since the input might only be virtual, don't check whether it exists.
- Driver->setCheckInputsExist(false);
const std::unique_ptr<driver::Compilation> Compilation(
Driver->BuildCompilation(llvm::makeArrayRef(Argv)));
if (!Compilation)
More information about the cfe-commits
mailing list