diff options
author | Eike Ziller <eike.ziller@qt.io> | 2023-11-09 08:22:27 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2023-11-09 08:22:27 +0100 |
commit | 7bd99104e0077be05f1216c1cd335ff30fab953e (patch) | |
tree | 9d6970cf8cadd4835a0661c9f0834798d40f4c80 /src/plugins/clangtools | |
parent | 9a8531c22f5fa16d052725081363856b15657bf0 (diff) | |
parent | 4436e96f91e934473308b5115a3052a650d77e57 (diff) |
Merge remote-tracking branch 'origin/12.0'
Change-Id: I2594f193260a103e1c4484fcab974213c881353d
Diffstat (limited to 'src/plugins/clangtools')
-rw-r--r-- | src/plugins/clangtools/clangtoolrunner.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/plugins/clangtools/clangtoolrunner.cpp b/src/plugins/clangtools/clangtoolrunner.cpp index d6ddae635b..8769fa5cf7 100644 --- a/src/plugins/clangtools/clangtoolrunner.cpp +++ b/src/plugins/clangtools/clangtoolrunner.cpp @@ -10,6 +10,7 @@ #include <coreplugin/icore.h> #include <cppeditor/clangdiagnosticconfigsmodel.h> +#include <cppeditor/cppprojectfile.h> #include <cppeditor/cpptoolsreuse.h> #include <extensionsystem/pluginmanager.h> @@ -76,14 +77,17 @@ static QStringList checksArguments(const AnalyzeInputData &input) return {}; } -static QStringList clangArguments(const ClangDiagnosticConfig &diagnosticConfig, - const QStringList &baseOptions) +static QStringList clangArguments(const AnalyzeInputData &input) { QStringList arguments; + const ClangDiagnosticConfig &diagnosticConfig = input.config; + const QStringList &baseOptions = input.unit.arguments; arguments << ClangDiagnosticConfigsModel::globalDiagnosticOptions() << (isClMode(baseOptions) ? clangArgsForCl(diagnosticConfig.clangOptions()) : diagnosticConfig.clangOptions()) << baseOptions; + if (ProjectFile::isHeader(input.unit.file)) + arguments << "-Wno-pragma-once-outside-header"; if (LOG().isDebugEnabled()) arguments << QLatin1String("-v"); @@ -157,7 +161,7 @@ GroupItem clangToolTask(const AnalyzeInputData &input, const QStringList args = checksArguments(input) + mainToolArguments(data) + QStringList{"--"} - + clangArguments(input.config, input.unit.arguments); + + clangArguments(input); const CommandLine commandLine = {data.executable, args}; qCDebug(LOG).noquote() << "Starting" << commandLine.toUserOutput(); |