[clang] [clang] Update C++ DR status page (PR #192768)

via cfe-commits cfe-commits at lists.llvm.org
Fri Apr 17 22:18:42 PDT 2026


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: Vlad Serebrennikov (Endilll)

<details>
<summary>Changes</summary>

Now that Croydon motions are reflected in `cwg_index.html`.

---

Patch is 60.15 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/192768.diff


2 Files Affected:

- (modified) clang/test/CXX/drs/cwg2947.cpp (+1-1) 
- (modified) clang/www/cxx_dr_status.html (+321-220) 


``````````diff
diff --git a/clang/test/CXX/drs/cwg2947.cpp b/clang/test/CXX/drs/cwg2947.cpp
index dd66a2cfcfc4d..3d9d738f40de3 100644
--- a/clang/test/CXX/drs/cwg2947.cpp
+++ b/clang/test/CXX/drs/cwg2947.cpp
@@ -32,7 +32,7 @@
 // RUN: %clang_cc1 -std=c++26 -fsyntax-only -verify %t/cwg2947_ext2.cpp
 // RUN: %clang_cc1 -std=c++26 -fsyntax-only -verify %t/cwg2947_ext3.cpp
 
-// cwg2947: 23 tentatively ready 2026-03-06
+// cwg2947: 23
 
 //--- cwg2947_example1.cpp
 // #define DOT_BAR .bar
diff --git a/clang/www/cxx_dr_status.html b/clang/www/cxx_dr_status.html
index 51c3d87322d0a..9c3ff1aac4b66 100755
--- a/clang/www/cxx_dr_status.html
+++ b/clang/www/cxx_dr_status.html
@@ -11473,7 +11473,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="1670">
     <td><a href="https://cplusplus.github.io/CWG/issues/1670.html">1670</a></td>
     <td>[<a href="https://wg21.link/dcl.spec.auto">dcl.spec.auto</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td><TT>auto</TT> as <I>conversion-type-id</I></td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -15383,7 +15383,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr class="open" id="2228">
     <td><a href="https://cplusplus.github.io/CWG/issues/2228.html">2228</a></td>
     <td>[<a href="https://wg21.link/dcl.ambig.res">dcl.ambig.res</a>]</td>
-    <td>review</td>
+    <td>tentatively ready</td>
     <td>Ambiguity resolution for cast to function type</td>
     <td align="center">Not resolved</td>
   </tr>
@@ -17684,7 +17684,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2555">
     <td><a href="https://cplusplus.github.io/CWG/issues/2555.html">2555</a></td>
     <td>[<a href="https://wg21.link/namespace.udecl">namespace.udecl</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Ineffective redeclaration prevention for <I>using-declarator</I>s</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -18063,12 +18063,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Omitting an empty template argument list</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
-  <tr class="open" id="2609">
+  <tr id="2609">
     <td><a href="https://cplusplus.github.io/CWG/issues/2609.html">2609</a></td>
     <td>[<a href="https://wg21.link/expr.sizeof">expr.sizeof</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Padding in class types</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="2610">
     <td><a href="https://cplusplus.github.io/CWG/issues/2610.html">2610</a></td>
@@ -18420,12 +18420,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Missing feature-test macro for lifetime extension in range-for loop</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
-  <tr class="open" id="2660">
+  <tr id="2660">
     <td><a href="https://cplusplus.github.io/CWG/issues/2660.html">2660</a></td>
     <td>[<a href="https://wg21.link/expr.call">expr.call</a>]</td>
-    <td>open</td>
+    <td>DR</td>
     <td>Confusing term "this parameter"</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="2661">
     <td><a href="https://cplusplus.github.io/CWG/issues/2661.html">2661</a></td>
@@ -18465,7 +18465,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr class="open" id="2666">
     <td><a href="https://cplusplus.github.io/CWG/issues/2666.html">2666</a></td>
     <td>[<a href="https://wg21.link/class.temporary">class.temporary</a>]</td>
-    <td>open</td>
+    <td>drafting</td>
     <td>Lifetime extension through <TT>static_cast</TT></td>
     <td align="center">Not resolved</td>
   </tr>
@@ -18542,7 +18542,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2677">
     <td><a href="https://cplusplus.github.io/CWG/issues/2677.html">2677</a></td>
     <td>[<a href="https://wg21.link/basic.life">basic.life</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Replacing union subobjects</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -19008,12 +19008,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Copying non-trivial objects nested within a union</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="2744">
+  <tr id="2744">
     <td><a href="https://cplusplus.github.io/CWG/issues/2744.html">2744</a></td>
     <td>[<a href="https://wg21.link/intro.object">intro.object</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Multiple objects of the same type at the same address</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="2745">
     <td><a href="https://cplusplus.github.io/CWG/issues/2745.html">2745</a></td>
@@ -19155,12 +19155,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Use of placeholders affecting name mangling</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
-  <tr class="open" id="2765">
+  <tr id="2765">
     <td><a href="https://cplusplus.github.io/CWG/issues/2765.html">2765</a></td>
     <td>[<a href="https://wg21.link/intro.object">intro.object</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Address comparisons between potentially non-unique objects during constant evaluation</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="2766">
     <td><a href="https://cplusplus.github.io/CWG/issues/2766.html">2766</a></td>
@@ -19397,12 +19397,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Manifestly constant evaluation of the <TT>static_assert</TT> message</td>
     <td class="full" align="center">Clang 17</td>
   </tr>
-  <tr class="open" id="2799">
+  <tr id="2799">
     <td><a href="https://cplusplus.github.io/CWG/issues/2799.html">2799</a></td>
     <td>[<a href="https://wg21.link/class.default.ctor">class.default.ctor</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Inheriting default constructors</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="2800">
     <td><a href="https://cplusplus.github.io/CWG/issues/2800.html">2800</a></td>
@@ -19936,7 +19936,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2875">
     <td><a href="https://cplusplus.github.io/CWG/issues/2875.html">2875</a></td>
     <td>[<a href="https://wg21.link/diff.expr">diff.expr</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Missing support for round-tripping null pointer values through indirection/address operators</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20115,7 +20115,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2900">
     <td><a href="https://cplusplus.github.io/CWG/issues/2900.html">2900</a></td>
     <td>[<a href="https://wg21.link/temp.deduct.type">temp.deduct.type</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Deduction of non-type template arguments with placeholder types</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20234,7 +20234,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2917">
     <td><a href="https://cplusplus.github.io/CWG/issues/2917.html">2917</a></td>
     <td>[<a href="https://wg21.link/temp.pre">temp.pre</a>]</td>
-    <td>accepted</td>
+    <td>WP</td>
     <td>Disallow multiple <I>friend-type-specifier</I>s for a friend template</td>
     <td class="full" align="center">Clang 20</td>
   </tr>
@@ -20276,7 +20276,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2923">
     <td><a href="https://cplusplus.github.io/CWG/issues/2923.html">2923</a></td>
     <td>[<a href="https://wg21.link/intro.progress">intro.progress</a>]</td>
-    <td>accepted</td>
+    <td>WP</td>
     <td>Note about infinite loops and execution steps</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20318,7 +20318,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2929">
     <td><a href="https://cplusplus.github.io/CWG/issues/2929.html">2929</a></td>
     <td>[<a href="https://wg21.link/basic.start.term">basic.start.term</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Lifetime of trivially-destructible static or thread-local objects</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20402,7 +20402,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="2941">
     <td><a href="https://cplusplus.github.io/CWG/issues/2941.html">2941</a></td>
     <td>[<a href="https://wg21.link/class.temporary">class.temporary</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Lifetime extension for function-style cast to reference type</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20441,16 +20441,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Dependent call equivalence in non-ADL cases</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="2947">
+  <tr id="2947">
     <td><a href="https://cplusplus.github.io/CWG/issues/2947.html">2947</a></td>
     <td>[<a href="https://wg21.link/cpp.module">cpp.module</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Limiting macro expansion in <I>pp-module</I></td>
-    <td align="center">
-      <details>
-        <summary>Not resolved</summary>
-        Clang 23 implements 2026-03-06 resolution
-      </details></td>
+    <td class="unreleased" align="center">Clang 23</td>
   </tr>
   <tr class="open" id="2948">
     <td><a href="https://cplusplus.github.io/CWG/issues/2948.html">2948</a></td>
@@ -20578,12 +20574,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Generic lambdas do not have a template parameter scope</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="2966">
+  <tr id="2966">
     <td><a href="https://cplusplus.github.io/CWG/issues/2966.html">2966</a></td>
     <td>[<a href="https://wg21.link/basic.fundamental">basic.fundamental</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Alignment and value representation of <TT>std::nullptr_t</TT></td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="2967">
     <td><a href="https://cplusplus.github.io/CWG/issues/2967.html">2967</a></td>
@@ -20648,12 +20644,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Effect of concept <I>template-head</I> on parameter mappings</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="2976">
+  <tr id="2976">
     <td><a href="https://cplusplus.github.io/CWG/issues/2976.html">2976</a></td>
     <td>[<a href="https://wg21.link/stmt.dcl">stmt.dcl</a>]</td>
-    <td>review</td>
+    <td>DR</td>
     <td>Transferring control out of a function</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="2977">
     <td><a href="https://cplusplus.github.io/CWG/issues/2977.html">2977</a></td>
@@ -20697,12 +20693,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Deduction in <I>type-constraint</I>s</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
-  <tr class="open" id="2983">
+  <tr id="2983">
     <td><a href="https://cplusplus.github.io/CWG/issues/2983.html">2983</a></td>
     <td>[<a href="https://wg21.link/basic.pre">basic.pre</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Non-type template parameters are not variables</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="2984">
     <td><a href="https://cplusplus.github.io/CWG/issues/2984.html">2984</a></td>
@@ -20760,12 +20756,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>"array size" is vague</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="2992">
+  <tr id="2992">
     <td><a href="https://cplusplus.github.io/CWG/issues/2992.html">2992</a></td>
     <td>[<a href="https://wg21.link/basic.pre">basic.pre</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Labels do not have names</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="2993">
     <td><a href="https://cplusplus.github.io/CWG/issues/2993.html">2993</a></td>
@@ -20784,14 +20780,14 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr class="open" id="2995">
     <td><a href="https://cplusplus.github.io/CWG/issues/2995.html">2995</a></td>
     <td>[<a href="https://wg21.link/stmt.return">stmt.return</a>]</td>
-    <td>tentatively ready</td>
+    <td>open</td>
     <td>Meaning of flowing off the end of a function</td>
     <td align="center">Not resolved</td>
   </tr>
   <tr class="open" id="2996">
     <td><a href="https://cplusplus.github.io/CWG/issues/2996.html">2996</a></td>
     <td>[<a href="https://wg21.link/temp.constr.atomic">temp.constr.atomic</a>]</td>
-    <td>tentatively ready</td>
+    <td>review</td>
     <td>Impenetrable definition of atomic constraint</td>
     <td align="center">Not resolved</td>
   </tr>
@@ -20826,14 +20822,14 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="3001">
     <td><a href="https://cplusplus.github.io/CWG/issues/3001.html">3001</a></td>
     <td>[<a href="https://wg21.link/basic.life">basic.life</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Inconsistent restrictions for <TT>static_cast</TT> on pointers to out-of-lifetime objects</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="3002">
     <td><a href="https://cplusplus.github.io/CWG/issues/3002.html">3002</a></td>
     <td>[<a href="https://wg21.link/temp.dep.temp">temp.dep.temp</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Template parameter/argument confusion</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20847,14 +20843,14 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="3004">
     <td><a href="https://cplusplus.github.io/CWG/issues/3004.html">3004</a></td>
     <td>[<a href="https://wg21.link/expr.const">expr.const</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Pointer arithmetic on array of unknown bound</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="3005">
     <td><a href="https://cplusplus.github.io/CWG/issues/3005.html">3005</a></td>
     <td>[<a href="https://wg21.link/basic.scope.scope">basic.scope.scope</a>]</td>
-    <td>accepted</td>
+    <td>WP</td>
     <td>Function parameters should never be name-independent</td>
     <td class="full" align="center">Clang 21</td>
   </tr>
@@ -20875,7 +20871,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="3008">
     <td><a href="https://cplusplus.github.io/CWG/issues/3008.html">3008</a></td>
     <td>[<a href="https://wg21.link/diff.dcl">diff.dcl</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Missing Annex C entry for <TT>void</TT> object declarations</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20886,17 +20882,17 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Unclear rules for constant initialization</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="3010">
+  <tr id="3010">
     <td><a href="https://cplusplus.github.io/CWG/issues/3010.html">3010</a></td>
     <td>[<a href="https://wg21.link/expr.const">expr.const</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>constexpr placement-new should require transparent replaceability</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="3011">
     <td><a href="https://cplusplus.github.io/CWG/issues/3011.html">3011</a></td>
     <td>[<a href="https://wg21.link/expr.new">expr.new</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Parenthesized aggregate initialization for <I>new-expression</I>s</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -20980,7 +20976,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr class="open" id="3023">
     <td><a href="https://cplusplus.github.io/CWG/issues/3023.html">3023</a></td>
     <td>[<a href="https://wg21.link/dcl.init.list">dcl.init.list</a>]</td>
-    <td>open</td>
+    <td>tentatively ready</td>
     <td>Default arguments in list-initialization</td>
     <td align="center">Not resolved</td>
   </tr>
@@ -21019,12 +21015,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>A <I>using-declarator</I> should bind a name</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="3029">
+  <tr id="3029">
     <td><a href="https://cplusplus.github.io/CWG/issues/3029.html">3029</a></td>
     <td>[<a href="https://wg21.link/basic.align">basic.align</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Confusing note about ordinary character types for aligned memory areas</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="3030">
     <td><a href="https://cplusplus.github.io/CWG/issues/3030.html">3030</a></td>
@@ -21043,7 +21039,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="3032">
     <td><a href="https://cplusplus.github.io/CWG/issues/3032.html">3032</a></td>
     <td>[<a href="https://wg21.link/temp.arg.general">temp.arg.general</a>]</td>
-    <td>DR</td>
+    <td>DRWP</td>
     <td>Template argument disambiguation</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -21061,12 +21057,12 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td>Infinite recursion should hit an implementation limit</td>
     <td align="center">Not resolved</td>
   </tr>
-  <tr class="open" id="3035">
+  <tr id="3035">
     <td><a href="https://cplusplus.github.io/CWG/issues/3035.html">3035</a></td>
     <td>[<a href="https://wg21.link/class.union.anon">class.union.anon</a>]</td>
-    <td>tentatively ready</td>
+    <td>DR</td>
     <td>Lambda expressions in anonymous unions</td>
-    <td align="center">Not resolved</td>
+    <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr class="open" id="3036">
     <td><a href="https://cplusplus.github.io/CWG/issues/3036.html">3036</a></td>
@@ -21120,21 +21116,21 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="3043">
     <td><a href="https://cplusplus.github.io/CWG/issues/3043.html">3043</a></td>
     <td>[<a href="https://wg21.link/class.temporary">class.temporary</a>]</td>
-    <td>accepted</td>
+    <td>WP</td>
     <td>Lifetime extension for temporaries in expansion statements</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="3044">
     <td><a href="https://cplusplus.github.io/CWG/issues/3044.html">3044</a></td>
     <td>[<a href="https://wg21.link/stmt.expand">stmt.expand</a>]</td>
-    <td>accepted</td>
+    <td>WP</td>
     <td>Iterating expansion statements woes</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
   <tr id="3045">
     <td><a href="https://cplusplus.github.io/CWG/issues/3045.html">3045</a></td>
     <td>[<a href="https://wg21.link/basic.scope.block">basic.scope.block</a>]</td>
-    <td>accepted</td>
+    <td>WP</td>
     <td>Regularizing environment interactions of expansion statement</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -21155,7 +21151,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
   <tr id="3048">
     <td><a href="https://cplusplus.github.io/CWG/issues/3048.html">3048</a></td>
     <td>[<a href="https://wg21.link/stmt.expand">stmt.expand</a>]</td>
-    <td>accepted</td>
+    <td>WP</td>
     <td>Empty destructuring expansion statements</td>
     <td class="unknown" align="center">Unknown</td>
   </tr>
@@ -21190,7 +21186,7 @@ <h2 id="cxxdr">C++ defect report implemen...
[truncated]

``````````

</details>


https://github.com/llvm/llvm-project/pull/192768


More information about the cfe-commits mailing list