summaryrefslogtreecommitdiff
path: root/src/plugins/projectexplorer/gcctoolchain.h
diff options
context:
space:
mode:
authorSergey Shambir <sergey.shambir.auto@gmail.com>2013-03-03 21:53:38 +0400
committerErik Verbruggen <erik.verbruggen@digia.com>2013-04-23 11:23:41 +0200
commit20b5c3b2c88e04f2d87dc2d0cb54aa2b5a13ec75 (patch)
tree1058ee62673ff0a29c5fab6509aaae575b17b6ac /src/plugins/projectexplorer/gcctoolchain.h
parente0314eb4f3c69657b5dd918e9a5c2a816bafd2a3 (diff)
downloadqt-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.h17
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;