summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppprojects.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cpptools/cppprojects.cpp')
-rw-r--r--src/plugins/cpptools/cppprojects.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/plugins/cpptools/cppprojects.cpp b/src/plugins/cpptools/cppprojects.cpp
index d04da92b75..29f8d1cd8f 100644
--- a/src/plugins/cpptools/cppprojects.cpp
+++ b/src/plugins/cpptools/cppprojects.cpp
@@ -146,7 +146,10 @@ ProjectPart::Ptr ProjectPart::copy() const
QString ProjectPart::id() const
{
- return QDir::fromNativeSeparators(projectFile) + QLatin1Char(' ') + displayName;
+ QString projectPartId = QDir::fromNativeSeparators(projectFile);
+ if (!displayName.isEmpty())
+ projectPartId.append(QLatin1Char(' ') + displayName);
+ return projectPartId;
}
QByteArray ProjectPart::readProjectConfigFile(const ProjectPart::Ptr &part)
@@ -669,13 +672,15 @@ void CompilerOptionsBuilder::addOptionsForLanguage(bool checkForBorlandExtension
opts << (gnuExtensions ? QLatin1String("-std=gnu++98") : QLatin1String("-std=c++98"));
break;
case ProjectPart::CXX03:
+ // Clang 3.6 does not know -std=gnu++03.
opts << QLatin1String("-std=c++03");
break;
case ProjectPart::CXX14:
- opts << QLatin1String("-std=c++1y"); // TODO: change to c++14 after 3.5
+ opts << (gnuExtensions ? QLatin1String("-std=gnu++14") : QLatin1String("-std=c++14"));
break;
case ProjectPart::CXX17:
- opts << QLatin1String("-std=c++1z"); // TODO: change to c++17 at some point in the future
+ // TODO: Change to (probably) "gnu++17"/"c++17" at some point in the future.
+ opts << (gnuExtensions ? QLatin1String("-std=gnu++1z") : QLatin1String("-std=c++1z"));
break;
}