From mboxrd@z Thu Jan 1 00:00:00 1970
Return-Path:
Received: by sourceware.org (Postfix, from userid 2181)
id 697573858C74; Tue, 1 Feb 2022 12:41:18 +0000 (GMT)
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 697573858C74
To: gcc-cvs-wwwdocs@gcc.gnu.org
Subject: gcc-wwwdocs branch master updated.
9f6040a13e7c552a8c1c65352b702dc5d71b369e
X-Git-Refname: refs/heads/master
X-Git-Reftype: branch
X-Git-Oldrev: 829c505d5214d300cd4d5c67bdd6041f7128e3fc
X-Git-Newrev: 9f6040a13e7c552a8c1c65352b702dc5d71b369e
Message-Id: <20220201124118.697573858C74@sourceware.org>
Date: Tue, 1 Feb 2022 12:41:18 +0000 (GMT)
From: Jonathan Wakely
X-BeenThere: gcc-cvs-wwwdocs@gcc.gnu.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Gcc-cvs-wwwdocs mailing list
List-Unsubscribe: ,
List-Archive:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 01 Feb 2022 12:41:18 -0000
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gcc-wwwdocs".
The branch, master has been updated
via 9f6040a13e7c552a8c1c65352b702dc5d71b369e (commit)
via 7193a0fb5d1b164fa676beb35df13cc603a6cf67 (commit)
via 72dc5378360e4e54280414d4f4b76400f7f7abcd (commit)
from 829c505d5214d300cd4d5c67bdd6041f7128e3fc (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 9f6040a13e7c552a8c1c65352b702dc5d71b369e
Author: Jonathan Wakely
Date: Tue Feb 1 12:40:46 2022 +0000
Document C++20 and C++23 library additions
diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html
index c6baee75..2719b9d5 100644
--- a/htdocs/gcc-12/changes.html
+++ b/htdocs/gcc-12/changes.html
@@ -305,6 +305,8 @@ a work-in-progress.
std::vector
, std::basic_string
,
std::optional
, and std::variant
can be used in constexpr
functions.
+ std::make_shared
for arrays with default initialization,
+ and std::atomic<std::shared_ptr<T>>
.
Layout-compatibility and pointer-interconvertibility traits.
@@ -315,6 +317,10 @@ a work-in-progress.
<spanstream>
std::invoke_r
std::basic_string::resize_and_overwrite
+ <stacktrace>
+ (not built by default, requires linking to an extra library).
+ <stdatomic.h>
+ constexpr std::type_info::operator==
commit 7193a0fb5d1b164fa676beb35df13cc603a6cf67
Author: Jonathan Wakely
Date: Tue Feb 1 12:38:59 2022 +0000
Add C++ "porting to" notes
diff --git a/htdocs/gcc-12/porting_to.html b/htdocs/gcc-12/porting_to.html
index 42179c11..86d99723 100644
--- a/htdocs/gcc-12/porting_to.html
+++ b/htdocs/gcc-12/porting_to.html
@@ -50,9 +50,54 @@ is no longer accepted and you need to add a cast to it like:
}
-
+
+
+Some C++ Standard Library headers have been changed to no longer include
+other headers that were being used internally by the library.
+As such, C++ programs that used standard library components without
+including the right headers will no longer compile.
+
+
+The following headers are used less widely in libstdc++ and may need to
+be included explicitly when compiled with GCC 12:
+
+
+-
<memory>
+ (for std::shared_ptr
, std::unique_ptr
etc.)
+
+-
<iterator>
+ (for std::istream_iterator
, std::istreambuf_iterator
)
+
+-
<algorithm>
+ (for std::for_each
, std::copy
etc.)
+
+-
<utility>
+ (for std::pair
)
+
+-
<array>
+ (for std::array
)
+
+-
<atomic>
+ (for std::atomic
)
+
+
+
+C++ Standard Library deprecations
+
+Warnings have been added for use of C++ standard library features that
+are deprecated (or no longer present at all) in recent C++ standards.
+Where possible, the warning suggests a modern replacement for the
+deprecated feature.
+
+
+The std::iterator
base class can usually be replaced by defining
+the same necessary typedefs directly in your iterator class.
+The std::unary_function
and std::binary_function
+base classes can often be completely removed, or the typedefs for
+result_type
and argument types can be defined directly in your
+class.
+