[wwwdocs] Update C++ DR table with new DRs

Marek Polacek polacek@redhat.com
Mon Jan 11 22:21:12 GMT 2021


I pushed this patch to update the DR table with a few new DRs.  Also update
some of the older ones to reflect that they're included in C++20.

Marek

commit 6be6626d59e1c492d5e05606e5a6902feb9e5bac
Author: Marek Polacek <polacek@redhat.com>
Date:   Mon Jan 11 17:18:45 2021 -0500

    C++ DRs: Add new DRs, update older ones.

diff --git a/htdocs/projects/cxx-dr-status.html b/htdocs/projects/cxx-dr-status.html
index 72221490..b1b4f40f 100644
--- a/htdocs/projects/cxx-dr-status.html
+++ b/htdocs/projects/cxx-dr-status.html
@@ -15,7 +15,7 @@
 
   <p>This table tracks the implementation status of C++ defect reports in GCC.
   It is based on C++ Standard Core Language Issue Table of Contents, Revision
-  100 (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_toc.html">here</a>).</p>
+  102 (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_toc.html">here</a>).</p>
 
   <table class="cxxdrstatus" style="width: 66.6%">
     <tr class="separator">
@@ -11377,7 +11377,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg1621">1621</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Member initializers in anonymous unions</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -14401,7 +14401,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2053">2053</a></td>
-      <td>DR</td>
+      <td>C++20</td>
       <td><code>auto</code> in non-generic lambdas</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -14912,7 +14912,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2126">2126</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Lifetime-extended temporaries in constant expressions</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -15990,7 +15990,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2280">2280</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Matching a usual deallocation function with placement new</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -16004,7 +16004,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2282">2282</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Consistency with mismatched aligned/non-over-aligned allocation/deallocation functions</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -16291,7 +16291,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2323">2323</a></td>
-      <td>accepted</td>
+      <td>C++20</td>
       <td>Expunge POD</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -16459,7 +16459,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2347">2347</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Passing short scoped enumerations to ellipsis</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -16648,8 +16648,8 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2374">2374</a></td>
-      <td>DRWP</td>
-      <td>Overly permissive specification of enum direct-list-initialization</td>
+      <td>C++20</td>
+      <td>Overly permissive specification of <code>enum</code> direct-list-initialization</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
@@ -16676,9 +16676,9 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2378">2378</a></td>
-      <td>accepted</td>
-      <td>Inconsistent grammar for reference <em>init-capture of pack</em></td>
-      <td class="unsupported">?</td>
+      <td>C++20</td>
+      <td>Inconsistent grammar for reference <em>init-capture</em> of pack</td>
+      <td class="supported">10</td>
       <td><a href="https://gcc.gnu.org/PR91847">PR91847</a></td>
     </tr>
     <tr>
@@ -16926,11 +16926,11 @@
       <td class="supported">10</td>
       <td></td>
     </tr>
-    <tr class="open">
+    <tr>
       <td><a href="https://wg21.link/cwg2414">2414</a></td>
-      <td>drafting</td>
-      <td> Unclear results if both member and friend <code>operator<=></code> are declared</td>
-      <td>-</td>
+      <td>C++20</td>
+      <td>Unclear results if both member and friend <code>operator<=></code> are declared</td>
+      <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
@@ -16942,7 +16942,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2416">2416</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Explicit specializations vs <code>constexpr</code> and <code>consteval</code></td>
       <td class="unsupported">?</td>
       <td></td>
@@ -16963,7 +16963,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2419">2419</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Loss of generality treating pointers to objects as one-element arrays</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -16984,7 +16984,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2422">2422</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Incorrect grammar for <em>deduction-guide</em></td>
       <td class="unsupported">?</td>
       <td></td>
@@ -16998,8 +16998,8 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2424">2424</a></td>
-      <td>DRWP</td>
-      <td><code>constexpr</code> initialization requirements for variant members </td>
+      <td>C++20</td>
+      <td><code>constexpr</code> initialization requirements for variant members</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
@@ -17012,14 +17012,14 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2426">2426</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Reference to destructor that cannot be invoked</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2427">2427</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Deprecation of volatile operands and unevaluated contexts</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -17033,35 +17033,35 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2429">2429</a></td>
-      <td>DRWP</td>
-      <td>Initialization of <code>thread_local</code> variables referenced by lambdas </td>
+      <td>C++20</td>
+      <td>Initialization of <code>thread_local</code> variables referenced by lambdas</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2430">2430</a></td>
-      <td>DRWP</td>
-      <td>Completeness of return and parameter types of member functions </td>
+      <td>C++20</td>
+      <td>Completeness of return and parameter types of member functions</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2431">2431</a></td>
-      <td>DRWP</td>
-      <td>Full-expressions and temporaries bound to references </td>
+      <td>C++20</td>
+      <td>Full-expressions and temporaries bound to references</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2432">2432</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Return types for defaulted <code><=></code></td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2433">2433</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Variable templates in the ODR</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -17082,14 +17082,14 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2436">2436</a></td>
-      <td>accepted</td>
+      <td>C++20</td>
       <td>Copy semantics of coroutine parameters</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2437">2437</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Conversion of <code>std::strong_ordering</code> in a defaulted <code>operator<=></code></td>
       <td class="unsupported">?</td>
       <td></td>
@@ -17103,7 +17103,7 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2439">2439</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Undefined term in definition of “usable in constant expressions”</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -17117,14 +17117,14 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2441">2441</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Inline function parameters</td>
       <td class="supported">Yes</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2442">2442</a></td>
-      <td>DRWP</td>
+      <td>C++20</td>
       <td>Incorrect requirement for default arguments</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -17145,21 +17145,21 @@
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2445">2445</a></td>
-      <td></td>
+      <td>C++20</td>
       <td>Partial ordering with rewritten candidates</td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2446">2446</a></td>
-      <td>accepted</td>
+      <td>C++20</td>
       <td>Questionable type-dependency of <em>concept-ids</em></td>
       <td class="unsupported">?</td>
       <td></td>
     </tr>
     <tr>
       <td><a href="https://wg21.link/cwg2447">2447</a></td>
-      <td>accepted</td>
+      <td>C++20</td>
       <td>Unintended description of abbreviated function templates</td>
       <td class="unsupported">?</td>
       <td></td>
@@ -17185,11 +17185,144 @@
       <td class="supported">11</td>
       <td></td>
     </tr>
+    <tr>
+      <td><a href="https://wg21.link/cwg2451">2451</a></td>
+      <td>review</td>
+      <td><em>promise</em> <code>.unhandled_exception()</code> and final suspend point</td>
+      <td class="unsupported">?</td>
+      <td></td>
+    </tr>
+    <tr>
+      <td><a href="https://wg21.link/cwg2452">2452</a></td>
+      <td>DR</td>
+      <td>Flowing off the end of a coroutine</td>
+      <td class="unsupported">?</td>
+      <td></td>
+    </tr>
+    <tr>
+      <td><a href="https://wg21.link/cwg2453">2453</a></td>
+      <td>NAD</td>
+      <td>Deduced return types and coroutine lambdas</td>
+      <td class="other">N/A</td>
+      <td></td>
+    </tr>
+    <tr>
+      <td><a href="https://wg21.link/cwg2454">2454</a></td>
+      <td>NAD</td>
+      <td>Tail recursion and coroutine symmetric transfer</td>
+      <td class="other">N/A</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2455">2455</a></td>
+      <td>drafting</td>
+      <td>Concatenation of string literals vs translation phases 5 and 6</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2456">2456</a></td>
+      <td>open</td>
+      <td>Viable user-defined conversions in converted constant expressions</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr>
+      <td><a href="https://wg21.link/cwg2457">2457</a></td>
+      <td>DR</td>
+      <td>Unexpanded parameter packs don't make a function type dependent</td>
+      <td class="unsupported">?</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2458">2458</a></td>
+      <td>drafting</td>
+      <td>Value category of expressions denoting non-static member functions</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2459">2459</a></td>
+      <td>drafting</td>
+      <td>Template parameter initialization</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr>
+      <td><a href="https://wg21.link/cwg2460">2460</a></td>
+      <td>DR</td>
+      <td>C language linkage and constrained non-template friends</td>
+      <td class="unsupported">?</td>
+      <td></td>
+    </tr>
+    <tr>
+      <td><a href="https://wg21.link/cwg2461">2461</a></td>
+      <td>DR</td>
+      <td>Diagnosing non-<code>bool</code> type constraints</td>
+      <td class="unsupported">?</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2462">2462</a></td>
+      <td>drafting</td>
+      <td>Problems with the omission of the <code>typename</code> keyword</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2463">2463</a></td>
+      <td>open</td>
+      <td>Trivial copyability and unions with non-trivial members</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2464">2464</a></td>
+      <td>open</td>
+      <td>Constexpr launder and unions</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2465">2465</a></td>
+      <td>drafting</td>
+      <td>Coroutine parameters passed to a promise constructor</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2466">2466</a></td>
+      <td>drafting</td>
+      <td><code>co_await</code> should be a single evaluation</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2467">2467</a></td>
+      <td>open</td>
+      <td>CTAD for alias templates and the deducible check</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2468">2468</a></td>
+      <td>drafting</td>
+      <td>Omission of the <code>typename</code> keyword in a member template parameter list</td>
+      <td>-</td>
+      <td></td>
+    </tr>
+    <tr class="open">
+      <td><a href="https://wg21.link/cwg2469">2469</a></td>
+      <td>open</td>
+      <td>Implicit object creation vs constant expressions</td>
+      <td>-</td>
+      <td></td>
+    </tr>
   </table>
 
   <p>This page is currently maintained by <a href="mailto:polacek@redhat.com">polacek@redhat.com</a>.</p>
   <p>Last update:
-Mon Nov  9 07:05:43 PM EST 2020
+Mon Jan 11 05:04:26 PM EST 2021
   </p>
 
 </body>



More information about the Gcc-patches mailing list