diff --git a/src/plugins/clangcodemodel/clangutils.cpp b/src/plugins/clangcodemodel/clangutils.cpp index 95b9364e0c3..6ea7875cab8 100644 --- a/src/plugins/clangcodemodel/clangutils.cpp +++ b/src/plugins/clangcodemodel/clangutils.cpp @@ -100,8 +100,10 @@ private: void addDummyUiHeaderOnDiskIncludePath() { const QString path = ClangModelManagerSupport::instance()->dummyUiHeaderOnDiskDirPath(); - if (!path.isEmpty()) - add({"-I", QDir::toNativeSeparators(path)}); + if (!path.isEmpty()) { + prepend(QDir::toNativeSeparators(path)); + prepend("-I"); + } } }; diff --git a/src/plugins/cpptools/compileroptionsbuilder.cpp b/src/plugins/cpptools/compileroptionsbuilder.cpp index 030d2b16cd6..09291830b33 100644 --- a/src/plugins/cpptools/compileroptionsbuilder.cpp +++ b/src/plugins/cpptools/compileroptionsbuilder.cpp @@ -165,6 +165,11 @@ void CompilerOptionsBuilder::add(const QString &arg, bool gccOnlyOption) add(QStringList{arg}, gccOnlyOption); } +void CompilerOptionsBuilder::prepend(const QString &arg) +{ + m_options.prepend(arg); +} + void CompilerOptionsBuilder::add(const QStringList &args, bool gccOnlyOptions) { m_options.append((gccOnlyOptions && isClStyle()) ? clangArgsForCl(args) : args); diff --git a/src/plugins/cpptools/compileroptionsbuilder.h b/src/plugins/cpptools/compileroptionsbuilder.h index f81c515db0e..c4d8589f178 100644 --- a/src/plugins/cpptools/compileroptionsbuilder.h +++ b/src/plugins/cpptools/compileroptionsbuilder.h @@ -85,6 +85,7 @@ public: // Add custom options void add(const QString &arg, bool gccOnlyOption = false); + void prepend(const QString &arg); void add(const QStringList &args, bool gccOnlyOptions = false); virtual void addExtraOptions() {}