aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIvan Donchevskii <ivan.donchevskii@qt.io>2018-05-03 11:08:54 +0200
committerIvan Donchevskii <ivan.donchevskii@qt.io>2018-05-03 10:04:08 +0000
commit02f50d52869b3ffe6a8dddcc110c5601b1da4025 (patch)
treed5edca40e818e4ff05696d9b52d0781434b5bec5
parent0a7d24c730bca165f95e85d94a2c1d13fa586a65 (diff)
CppTools: Rollback some changes in CompilerOptionsBuilder
Make it safer in the 4.6 release. Change-Id: I75857ecc08af8febe40fd75dc94d8ab986d4b768 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
-rw-r--r--src/plugins/cpptools/compileroptionsbuilder.cpp14
-rw-r--r--src/plugins/cpptools/compileroptionsbuilder.h1
2 files changed, 8 insertions, 7 deletions
diff --git a/src/plugins/cpptools/compileroptionsbuilder.cpp b/src/plugins/cpptools/compileroptionsbuilder.cpp
index 83bc89ab49..4059067310 100644
--- a/src/plugins/cpptools/compileroptionsbuilder.cpp
+++ b/src/plugins/cpptools/compileroptionsbuilder.cpp
@@ -47,7 +47,6 @@ CompilerOptionsBuilder::CompilerOptionsBuilder(const ProjectPart &projectPart,
: m_projectPart(projectPart)
, m_clangVersion(clangVersion)
, m_clangResourceDirectory(clangResourceDirectory)
- , m_languageVersion(m_projectPart.languageVersion)
{
}
@@ -55,8 +54,10 @@ QStringList CompilerOptionsBuilder::build(CppTools::ProjectFile::Kind fileKind,
{
m_options.clear();
- if (fileKind == ProjectFile::CHeader || fileKind == ProjectFile::CSource)
- QTC_ASSERT(m_languageVersion <= ProjectPart::LatestCVersion, return QStringList(););
+ if (fileKind == ProjectFile::CHeader || fileKind == ProjectFile::CSource) {
+ QTC_ASSERT(m_projectPart.languageVersion <= ProjectPart::LatestCVersion,
+ return QStringList(););
+ }
addWordWidth();
addTargetTriple();
@@ -123,7 +124,7 @@ void CompilerOptionsBuilder::addExtraCodeModelFlags()
void CompilerOptionsBuilder::enableExceptions()
{
- if (m_languageVersion > ProjectPart::LatestCVersion)
+ if (m_projectPart.languageVersion > ProjectPart::LatestCVersion)
add(QLatin1String("-fcxx-exceptions"));
add(QLatin1String("-fexceptions"));
}
@@ -293,7 +294,7 @@ void CompilerOptionsBuilder::addOptionsForLanguage(bool checkForBorlandExtension
const ProjectPart::LanguageExtensions languageExtensions = m_projectPart.languageExtensions;
const bool gnuExtensions = languageExtensions & ProjectPart::GnuExtensions;
- switch (m_languageVersion) {
+ switch (m_projectPart.languageVersion) {
case ProjectPart::C89:
opts << (gnuExtensions ? QLatin1String("-std=gnu89") : QLatin1String("-std=c89"));
break;
@@ -478,7 +479,8 @@ QString CompilerOptionsBuilder::includeOption() const
bool CompilerOptionsBuilder::excludeDefineDirective(const ProjectExplorer::Macro &macro) const
{
- if (macro.key == "__cplusplus" && m_languageVersion <= ProjectPart::LatestCVersion)
+ // TODO: Remove in QtCreator 4.7
+ if (macro.key == "__cplusplus")
return true;
// Ignore for all compiler toolchains since LLVM has it's own implementation for
diff --git a/src/plugins/cpptools/compileroptionsbuilder.h b/src/plugins/cpptools/compileroptionsbuilder.h
index 6a0db7cb2b..2f860e510b 100644
--- a/src/plugins/cpptools/compileroptionsbuilder.h
+++ b/src/plugins/cpptools/compileroptionsbuilder.h
@@ -96,7 +96,6 @@ private:
QStringList m_options;
QString m_clangVersion;
QString m_clangResourceDirectory;
- ProjectPart::LanguageVersion m_languageVersion;
};
template<class T>