diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2021-12-06 14:50:06 +0100 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2021-12-06 14:44:35 +0000 |
commit | 02f93f68d64ea72e6cfd57ed2b14b344d26b05b0 (patch) | |
tree | e59132e7208e523a1def280e211577a474dd090a | |
parent | db1c6f5b081ee886f06c6277f93c7b3e465e309e (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.cpp | 11 |
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"; } } |