diff options
Diffstat (limited to 'contrib/llvm-project/clang/lib/Tooling/CompilationDatabase.cpp')
-rw-r--r-- | contrib/llvm-project/clang/lib/Tooling/CompilationDatabase.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/contrib/llvm-project/clang/lib/Tooling/CompilationDatabase.cpp b/contrib/llvm-project/clang/lib/Tooling/CompilationDatabase.cpp index 87ad8f25a1ab..af18194ae0fe 100644 --- a/contrib/llvm-project/clang/lib/Tooling/CompilationDatabase.cpp +++ b/contrib/llvm-project/clang/lib/Tooling/CompilationDatabase.cpp @@ -156,6 +156,7 @@ private: bool CollectChildren = Collect; switch (A->getKind()) { case driver::Action::CompileJobClass: + case driver::Action::PrecompileJobClass: CollectChildren = true; break; @@ -215,7 +216,7 @@ std::string GetClangToolCommand() { SmallString<128> ClangToolPath; ClangToolPath = llvm::sys::path::parent_path(ClangExecutable); llvm::sys::path::append(ClangToolPath, "clang-tool"); - return std::string(ClangToolPath.str()); + return std::string(ClangToolPath); } } // namespace @@ -293,7 +294,8 @@ static bool stripPositionalArgs(std::vector<const char *> Args, // -flto* flags make the BackendJobClass, which still needs analyzer. if (Cmd.getSource().getKind() == driver::Action::AssembleJobClass || Cmd.getSource().getKind() == driver::Action::BackendJobClass || - Cmd.getSource().getKind() == driver::Action::CompileJobClass) { + Cmd.getSource().getKind() == driver::Action::CompileJobClass || + Cmd.getSource().getKind() == driver::Action::PrecompileJobClass) { CompileAnalyzer.run(&Cmd.getSource()); } } |