public inbox for gcc-cvs-wwwdocs@sourceware.org
help / color / mirror / Atom feed
* gcc-wwwdocs branch master updated. 9f6040a13e7c552a8c1c65352b702dc5d71b369e
@ 2022-02-01 12:41 Jonathan Wakely
  0 siblings, 0 replies; only message in thread
From: Jonathan Wakely @ 2022-02-01 12:41 UTC (permalink / raw)
  To: gcc-cvs-wwwdocs

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 <jwakely@redhat.com>
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.</p>
   <li><code>std::vector</code>, <code>std::basic_string</code>,
       <code>std::optional</code>, and <code>std::variant</code>
       can be used in <code>constexpr</code> functions.</li>
+  <li><code>std::make_shared</code> for arrays with default initialization,
+      and <code>std::atomic&lt;std::shared_ptr&lt;T&gt;&gt;</code>.</li>
   <li>Layout-compatibility and pointer-interconvertibility traits.</li>
   </ul>
 </li>
@@ -315,6 +317,10 @@ a work-in-progress.</p>
   <li><code>&lt;spanstream&gt;</code></li>
   <li><code>std::invoke_r</code></li>
   <li><code>std::basic_string::resize_and_overwrite</code></li>
+  <li><code>&lt;stacktrace&gt;</code>
+      (not built by default, requires linking to an extra library).</li>
+  <li><code>&lt;stdatomic.h&gt;</code></li>
+  <li><code>constexpr std::type_info::operator==</code></li>
   </ul>
 </li>
 </ul>

commit 7193a0fb5d1b164fa676beb35df13cc603a6cf67
Author: Jonathan Wakely <jwakely@redhat.com>
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:
   }
 </code></pre>
 
-<!--
 <h2 id="cxx">C++ language issues</h2>
--->
+
+<h3 id="header-dep-changes">Header dependency changes</h3>
+<p>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.
+</p>
+<p>
+The following headers are used less widely in libstdc++ and may need to
+be included explicitly when compiled with GCC 12:
+</p>
+<ul>
+<li> <code>&lt;memory&gt;</code>
+  (for <code>std::shared_ptr</code>, <code>std::unique_ptr</code> etc.)
+</li>
+<li> <code>&lt;iterator&gt;</code>
+  (for <code>std::istream_iterator</code>, <code>std::istreambuf_iterator</code>)
+</li>
+<li> <code>&lt;algorithm&gt;</code>
+  (for <code>std::for_each</code>, <code>std::copy</code> etc.)
+</li>
+<li> <code>&lt;utility&gt;</code>
+  (for <code>std::pair</code>)
+</li>
+<li> <code>&lt;array&gt;</code>
+  (for <code>std::array</code>)
+</li>
+<li> <code>&lt;atomic&gt;</code>
+  (for <code>std::atomic</code>)
+</li>
+</ul>
+
+<h3 id="cxx-deprecations">C++ Standard Library deprecations</h3>
+<p>
+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.
+</p>
+<p>
+The <code>std::iterator</code> base class can usually be replaced by defining
+the same necessary typedefs directly in your iterator class.
+The <code>std::unary_function</code> and <code>std::binary_function</code>
+base classes can often be completely removed, or the typedefs for
+<code>result_type</code> and argument types can be defined directly in your
+class.
+</p>
 
 <!--
 <h2 id="fortran">Fortran language issues</h2>

commit 72dc5378360e4e54280414d4f4b76400f7f7abcd
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Tue Feb 1 12:37:38 2022 +0000

    Fix grammar in C++ header dependency notes

diff --git a/htdocs/gcc-11/porting_to.html b/htdocs/gcc-11/porting_to.html
index 4d27c163..1d15570e 100644
--- a/htdocs/gcc-11/porting_to.html
+++ b/htdocs/gcc-11/porting_to.html
@@ -93,7 +93,7 @@ GCC 11 now enforces that comparison objects be invocable as const.
 
 <h3 id="header-dep-changes">Header dependency changes</h3>
 <p>Some C++ Standard Library headers have been changed to no longer include
-other headers that they do need to depend on.
+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.
 </p>

-----------------------------------------------------------------------

Summary of changes:
 htdocs/gcc-11/porting_to.html |  2 +-
 htdocs/gcc-12/changes.html    |  6 ++++++
 htdocs/gcc-12/porting_to.html | 49 +++++++++++++++++++++++++++++++++++++++++--
 3 files changed, 54 insertions(+), 3 deletions(-)


hooks/post-receive
-- 
gcc-wwwdocs


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-02-01 12:41 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-01 12:41 gcc-wwwdocs branch master updated. 9f6040a13e7c552a8c1c65352b702dc5d71b369e Jonathan Wakely

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).