diff options
author | Iain Buclaw <ibuclaw@gdcproject.org> | 2025-03-22 10:42:21 +0100 |
---|---|---|
committer | Iain Buclaw <ibuclaw@gdcproject.org> | 2025-03-22 10:55:13 +0100 |
commit | 1f42269ee49240ac68a877c29a26306fcc246c2d (patch) | |
tree | 501e4d07e544fb1b1ae5c7acfeea2617d6355011 | |
parent | 76df0e069f6c8ba5aa93ae10606ba61fa990883c (diff) | |
download | gcc-1f42269ee49240ac68a877c29a26306fcc246c2d.zip gcc-1f42269ee49240ac68a877c29a26306fcc246c2d.tar.gz gcc-1f42269ee49240ac68a877c29a26306fcc246c2d.tar.bz2 |
d: Add C++23 to CppStdRevision enum
D front-end changes:
- The compiler now accepts `-fextern-std=c++23'
gcc/d/ChangeLog:
* dmd/MERGE: Merge upstream dmd 94950cae58.
* d-lang.cc (d_handle_option): Add case for CppStdRevisionCpp23.
* gdc.texi: Document -fextern-std=c++23.
* lang.opt (fextern-std=): Add c++23.
libphobos/ChangeLog:
* libdruntime/MERGE: Merge upstream druntime 94950cae58.
Reviewed-on: https://github.com/dlang/dmd/pull/21043
-rw-r--r-- | gcc/d/d-lang.cc | 1 | ||||
-rw-r--r-- | gcc/d/dmd/MERGE | 2 | ||||
-rw-r--r-- | gcc/d/dmd/globals.d | 1 | ||||
-rw-r--r-- | gcc/d/dmd/globals.h | 3 | ||||
-rw-r--r-- | gcc/d/gdc.texi | 2 | ||||
-rw-r--r-- | gcc/d/lang.opt | 3 | ||||
-rw-r--r-- | libphobos/libdruntime/MERGE | 2 | ||||
-rw-r--r-- | libphobos/libdruntime/core/stdcpp/xutility.d | 1 |
8 files changed, 12 insertions, 3 deletions
diff --git a/gcc/d/d-lang.cc b/gcc/d/d-lang.cc index 21f46ff..b3786be 100644 --- a/gcc/d/d-lang.cc +++ b/gcc/d/d-lang.cc @@ -510,6 +510,7 @@ d_handle_option (size_t scode, const char *arg, HOST_WIDE_INT value, case CppStdRevisionCpp14: case CppStdRevisionCpp17: case CppStdRevisionCpp20: + case CppStdRevisionCpp23: global.params.cplusplus = (CppStdRevision) value; break; diff --git a/gcc/d/dmd/MERGE b/gcc/d/dmd/MERGE index f274580..9982d0d 100644 --- a/gcc/d/dmd/MERGE +++ b/gcc/d/dmd/MERGE @@ -1,4 +1,4 @@ -8db14cf8467ca25256904d51169b176c9c89afb1 +94950cae582d89f5ba2720786522f669f620f9d1 The first line of this file holds the git revision number of the last merge done from the dlang/dmd repository. diff --git a/gcc/d/dmd/globals.d b/gcc/d/dmd/globals.d index 4a637b5..900c554 100644 --- a/gcc/d/dmd/globals.d +++ b/gcc/d/dmd/globals.d @@ -62,6 +62,7 @@ enum CppStdRevision : uint cpp14 = 2014_02, cpp17 = 2017_03, cpp20 = 2020_02, + cpp23 = 2023_02, } /// Trivalent boolean to represent the state of a `revert`able change diff --git a/gcc/d/dmd/globals.h b/gcc/d/dmd/globals.h index cdb0663..69fe709 100644 --- a/gcc/d/dmd/globals.h +++ b/gcc/d/dmd/globals.h @@ -73,7 +73,8 @@ enum CppStdRevision CppStdRevisionCpp11 = 201103, CppStdRevisionCpp14 = 201402, CppStdRevisionCpp17 = 201703, - CppStdRevisionCpp20 = 202002 + CppStdRevisionCpp20 = 202002, + CppStdRevisionCpp23 = 202302, }; /// Trivalent boolean to represent the state of a `revert`able change diff --git a/gcc/d/gdc.texi b/gcc/d/gdc.texi index 1a84d6d..2cb0c4a62 100644 --- a/gcc/d/gdc.texi +++ b/gcc/d/gdc.texi @@ -273,6 +273,8 @@ Sets @code{__traits(getTargetInfo, "cppStd")} to @code{201703}. This is the default. @item c++20 Sets @code{__traits(getTargetInfo, "cppStd")} to @code{202002}. +@item c++23 +Sets @code{__traits(getTargetInfo, "cppStd")} to @code{202302}. @end table @opindex finvariants diff --git a/gcc/d/lang.opt b/gcc/d/lang.opt index f769a71..50c6f2f 100644 --- a/gcc/d/lang.opt +++ b/gcc/d/lang.opt @@ -320,6 +320,9 @@ Enum(extern_stdcpp) String(c++17) Value(201703) EnumValue Enum(extern_stdcpp) String(c++20) Value(202002) +EnumValue +Enum(extern_stdcpp) String(c++23) Value(202302) + fignore-unknown-pragmas D Ignore unsupported pragmas. diff --git a/libphobos/libdruntime/MERGE b/libphobos/libdruntime/MERGE index 18c9d11..9982d0d 100644 --- a/libphobos/libdruntime/MERGE +++ b/libphobos/libdruntime/MERGE @@ -1,4 +1,4 @@ -d2ee11364c25ca8865eb0acb9596a6147532ef41 +94950cae582d89f5ba2720786522f669f620f9d1 The first line of this file holds the git revision number of the last merge done from the dlang/dmd repository. diff --git a/libphobos/libdruntime/core/stdcpp/xutility.d b/libphobos/libdruntime/core/stdcpp/xutility.d index 5e2e711..f93df68 100644 --- a/libphobos/libdruntime/core/stdcpp/xutility.d +++ b/libphobos/libdruntime/core/stdcpp/xutility.d @@ -35,6 +35,7 @@ enum CppStdRevision : uint cpp14 = 201402, cpp17 = 201703, cpp20 = 202002, + cpp23 = 202302, } /** |