diff options
author | Sergey Shambir <sergey.shambir.auto@gmail.com> | 2013-03-03 21:53:38 +0400 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@digia.com> | 2013-04-23 11:23:41 +0200 |
commit | 20b5c3b2c88e04f2d87dc2d0cb54aa2b5a13ec75 (patch) | |
tree | 1058ee62673ff0a29c5fab6509aaae575b17b6ac /src/plugins/projectexplorer/gcctoolchain.h | |
parent | e0314eb4f3c69657b5dd918e9a5c2a816bafd2a3 (diff) | |
download | qt-creator-20b5c3b2c88e04f2d87dc2d0cb54aa2b5a13ec75.tar.gz |
ToolChain: added warningFlags() method
Converts toolchain-specific flags in QFlags.
Will be useful for ClangCodeModel.
Change-Id: I2cff650c952f7c41d3a27535a27fa52b932a0b92
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Diffstat (limited to 'src/plugins/projectexplorer/gcctoolchain.h')
-rw-r--r-- | src/plugins/projectexplorer/gcctoolchain.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/plugins/projectexplorer/gcctoolchain.h b/src/plugins/projectexplorer/gcctoolchain.h index 07a2d5c58d..ddba601ad3 100644 --- a/src/plugins/projectexplorer/gcctoolchain.h +++ b/src/plugins/projectexplorer/gcctoolchain.h @@ -66,6 +66,7 @@ public: QByteArray predefinedMacros(const QStringList &cxxflags) const; CompilerFlags compilerFlags(const QStringList &cxxflags) const; + WarningFlags warningFlags(const QStringList &cflags) const; QList<HeaderPath> systemHeaderPaths(const QStringList &cxxflags, const Utils::FileName &sysRoot) const; void addToEnvironment(Utils::Environment &env) const; @@ -100,6 +101,20 @@ protected: static const int PREDEFINED_MACROS_CACHE_SIZE; mutable GccCache m_predefinedMacros; + class WarningFlagAdder + { + QByteArray m_flagUtf8; + WarningFlags &m_flags; + bool m_doesEnable; + bool m_triggered; + public: + WarningFlagAdder(const QString &flag, WarningFlags &flags); + void operator ()(const char name[], WarningFlags flagsSet); + void operator ()(const char name[], WarningFlag flag); + + bool triggered() const; + }; + private: GccToolChain(bool autodetect); @@ -127,6 +142,8 @@ public: QString typeDisplayName() const; QString makeCommand(const Utils::Environment &environment) const; + WarningFlags warningFlags(const QStringList &cflags) const; + IOutputParser *outputParser() const; ToolChain *clone() const; |