[libcxx-commits] [libcxx] [libc++] Add a release note about C++03 being frozen after LLVM 21 (PR #95894)
Nikolas Klauser via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Jul 18 09:03:56 PDT 2024
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/95894
>From d4ef64fd3e03b6e6e0c9bc832f65bdc1d40447a6 Mon Sep 17 00:00:00 2001
From: Nikolas Klauser <nikolasklauser at berlin.de>
Date: Tue, 18 Jun 2024 10:42:49 +0200
Subject: [PATCH 1/2] [libc++] Add a release note about C++03 being frozen in
LLVM 19
---
libcxx/docs/ReleaseNotes/19.rst | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/libcxx/docs/ReleaseNotes/19.rst b/libcxx/docs/ReleaseNotes/19.rst
index e6d8acb74aeb2..f12d2ff0d431b 100644
--- a/libcxx/docs/ReleaseNotes/19.rst
+++ b/libcxx/docs/ReleaseNotes/19.rst
@@ -155,8 +155,12 @@ LLVM 20
LLVM 21
~~~~~~~
-TODO
+- The status of the C++03 implementation will be frozen. This means that non-critical bug fixes will not be back-ported
+ to C++03, including LWG issues. C++03 is a legacy platform, where most projects are no longer actively maintained. To
+ reduce the amount of fixes required to keep such legacy projects compiling with up-to-date toolchains, libc++ freezes
+ the current status of the headers and avoids making any changes to these headers.
+ See https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc for more details.
ABI Affecting Changes
---------------------
>From b2df92d5ab03ff79a5ee4ef9ff3b4d7183a062ab Mon Sep 17 00:00:00 2001
From: Nikolas Klauser <nikolasklauser at berlin.de>
Date: Thu, 18 Jul 2024 18:03:49 +0200
Subject: [PATCH 2/2] Update libcxx/docs/ReleaseNotes/19.rst
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
---
libcxx/docs/ReleaseNotes/19.rst | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/libcxx/docs/ReleaseNotes/19.rst b/libcxx/docs/ReleaseNotes/19.rst
index f12d2ff0d431b..011d9391884b6 100644
--- a/libcxx/docs/ReleaseNotes/19.rst
+++ b/libcxx/docs/ReleaseNotes/19.rst
@@ -156,12 +156,13 @@ LLVM 20
LLVM 21
~~~~~~~
-- The status of the C++03 implementation will be frozen. This means that non-critical bug fixes will not be back-ported
+- The status of the C++03 implementation will be frozen after the LLVM 21 release. This means that starting in LLVM 22, non-critical bug fixes may not be back-ported
to C++03, including LWG issues. C++03 is a legacy platform, where most projects are no longer actively maintained. To
- reduce the amount of fixes required to keep such legacy projects compiling with up-to-date toolchains, libc++ freezes
- the current status of the headers and avoids making any changes to these headers.
+ reduce the amount of fixes required to keep such legacy projects compiling with up-to-date toolchains, libc++ will aim to freeze the status of the headers in C++03 mode to avoid unintended breaking changes.
See https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc for more details.
+ If you are using C++03 in your project, you should consider moving to a newer version of the Standard to get the most out of libc++.
+
ABI Affecting Changes
---------------------
More information about the libcxx-commits
mailing list