diff mbox series

[wwwdocs] Document C++ news in GCC 10 Release Notes

Message ID 20190819155744.GA14737@redhat.com
State New
Headers show
Series [wwwdocs] Document C++ news in GCC 10 Release Notes | expand

Commit Message

Marek Polacek Aug. 19, 2019, 3:57 p.m. UTC
I'm of the mind that we should advertise some of the new cool
C++ changes going into GCC 10, esp. those that are user-visible.

Checking this in.

Comments

Gerald Pfeifer Aug. 21, 2019, 11:47 p.m. UTC | #1
On Mon, 19 Aug 2019, Marek Polacek wrote:
> I'm of the mind that we should advertise some of the new cool
> C++ changes going into GCC 10, esp. those that are user-visible.

I concur. :-)

> Checking this in.

Thank you!

Gerald
diff mbox series

Patch

Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-10/changes.html,v
retrieving revision 1.8
diff -u -r1.8 changes.html
--- changes.html	19 Aug 2019 14:08:10 -0000	1.8
+++ changes.html	19 Aug 2019 15:53:27 -0000
@@ -48,10 +48,46 @@ 
 
 <h3 id="cxx">C++</h3>
 <ul>
+  <li>Several C++20 features have been implemented:
+  <ul>
+    <li>P1668R1, Permitting Unevaluated inline-assembly in constexpr Functions</li>
+    <li>P1161R3, Deprecate <code>a[b,c]</code></li>
+    <li>P0848R3, Conditionally Trivial Special Member Functions</li>
+    <li>P1091R3, Extending structured bindings</li>
+  </ul>  
+  </li>
+  <li>Several C++ Defect Reports have been resolved, e.g.:
+  <ul>
+    <li>DR 1560 (lvalue-to-rvalue conversion in <code>?:</code>),</li>
+    <li>DR 1813 (<code>__is_standard_layout</code> for a class with repeated
+	bases),</li>
+    <li>DR 2094 (volatile scalars are trivially copyable),</li>
+    <li>DR 2096 (constraints on literal unions),</li>
+    <li>DR 2413 (<code>typename</code> in <code> conversion-function-id</code>s).
+	</li>
+  </ul>  
+  </li>
   <li>
     G++ can now detect modifying constant objects in constexpr evaluation
     (which is undefined behavior).
   </li>
+  <li>
+    G++ no longer emits bogus <code>-Wsign-conversion</code> warnings with explicit
+    casts.
+  </li>
+  <li>
+    Narrowing is now detected in more contexts (e.g., <code>case</code>
+    values).
+  </li>
+  <li>
+    Memory consumption of the compiler has been reduced in constexpr evaluation.
+  </li>
+  <li>
+    The <code>noexcept-specifier</code> is now properly treated as a
+    <em>complete-class context</em> as per
+    <a href="http://eel.is/c++draft/class.mem#def:complete-class_context">
+    [class.mem]</a>.
+  </li>
 </ul>
 
 <!-- <h4 id="libstdcxx">Runtime Library (libstdc++)</h4> -->