aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2021-12-06 14:50:06 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2021-12-06 14:44:35 +0000
commit02f93f68d64ea72e6cfd57ed2b14b344d26b05b0 (patch)
treee59132e7208e523a1def280e211577a474dd090a
parentdb1c6f5b081ee886f06c6277f93c7b3e465e309e (diff)
QbsProjectManager: Consider "c++23" for cpp.cxxLanguageVersion
Fixes: QTCREATORBUG-26663 Change-Id: Ie22ce49cb724c434121c3d4b62b4580139a4706b Reviewed-by: Christian Stenger <christian.stenger@qt.io>
-rw-r--r--src/plugins/qbsprojectmanager/qbsproject.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp
index b1402e70f2..25e49a5d90 100644
--- a/src/plugins/qbsprojectmanager/qbsproject.cpp
+++ b/src/plugins/qbsprojectmanager/qbsproject.cpp
@@ -794,7 +794,9 @@ static void getExpandedCompilerFlags(QStringList &cFlags, QStringList &cxxFlags,
cFlags = cxxFlags = commonFlags;
const auto cxxLanguageVersion = arrayToStringList(getCppProp("cxxLanguageVersion"));
- if (cxxLanguageVersion.contains("c++20"))
+ if (cxxLanguageVersion.contains("c++23"))
+ cxxFlags << "-std=c++2b";
+ else if (cxxLanguageVersion.contains("c++20"))
cxxFlags << "-std=c++20";
else if (cxxLanguageVersion.contains("c++17"))
cxxFlags << "-std=c++17";
@@ -850,9 +852,12 @@ static void getExpandedCompilerFlags(QStringList &cFlags, QStringList &cxxFlags,
cxxFlags << "/TP";
if (!enableRtti.isUndefined())
cxxFlags << QLatin1String(enableRtti.toBool() ? "/GR" : "/GR-");
- if (getCppProp("cxxLanguageVersion").toArray().contains("c++20"))
+ const QJsonArray cxxLanguageVersion = getCppProp("cxxLanguageVersion").toArray();
+ if (cxxLanguageVersion.contains("c++23"))
+ cxxFlags << "/std:c++latest";
+ else if (cxxLanguageVersion.contains("c++20"))
cxxFlags << "/std:c++20";
- else if (getCppProp("cxxLanguageVersion").toArray().contains("c++17"))
+ else if (cxxLanguageVersion.contains("c++17"))
cxxFlags << "/std:c++17";
}
}