From e176958da112984a634b355142cdd5d59a748efc Mon Sep 17 00:00:00 2001 From: David Schulz Date: Wed, 22 Jul 2020 14:52:06 +0200 Subject: ClangTools: Add automatic clang tool runner for open documents Fixes: QTCREATORBUG-23349 Change-Id: I81197180c9d69c7df6184f8fcbf05f2256eaf7f6 Reviewed-by: Christian Kandeler Reviewed-by: Christian Stenger Reviewed-by: Alessandro Portale --- src/plugins/clangtools/clangtidyclazyrunner.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/plugins/clangtools/clangtidyclazyrunner.cpp') diff --git a/src/plugins/clangtools/clangtidyclazyrunner.cpp b/src/plugins/clangtools/clangtidyclazyrunner.cpp index 8fbc09ff5a..d3e2b34198 100644 --- a/src/plugins/clangtools/clangtidyclazyrunner.cpp +++ b/src/plugins/clangtools/clangtidyclazyrunner.cpp @@ -80,6 +80,13 @@ static QStringList mainToolArguments(const QString &mainFilePath, const QString }; } +static QString virtualFileSystemOverlay(const QString &overlayFilePath) +{ + if (overlayFilePath.isEmpty()) + return {}; + return "--vfsoverlay=" + overlayFilePath; +} + static QStringList clangArguments(const ClangDiagnosticConfig &diagnosticConfig, const QStringList &baseOptions) { @@ -102,11 +109,11 @@ ClangTidyRunner::ClangTidyRunner(const ClangDiagnosticConfig &config, QObject *p setOutputFileFormat(OutputFileFormat::Yaml); setExecutable(clangTidyExecutable()); setArgsCreator([this, config](const QStringList &baseOptions) { - return QStringList() - << tidyChecksArguments(config) - << mainToolArguments(fileToAnalyze(), outputFilePath()) - << "--" - << clangArguments(config, baseOptions); + return QStringList() << tidyChecksArguments(config) + << mainToolArguments(fileToAnalyze(), outputFilePath()) + << virtualFileSystemOverlay(m_overlayFilePath) + << "--" + << clangArguments(config, baseOptions); }); } -- cgit v1.2.3