diff options
| -rw-r--r-- | clang/test/CXX/drs/cwg2149.cpp | 2 | ||||
| -rw-r--r-- | clang/test/CXX/drs/dr20xx.cpp | 2 | ||||
| -rw-r--r-- | clang/test/CXX/drs/dr21xx.cpp | 2 | ||||
| -rw-r--r-- | clang/test/CXX/drs/dr24xx.cpp | 4 | ||||
| -rw-r--r-- | clang/test/CXX/drs/dr25xx.cpp | 4 | ||||
| -rw-r--r-- | clang/test/CXX/drs/dr28xx.cpp | 2 | ||||
| -rwxr-xr-x | clang/www/cxx_dr_status.html | 553 | ||||
| -rwxr-xr-x | clang/www/make_cxx_dr_status | 6 |
8 files changed, 410 insertions, 165 deletions
diff --git a/clang/test/CXX/drs/cwg2149.cpp b/clang/test/CXX/drs/cwg2149.cpp index d0f8cb2..8416e42 100644 --- a/clang/test/CXX/drs/cwg2149.cpp +++ b/clang/test/CXX/drs/cwg2149.cpp @@ -11,7 +11,7 @@ // cxx98-error@-1 {{variadic macros are a C99 feature}} #endif -namespace cwg2149 { // cwg2149: 3.1 drafting 2024-04 +namespace cwg2149 { // cwg2149: 3.1 #if __cplusplus <= 201103L struct X { int i, j, k; }; #else diff --git a/clang/test/CXX/drs/dr20xx.cpp b/clang/test/CXX/drs/dr20xx.cpp index 291a77e..9797097 100644 --- a/clang/test/CXX/drs/dr20xx.cpp +++ b/clang/test/CXX/drs/dr20xx.cpp @@ -90,7 +90,7 @@ namespace cwg2026 { // cwg2026: 11 } } -namespace cwg2049 { // cwg2049: 18 drafting P2308R1 +namespace cwg2049 { // cwg2049: 18 #if __cplusplus >= 202302L template <int* x = {}> struct X {}; X<> a; diff --git a/clang/test/CXX/drs/dr21xx.cpp b/clang/test/CXX/drs/dr21xx.cpp index 4fab10c..082deb4 100644 --- a/clang/test/CXX/drs/dr21xx.cpp +++ b/clang/test/CXX/drs/dr21xx.cpp @@ -175,6 +175,8 @@ void foo() { } } +// cwg2149 is in cwg2149.cpp + namespace cwg2157 { // cwg2157: 11 #if __cplusplus >= 201103L enum E : int; diff --git a/clang/test/CXX/drs/dr24xx.cpp b/clang/test/CXX/drs/dr24xx.cpp index 5ffaebda..9f876cd 100644 --- a/clang/test/CXX/drs/dr24xx.cpp +++ b/clang/test/CXX/drs/dr24xx.cpp @@ -45,7 +45,7 @@ void fallthrough(int n) { #endif } -namespace cwg2450 { // cwg2450: 18 review P2308R1 +namespace cwg2450 { // cwg2450: 18 #if __cplusplus >= 202302L struct S {int a;}; template <S s> @@ -59,7 +59,7 @@ f<{.a= 0}>(); #endif } -namespace cwg2459 { // cwg2459: 18 drafting P2308R1 +namespace cwg2459 { // cwg2459: 18 #if __cplusplus >= 202302L struct A { constexpr A(float) {} diff --git a/clang/test/CXX/drs/dr25xx.cpp b/clang/test/CXX/drs/dr25xx.cpp index 62b2a0a..481ae09 100644 --- a/clang/test/CXX/drs/dr25xx.cpp +++ b/clang/test/CXX/drs/dr25xx.cpp @@ -130,12 +130,14 @@ struct D3 : B { #endif #if __cplusplus >= 202302L -namespace cwg2561 { // cwg2561: 18 review 2023-11-09 +namespace cwg2561 { // cwg2561: no struct C { constexpr C(auto) { } }; void foo() { constexpr auto b = [](this C) { return 1; }; + // FIXME: closure type shouldn't have a conversion function to function + // pointer, because explicit object parameter is present. constexpr int (*fp)(C) = b; static_assert(fp(1) == 1); static_assert((&decltype(b)::operator())(1) == 1); diff --git a/clang/test/CXX/drs/dr28xx.cpp b/clang/test/CXX/drs/dr28xx.cpp index 4d9b0c7..1967e8b 100644 --- a/clang/test/CXX/drs/dr28xx.cpp +++ b/clang/test/CXX/drs/dr28xx.cpp @@ -10,7 +10,7 @@ // expected-no-diagnostics #endif -namespace cwg2847 { // cwg2847: 19 +namespace cwg2847 { // cwg2847: 19 review 2024-03-01 #if __cplusplus >= 202002L diff --git a/clang/www/cxx_dr_status.html b/clang/www/cxx_dr_status.html index ea8872c..19d29cb 100755 --- a/clang/www/cxx_dr_status.html +++ b/clang/www/cxx_dr_status.html @@ -1433,11 +1433,11 @@ accessible?</td> <td>Is indirection through a null pointer undefined behavior?</td> <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="233"> + <tr id="233"> <td><a href="https://cplusplus.github.io/CWG/issues/233.html">233</a></td> - <td>drafting</td> + <td>tentatively ready</td> <td>References vs pointers in UDC overload resolution</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="234"> <td><a href="https://cplusplus.github.io/CWG/issues/234.html">234</a></td> @@ -2756,7 +2756,7 @@ of class templates</td> </tr> <tr id="453"> <td><a href="https://cplusplus.github.io/CWG/issues/453.html">453</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>References may only bind to “valid” objects</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -5812,7 +5812,7 @@ and <I>POD class</I></td> </tr> <tr class="open" id="1001"> <td><a href="https://cplusplus.github.io/CWG/issues/1001.html">1001</a></td> - <td>drafting</td> + <td>review</td> <td>Parameter type adjustment in dependent parameter types</td> <td align="center">Not resolved</td> </tr> @@ -6034,7 +6034,7 @@ and <I>POD class</I></td> </tr> <tr id="1038"> <td><a href="https://cplusplus.github.io/CWG/issues/1038.html">1038</a></td> - <td>DR</td> + <td>DRWP</td> <td>Overload resolution of <TT>&x.static_func</TT></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -9994,7 +9994,7 @@ and <I>POD class</I></td> </tr> <tr id="1698"> <td><a href="https://cplusplus.github.io/CWG/issues/1698.html">1698</a></td> - <td>DR</td> + <td>DRWP</td> <td>Files ending in <TT>\</TT></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -10132,7 +10132,7 @@ and <I>POD class</I></td> </tr> <tr class="open" id="1721"> <td><a href="https://cplusplus.github.io/CWG/issues/1721.html">1721</a></td> - <td>drafting</td> + <td>review</td> <td>Diagnosing ODR violations for static data members</td> <td align="center">Not resolved</td> </tr> @@ -11312,11 +11312,11 @@ and <I>POD class</I></td> <td>decltype-qualified enumeration names</td> <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="1918"> + <tr id="1918"> <td><a href="https://cplusplus.github.io/CWG/issues/1918.html">1918</a></td> - <td>open</td> + <td>CD5</td> <td><TT>friend</TT> templates with dependent scopes</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="1919"> <td><a href="https://cplusplus.github.io/CWG/issues/1919.html">1919</a></td> @@ -11474,11 +11474,11 @@ and <I>POD class</I></td> <td>New C incompatibilities</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="1945"> + <tr id="1945"> <td><a href="https://cplusplus.github.io/CWG/issues/1945.html">1945</a></td> - <td>open</td> + <td>CD5</td> <td>Friend declarations naming members of class templates in non-templates</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="1946"> <td><a href="https://cplusplus.github.io/CWG/issues/1946.html">1946</a></td> @@ -11530,7 +11530,7 @@ and <I>POD class</I></td> </tr> <tr id="1954"> <td><a href="https://cplusplus.github.io/CWG/issues/1954.html">1954</a></td> - <td>tentatively ready</td> + <td>DR</td> <td><TT>typeid</TT> null dereference check in subexpressions</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -12098,11 +12098,11 @@ and <I>POD class</I></td> <td>C-style casts that cast away constness vs <TT>static_cast</TT></td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2049"> + <tr id="2049"> <td><a href="https://cplusplus.github.io/CWG/issues/2049.html">2049</a></td> - <td>drafting</td> + <td>DRWP</td> <td>List initializer in non-type template default argument</td> - <td title="Clang 18 implements P2308R1 resolution" align="center">Not Resolved*</td> + <td class="full" align="center">Clang 18</td> </tr> <tr id="2050"> <td><a href="https://cplusplus.github.io/CWG/issues/2050.html">2050</a></td> @@ -12130,7 +12130,7 @@ and <I>POD class</I></td> </tr> <tr id="2054"> <td><a href="https://cplusplus.github.io/CWG/issues/2054.html">2054</a></td> - <td>DR</td> + <td>DRWP</td> <td>Missing description of class SFINAE</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -12418,7 +12418,7 @@ and <I>POD class</I></td> </tr> <tr id="2102"> <td><a href="https://cplusplus.github.io/CWG/issues/2102.html">2102</a></td> - <td>DR</td> + <td>DRWP</td> <td>Constructor checking in <I>new-expression</I></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -12698,11 +12698,11 @@ and <I>POD class</I></td> <td>Thread storage duration and order of initialization</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2149"> + <tr id="2149"> <td><a href="https://cplusplus.github.io/CWG/issues/2149.html">2149</a></td> - <td>drafting</td> + <td>DR</td> <td>Brace elision and array length deduction</td> - <td title="Clang 3.1 implements 2024-04 resolution" align="center">Not Resolved*</td> + <td class="full" align="center">Clang 3.1</td> </tr> <tr id="2150"> <td><a href="https://cplusplus.github.io/CWG/issues/2150.html">2150</a></td> @@ -13318,7 +13318,7 @@ and <I>POD class</I></td> </tr> <tr id="2252"> <td><a href="https://cplusplus.github.io/CWG/issues/2252.html">2252</a></td> - <td>DR</td> + <td>DRWP</td> <td>Enumeration list-initialization from the same type</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -14410,7 +14410,7 @@ and <I>POD class</I></td> </tr> <tr class="open" id="2434"> <td><a href="https://cplusplus.github.io/CWG/issues/2434.html">2434</a></td> - <td>open</td> + <td>review</td> <td>Mandatory copy elision vs non-class objects</td> <td align="center">Not resolved</td> </tr> @@ -14504,11 +14504,11 @@ and <I>POD class</I></td> <td>Thunks as an implementation technique for pointers to virtual functions</td> <td align="center">Extension</td> </tr> - <tr class="open" id="2450"> + <tr id="2450"> <td><a href="https://cplusplus.github.io/CWG/issues/2450.html">2450</a></td> - <td>review</td> + <td>DRWP</td> <td><I>braced-init-list</I> as a <I>template-argument</I></td> - <td title="Clang 18 implements P2308R1 resolution" align="center">Not Resolved*</td> + <td class="full" align="center">Clang 18</td> </tr> <tr id="2451"> <td><a href="https://cplusplus.github.io/CWG/issues/2451.html">2451</a></td> @@ -14558,11 +14558,11 @@ and <I>POD class</I></td> <td>Value category of expressions denoting non-static member functions</td> <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2459"> + <tr id="2459"> <td><a href="https://cplusplus.github.io/CWG/issues/2459.html">2459</a></td> - <td>drafting</td> + <td>DRWP</td> <td>Template parameter initialization</td> - <td title="Clang 18 implements P2308R1 resolution" align="center">Not Resolved*</td> + <td class="full" align="center">Clang 18</td> </tr> <tr id="2460"> <td><a href="https://cplusplus.github.io/CWG/issues/2460.html">2460</a></td> @@ -14662,7 +14662,7 @@ and <I>POD class</I></td> </tr> <tr id="2476"> <td><a href="https://cplusplus.github.io/CWG/issues/2476.html">2476</a></td> - <td>tentatively ready</td> + <td>DR</td> <td><I>placeholder-type-specifier</I>s and function declarators</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -14830,7 +14830,7 @@ and <I>POD class</I></td> </tr> <tr id="2504"> <td><a href="https://cplusplus.github.io/CWG/issues/2504.html">2504</a></td> - <td>DR</td> + <td>DRWP</td> <td>Inheriting constructors from virtual base classes</td> <td class="none" align="center">No</td> </tr> @@ -14992,7 +14992,7 @@ and <I>POD class</I></td> </tr> <tr id="2531"> <td><a href="https://cplusplus.github.io/CWG/issues/2531.html">2531</a></td> - <td>DR</td> + <td>DRWP</td> <td>Static data members redeclared as constexpr</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15002,11 +15002,11 @@ and <I>POD class</I></td> <td>Kind of pointer value returned by <TT>new T[0]</TT></td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2533"> + <tr id="2533"> <td><a href="https://cplusplus.github.io/CWG/issues/2533.html">2533</a></td> - <td>review</td> + <td>DR</td> <td>Storage duration of implicitly created objects</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="2534"> <td><a href="https://cplusplus.github.io/CWG/issues/2534.html">2534</a></td> @@ -15082,13 +15082,13 @@ and <I>POD class</I></td> </tr> <tr id="2546"> <td><a href="https://cplusplus.github.io/CWG/issues/2546.html">2546</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Defaulted secondary comparison operators defined as deleted</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2547"> <td><a href="https://cplusplus.github.io/CWG/issues/2547.html">2547</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Defaulted comparison operator function for non-classes</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15142,7 +15142,7 @@ and <I>POD class</I></td> </tr> <tr id="2556"> <td><a href="https://cplusplus.github.io/CWG/issues/2556.html">2556</a></td> - <td>DR</td> + <td>DRWP</td> <td>Unusable <TT>promise::return_void</TT></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15166,15 +15166,15 @@ and <I>POD class</I></td> </tr> <tr id="2560"> <td><a href="https://cplusplus.github.io/CWG/issues/2560.html">2560</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Parameter type determination in a <I>requirement-parameter-list</I></td> <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2561"> + <tr id="2561"> <td><a href="https://cplusplus.github.io/CWG/issues/2561.html">2561</a></td> - <td>review</td> + <td>tentatively ready</td> <td>Conversion to function pointer for lambda with explicit object parameter</td> - <td title="Clang 18 implements 2023-11-09 resolution" align="center">Not Resolved*</td> + <td class="none" align="center">No</td> </tr> <tr class="open" id="2562"> <td><a href="https://cplusplus.github.io/CWG/issues/2562.html">2562</a></td> @@ -15214,7 +15214,7 @@ and <I>POD class</I></td> </tr> <tr id="2568"> <td><a href="https://cplusplus.github.io/CWG/issues/2568.html">2568</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Access checking during synthesis of defaulted comparison operator</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15226,7 +15226,7 @@ and <I>POD class</I></td> </tr> <tr id="2570"> <td><a href="https://cplusplus.github.io/CWG/issues/2570.html">2570</a></td> - <td>DR</td> + <td>DRWP</td> <td>Clarify constexpr for defaulted functions</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15332,11 +15332,11 @@ and <I>POD class</I></td> <td>Visible side effects and initial value of an object</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2588"> + <tr id="2588"> <td><a href="https://cplusplus.github.io/CWG/issues/2588.html">2588</a></td> - <td>drafting</td> + <td>tentatively ready</td> <td>friend declarations and module linkage</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2589"> <td><a href="https://cplusplus.github.io/CWG/issues/2589.html">2589</a></td> @@ -15352,7 +15352,7 @@ and <I>POD class</I></td> </tr> <tr id="2591"> <td><a href="https://cplusplus.github.io/CWG/issues/2591.html">2591</a></td> - <td>DR</td> + <td>DRWP</td> <td>Implicit change of active union member for anonymous union in union</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15376,7 +15376,7 @@ and <I>POD class</I></td> </tr> <tr id="2595"> <td><a href="https://cplusplus.github.io/CWG/issues/2595.html">2595</a></td> - <td>DR</td> + <td>DRWP</td> <td>"More constrained" for eligible special member functions</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15406,7 +15406,7 @@ and <I>POD class</I></td> </tr> <tr id="2600"> <td><a href="https://cplusplus.github.io/CWG/issues/2600.html">2600</a></td> - <td>DR</td> + <td>DRWP</td> <td>Type dependency of placeholder types</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15574,7 +15574,7 @@ and <I>POD class</I></td> </tr> <tr id="2628"> <td><a href="https://cplusplus.github.io/CWG/issues/2628.html">2628</a></td> - <td>DR</td> + <td>DRWP</td> <td>Implicit deduction guides should propagate constraints</td> <td class="none" align="center">No</td> </tr> @@ -15610,7 +15610,7 @@ and <I>POD class</I></td> </tr> <tr id="2634"> <td><a href="https://cplusplus.github.io/CWG/issues/2634.html">2634</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Avoid circularity in specification of scope for friend class declarations</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15628,13 +15628,13 @@ and <I>POD class</I></td> </tr> <tr id="2637"> <td><a href="https://cplusplus.github.io/CWG/issues/2637.html">2637</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Injected-class-name as a <I>simple-template-id</I></td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2638"> <td><a href="https://cplusplus.github.io/CWG/issues/2638.html">2638</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Improve the example for initializing by initializer list</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15748,7 +15748,7 @@ and <I>POD class</I></td> </tr> <tr id="2657"> <td><a href="https://cplusplus.github.io/CWG/issues/2657.html">2657</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Cv-qualification adjustment when binding reference to temporary</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15770,11 +15770,11 @@ and <I>POD class</I></td> <td>Confusing term "this parameter"</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2661"> + <tr id="2661"> <td><a href="https://cplusplus.github.io/CWG/issues/2661.html">2661</a></td> - <td>open</td> + <td>DR</td> <td>Missing disambiguation rule for <I>pure-specifier</I> vs. <I>brace-or-equal-initializer</I></td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="2662"> <td><a href="https://cplusplus.github.io/CWG/issues/2662.html">2662</a></td> @@ -15814,7 +15814,7 @@ and <I>POD class</I></td> </tr> <tr id="2668"> <td><a href="https://cplusplus.github.io/CWG/issues/2668.html">2668</a></td> - <td>tentatively ready</td> + <td>DR</td> <td><TT>co_await</TT> in a <I>lambda-expression</I></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -15838,7 +15838,7 @@ and <I>POD class</I></td> </tr> <tr id="2672"> <td><a href="https://cplusplus.github.io/CWG/issues/2672.html">2672</a></td> - <td>DR</td> + <td>DRWP</td> <td>Lambda body SFINAE is still required, contrary to intent and note</td> <td class="full" align="center">Clang 18</td> </tr> @@ -15940,7 +15940,7 @@ and <I>POD class</I></td> </tr> <tr id="2689"> <td><a href="https://cplusplus.github.io/CWG/issues/2689.html">2689</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Are cv-qualified <TT>std::nullptr_t</TT> fundamental types?</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16004,11 +16004,11 @@ and <I>POD class</I></td> <td>Inconsistency of <I>throw-expression</I> specification</td> <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2700"> + <tr id="2700"> <td><a href="https://cplusplus.github.io/CWG/issues/2700.html">2700</a></td> - <td>review</td> + <td>DR</td> <td><TT>#error</TT> disallows existing implementation practice</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2701"> <td><a href="https://cplusplus.github.io/CWG/issues/2701.html">2701</a></td> @@ -16048,7 +16048,7 @@ and <I>POD class</I></td> </tr> <tr id="2707"> <td><a href="https://cplusplus.github.io/CWG/issues/2707.html">2707</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Deduction guides cannot have a trailing <I>requires-clause</I></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16088,11 +16088,11 @@ and <I>POD class</I></td> <td>Initialization of reference-to-aggregate from designated initializer list</td> <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2714"> + <tr id="2714"> <td><a href="https://cplusplus.github.io/CWG/issues/2714.html">2714</a></td> - <td>open</td> + <td>DR</td> <td>Implicit deduction guides omit properties from the parameter-declaration-clause of a constructor</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="2715"> <td><a href="https://cplusplus.github.io/CWG/issues/2715.html">2715</a></td> @@ -16156,7 +16156,7 @@ and <I>POD class</I></td> </tr> <tr id="2725"> <td><a href="https://cplusplus.github.io/CWG/issues/2725.html">2725</a></td> - <td>DR</td> + <td>DRWP</td> <td>Overload resolution for non-call of class member access</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16172,11 +16172,11 @@ and <I>POD class</I></td> <td>Importing header units synthesized from source files</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2728"> + <tr id="2728"> <td><a href="https://cplusplus.github.io/CWG/issues/2728.html">2728</a></td> - <td>open</td> + <td>tentatively ready</td> <td>Evaluation of conversions in a <I>delete-expression</I></td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="2729"> <td><a href="https://cplusplus.github.io/CWG/issues/2729.html">2729</a></td> @@ -16204,7 +16204,7 @@ and <I>POD class</I></td> </tr> <tr id="2733"> <td><a href="https://cplusplus.github.io/CWG/issues/2733.html">2733</a></td> - <td>DR</td> + <td>DRWP</td> <td>Applying <TT>[[maybe_unused]]</TT> to a label</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16228,7 +16228,7 @@ and <I>POD class</I></td> </tr> <tr class="open" id="2737"> <td><a href="https://cplusplus.github.io/CWG/issues/2737.html">2737</a></td> - <td>open</td> + <td>review</td> <td>Temporary lifetime extension for reference init-captures</td> <td align="center">Not resolved</td> </tr> @@ -16258,7 +16258,7 @@ and <I>POD class</I></td> </tr> <tr class="open" id="2742"> <td><a href="https://cplusplus.github.io/CWG/issues/2742.html">2742</a></td> - <td>open</td> + <td>drafting</td> <td>Guaranteed copy elision for brace-initialization from prvalue</td> <td align="center">Not resolved</td> </tr> @@ -16274,33 +16274,33 @@ and <I>POD class</I></td> <td>Multiple objects of the same type at the same address</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2745"> + <tr id="2745"> <td><a href="https://cplusplus.github.io/CWG/issues/2745.html">2745</a></td> - <td>open</td> + <td>DR</td> <td>Dependent odr-use in generic lambdas</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2746"> + <tr id="2746"> <td><a href="https://cplusplus.github.io/CWG/issues/2746.html">2746</a></td> - <td>open</td> + <td>DR</td> <td>Checking of default template arguments</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="2747"> <td><a href="https://cplusplus.github.io/CWG/issues/2747.html">2747</a></td> - <td>DR</td> + <td>DRWP</td> <td>Cannot depend on an already-deleted splice</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2748"> <td><a href="https://cplusplus.github.io/CWG/issues/2748.html">2748</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Accessing static data members via null pointer</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2749"> <td><a href="https://cplusplus.github.io/CWG/issues/2749.html">2749</a></td> - <td>DR</td> + <td>DRWP</td> <td>Treatment of "pointer to void" for relational comparisons</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16324,19 +16324,19 @@ and <I>POD class</I></td> </tr> <tr id="2753"> <td><a href="https://cplusplus.github.io/CWG/issues/2753.html">2753</a></td> - <td>DR</td> + <td>DRWP</td> <td>Storage reuse for string literal objects and backing arrays</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2754"> <td><a href="https://cplusplus.github.io/CWG/issues/2754.html">2754</a></td> - <td>DR</td> + <td>DRWP</td> <td>Using *this in explicit object member functions that are coroutines</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2755"> <td><a href="https://cplusplus.github.io/CWG/issues/2755.html">2755</a></td> - <td>DR</td> + <td>DRWP</td> <td>Incorrect wording applied by P2738R1</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16354,43 +16354,43 @@ and <I>POD class</I></td> </tr> <tr id="2758"> <td><a href="https://cplusplus.github.io/CWG/issues/2758.html">2758</a></td> - <td>DR</td> + <td>DRWP</td> <td>What is "access and ambiguity control"?</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2759"> <td><a href="https://cplusplus.github.io/CWG/issues/2759.html">2759</a></td> - <td>DR</td> + <td>DRWP</td> <td>[[no_unique_address] and common initial sequence</td> <td class="unreleased" align="center">Clang 19</td> </tr> <tr id="2760"> <td><a href="https://cplusplus.github.io/CWG/issues/2760.html">2760</a></td> - <td>DR</td> + <td>DRWP</td> <td>Defaulted constructor that is an immediate function</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2761"> <td><a href="https://cplusplus.github.io/CWG/issues/2761.html">2761</a></td> - <td>DR</td> + <td>DRWP</td> <td>Implicitly invoking the deleted destructor of an anonymous union member</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2762"> <td><a href="https://cplusplus.github.io/CWG/issues/2762.html">2762</a></td> - <td>DR</td> + <td>DRWP</td> <td>Type of implicit object parameter</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2763"> <td><a href="https://cplusplus.github.io/CWG/issues/2763.html">2763</a></td> - <td>DR</td> + <td>DRWP</td> <td>Ignorability of [[noreturn]] during constant evaluation</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2764"> <td><a href="https://cplusplus.github.io/CWG/issues/2764.html">2764</a></td> - <td>DR</td> + <td>DRWP</td> <td>Use of placeholders affecting name mangling</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16403,7 +16403,8 @@ and <I>POD class</I></td> <tr class="open" id="2766"> <td><a href="https://cplusplus.github.io/CWG/issues/2766.html">2766</a></td> <td>open</td> - <td>Repeated evaluation of a <I>string-literal</I> may yield different objects</td> + <td>Repeated evaluation of a <I>string-literal</I> may yield different +objects</td> <td align="center">Not resolved</td> </tr> <tr class="open" id="2767"> @@ -16414,7 +16415,7 @@ and <I>POD class</I></td> </tr> <tr id="2768"> <td><a href="https://cplusplus.github.io/CWG/issues/2768.html">2768</a></td> - <td>DR</td> + <td>DRWP</td> <td>Assignment to enumeration variable with a <I>braced-init-list</I></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16430,15 +16431,15 @@ and <I>POD class</I></td> <td>Trailing <I>requires-clause</I> can refer to function parameters before they are substituted into</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2771"> + <tr id="2771"> <td><a href="https://cplusplus.github.io/CWG/issues/2771.html">2771</a></td> - <td>open</td> + <td>DR</td> <td>Transformation for <I>unqualified-id</I>s in address operator</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr id="2772"> <td><a href="https://cplusplus.github.io/CWG/issues/2772.html">2772</a></td> - <td>DR</td> + <td>DRWP</td> <td>Missing Annex C entry for linkage effects of <I>linkage-specification</I></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16456,7 +16457,7 @@ and <I>POD class</I></td> </tr> <tr id="2775"> <td><a href="https://cplusplus.github.io/CWG/issues/2775.html">2775</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Unclear argument type for copy of exception object</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16466,15 +16467,15 @@ and <I>POD class</I></td> <td>Substitution failure and implementation limits</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2777"> + <tr id="2777"> <td><a href="https://cplusplus.github.io/CWG/issues/2777.html">2777</a></td> - <td>open</td> + <td>DR</td> <td>Type of <I>id-expression</I> denoting a template parameter object</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2778"> <td><a href="https://cplusplus.github.io/CWG/issues/2778.html">2778</a></td> - <td>open</td> + <td>review</td> <td>Trivial destructor does not imply constant destruction</td> <td align="center">Not resolved</td> </tr> @@ -16486,7 +16487,7 @@ and <I>POD class</I></td> </tr> <tr id="2780"> <td><a href="https://cplusplus.github.io/CWG/issues/2780.html">2780</a></td> - <td>DR</td> + <td>DRWP</td> <td><TT>reinterpret_cast</TT> to reference to function types</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16504,7 +16505,7 @@ and <I>POD class</I></td> </tr> <tr id="2783"> <td><a href="https://cplusplus.github.io/CWG/issues/2783.html">2783</a></td> - <td>DR</td> + <td>DRWP</td> <td>Handling of deduction guides in <I>global-module-fragment</I></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16516,7 +16517,7 @@ and <I>POD class</I></td> </tr> <tr id="2785"> <td><a href="https://cplusplus.github.io/CWG/issues/2785.html">2785</a></td> - <td>DR</td> + <td>DRWP</td> <td>Type-dependence of <I>requires-expression</I></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16540,7 +16541,7 @@ and <I>POD class</I></td> </tr> <tr id="2789"> <td><a href="https://cplusplus.github.io/CWG/issues/2789.html">2789</a></td> - <td>DR</td> + <td>DRWP</td> <td>Overload resolution with implicit and explicit object member functions</td> <td class="full" align="center">Clang 18</td> </tr> @@ -16552,19 +16553,19 @@ and <I>POD class</I></td> </tr> <tr id="2791"> <td><a href="https://cplusplus.github.io/CWG/issues/2791.html">2791</a></td> - <td>DR</td> + <td>DRWP</td> <td>Unclear phrasing about "returning to the caller"</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2792"> <td><a href="https://cplusplus.github.io/CWG/issues/2792.html">2792</a></td> - <td>DR</td> + <td>DRWP</td> <td>Clean up specification of <TT>noexcept</TT> operator</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2793"> <td><a href="https://cplusplus.github.io/CWG/issues/2793.html">2793</a></td> - <td>DR</td> + <td>DRWP</td> <td>Block-scope declaration conflicting with parameter name</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16576,25 +16577,25 @@ and <I>POD class</I></td> </tr> <tr id="2795"> <td><a href="https://cplusplus.github.io/CWG/issues/2795.html">2795</a></td> - <td>DR</td> + <td>DRWP</td> <td>Overlapping empty subobjects with different cv-qualification</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2796"> <td><a href="https://cplusplus.github.io/CWG/issues/2796.html">2796</a></td> - <td>DR</td> + <td>DRWP</td> <td>Function pointer conversions for relational operators</td> <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2797"> <td><a href="https://cplusplus.github.io/CWG/issues/2797.html">2797</a></td> - <td>open</td> + <td>review</td> <td>Meaning of "corresponds" for rewritten operator candidates</td> <td align="center">Not resolved</td> </tr> <tr id="2798"> <td><a href="https://cplusplus.github.io/CWG/issues/2798.html">2798</a></td> - <td>DR</td> + <td>DRWP</td> <td>Manifestly constant evaluation of the <TT>static_assert</TT> message</td> <td class="full" align="center">Clang 17</td> </tr> @@ -16612,7 +16613,7 @@ and <I>POD class</I></td> </tr> <tr id="2801"> <td><a href="https://cplusplus.github.io/CWG/issues/2801.html">2801</a></td> - <td>DR</td> + <td>DRWP</td> <td>Reference binding with reference-related types</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16624,7 +16625,7 @@ and <I>POD class</I></td> </tr> <tr id="2803"> <td><a href="https://cplusplus.github.io/CWG/issues/2803.html">2803</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Overload resolution for reference binding of similar types</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16642,13 +16643,13 @@ and <I>POD class</I></td> </tr> <tr id="2806"> <td><a href="https://cplusplus.github.io/CWG/issues/2806.html">2806</a></td> - <td>DR</td> + <td>DRWP</td> <td>Make a <I>type-requirement</I> a type-only context</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2807"> <td><a href="https://cplusplus.github.io/CWG/issues/2807.html">2807</a></td> - <td>DR</td> + <td>DRWP</td> <td>Destructors declared <TT>consteval</TT></td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16660,19 +16661,19 @@ and <I>POD class</I></td> </tr> <tr id="2809"> <td><a href="https://cplusplus.github.io/CWG/issues/2809.html">2809</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>An implicit definition does not redeclare a function</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2810"> <td><a href="https://cplusplus.github.io/CWG/issues/2810.html">2810</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Requiring the absence of diagnostics for templates</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2811"> <td><a href="https://cplusplus.github.io/CWG/issues/2811.html">2811</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Clarify "use" of main</td> <td class="unknown" align="center">Unknown</td> </tr> @@ -16682,11 +16683,11 @@ and <I>POD class</I></td> <td>Allocation with explicit alignment</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2813"> + <tr id="2813"> <td><a href="https://cplusplus.github.io/CWG/issues/2813.html">2813</a></td> - <td>review</td> + <td>DR</td> <td>Class member access with prvalues</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2814"> <td><a href="https://cplusplus.github.io/CWG/issues/2814.html">2814</a></td> @@ -16712,59 +16713,59 @@ and <I>POD class</I></td> <td>sizeof(abstract class) is underspecified</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2818"> + <tr id="2818"> <td><a href="https://cplusplus.github.io/CWG/issues/2818.html">2818</a></td> - <td>review</td> + <td>tentatively ready</td> <td>Use of predefined reserved identifiers</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2819"> + <tr id="2819"> <td><a href="https://cplusplus.github.io/CWG/issues/2819.html">2819</a></td> - <td>review</td> + <td>tentatively ready</td> <td>Cast from null pointer value in a constant expression</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2820"> + <tr id="2820"> <td><a href="https://cplusplus.github.io/CWG/issues/2820.html">2820</a></td> - <td>open</td> + <td>DR</td> <td>Value-initialization and default constructors</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2821"> <td><a href="https://cplusplus.github.io/CWG/issues/2821.html">2821</a></td> - <td>open</td> + <td>review</td> <td>Lifetime, zero-initialization, and dynamic initialization</td> <td align="center">Not resolved</td> </tr> <tr id="2822"> <td><a href="https://cplusplus.github.io/CWG/issues/2822.html">2822</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Side-effect-free pointer zap</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2823"> <td><a href="https://cplusplus.github.io/CWG/issues/2823.html">2823</a></td> - <td>DR</td> + <td>DRWP</td> <td>Implicit undefined behavior when dereferencing pointers</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2824"> <td><a href="https://cplusplus.github.io/CWG/issues/2824.html">2824</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Copy-initialization of arrays</td> <td class="unknown" align="center">Unknown</td> </tr> <tr id="2825"> <td><a href="https://cplusplus.github.io/CWG/issues/2825.html">2825</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Range-based for statement using a <I>braced-init-list</I></td> <td class="unknown" align="center">Unknown</td> </tr> - <tr id="2826"> + <tr class="open" id="2826"> <td><a href="https://cplusplus.github.io/CWG/issues/2826.html">2826</a></td> - <td>tentatively ready</td> + <td>drafting</td> <td>Missing definition of "temporary expression"</td> - <td class="unknown" align="center">Unknown</td> + <td align="center">Not resolved</td> </tr> <tr class="open" id="2827"> <td><a href="https://cplusplus.github.io/CWG/issues/2827.html">2827</a></td> @@ -16772,11 +16773,11 @@ and <I>POD class</I></td> <td>Representation of unsigned integral types</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2828"> + <tr id="2828"> <td><a href="https://cplusplus.github.io/CWG/issues/2828.html">2828</a></td> - <td>review</td> + <td>DR</td> <td>Ambiguous interpretation of C-style cast</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2829"> <td><a href="https://cplusplus.github.io/CWG/issues/2829.html">2829</a></td> @@ -16784,17 +16785,17 @@ and <I>POD class</I></td> <td>Redundant case in restricting user-defined conversion sequences</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2830"> + <tr id="2830"> <td><a href="https://cplusplus.github.io/CWG/issues/2830.html">2830</a></td> - <td>open</td> + <td>DR</td> <td>Top-level cv-qualification should be ignored for list-initialization</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> - <tr class="open" id="2831"> + <tr id="2831"> <td><a href="https://cplusplus.github.io/CWG/issues/2831.html">2831</a></td> - <td>open</td> + <td>DR</td> <td>Non-templated function definitions and <I>requires-clause</I>s</td> - <td align="center">Not resolved</td> + <td class="unknown" align="center">Unknown</td> </tr> <tr class="open" id="2832"> <td><a href="https://cplusplus.github.io/CWG/issues/2832.html">2832</a></td> @@ -16810,7 +16811,7 @@ and <I>POD class</I></td> </tr> <tr class="open" id="2834"> <td><a href="https://cplusplus.github.io/CWG/issues/2834.html">2834</a></td> - <td>open</td> + <td>review</td> <td>Partial ordering and explicit object parameters</td> <td align="center">Not resolved</td> </tr> @@ -16822,7 +16823,7 @@ and <I>POD class</I></td> </tr> <tr class="open" id="2836"> <td><a href="https://cplusplus.github.io/CWG/issues/2836.html">2836</a></td> - <td>open</td> + <td>review</td> <td>Conversion rank of <TT>long double</TT> and extended floating-point types</td> <td align="center">Not resolved</td> </tr> @@ -16855,6 +16856,246 @@ and <I>POD class</I></td> <td>open</td> <td>When do const objects start being const?</td> <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2842"> + <td><a href="https://cplusplus.github.io/CWG/issues/2842.html">2842</a></td> + <td>open</td> + <td>Preferring an <TT>initializer_list</TT> over a single value</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2843"> + <td><a href="https://cplusplus.github.io/CWG/issues/2843.html">2843</a></td> + <td>review</td> + <td>Undated reference to Unicode makes C++ a moving target</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2844"> + <td><a href="https://cplusplus.github.io/CWG/issues/2844.html">2844</a></td> + <td>open</td> + <td>Enumerating a finite set of built-in candidates</td> + <td align="center">Not resolved</td> + </tr> + <tr id="2845"> + <td><a href="https://cplusplus.github.io/CWG/issues/2845.html">2845</a></td> + <td>DR</td> + <td>Make the closure type of a captureless lambda a structural type</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2846"> + <td><a href="https://cplusplus.github.io/CWG/issues/2846.html">2846</a></td> + <td>DR</td> + <td>Out-of-class definitions of explicit object member functions</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr class="open" id="2847"> + <td><a href="https://cplusplus.github.io/CWG/issues/2847.html">2847</a></td> + <td>review</td> + <td>Constrained explicit specializations of function templates at class scope</td> + <td title="Clang 19 implements 2024-03-01 resolution" align="center">Not Resolved*</td> + </tr> + <tr id="2848"> + <td><a href="https://cplusplus.github.io/CWG/issues/2848.html">2848</a></td> + <td>DR</td> + <td>Omitting an empty template argument list for explicit instantiation</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2849"> + <td><a href="https://cplusplus.github.io/CWG/issues/2849.html">2849</a></td> + <td>DR</td> + <td>Parameter objects are not temporary objects</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2850"> + <td><a href="https://cplusplus.github.io/CWG/issues/2850.html">2850</a></td> + <td>DR</td> + <td>Unclear storage duration for function parameter objects</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2851"> + <td><a href="https://cplusplus.github.io/CWG/issues/2851.html">2851</a></td> + <td>DR</td> + <td>Allow floating-point conversions in converted constant expressions</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr class="open" id="2852"> + <td><a href="https://cplusplus.github.io/CWG/issues/2852.html">2852</a></td> + <td>open</td> + <td>Complete-class contexts and class-scope lambdas</td> + <td align="center">Not resolved</td> + </tr> + <tr id="2853"> + <td><a href="https://cplusplus.github.io/CWG/issues/2853.html">2853</a></td> + <td>DR</td> + <td>Pointer arithmetic with pointer to hypothetical element</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2854"> + <td><a href="https://cplusplus.github.io/CWG/issues/2854.html">2854</a></td> + <td>DR</td> + <td>Storage duration of exception objects</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2855"> + <td><a href="https://cplusplus.github.io/CWG/issues/2855.html">2855</a></td> + <td>DR</td> + <td>Undefined behavior in postfix increment</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2856"> + <td><a href="https://cplusplus.github.io/CWG/issues/2856.html">2856</a></td> + <td>DR</td> + <td>Copy-list-initialization with explicit default constructors</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2857"> + <td><a href="https://cplusplus.github.io/CWG/issues/2857.html">2857</a></td> + <td>DR</td> + <td>Argument-dependent lookup with incomplete class types</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2858"> + <td><a href="https://cplusplus.github.io/CWG/issues/2858.html">2858</a></td> + <td>tentatively ready</td> + <td>Declarative <I>nested-name-specifier</I>s and <I>pack-index-specifier</I>s</td> + <td class="unreleased" align="center">Clang 19</td> + </tr> + <tr id="2859"> + <td><a href="https://cplusplus.github.io/CWG/issues/2859.html">2859</a></td> + <td>tentatively ready</td> + <td>Value-initialization with multiple default constructors</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2860"> + <td><a href="https://cplusplus.github.io/CWG/issues/2860.html">2860</a></td> + <td>dup</td> + <td>Remove and fix the term "vacuous initialization"</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2861"> + <td><a href="https://cplusplus.github.io/CWG/issues/2861.html">2861</a></td> + <td>tentatively ready</td> + <td><TT>dynamic_cast</TT> on bad pointer value</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2862"> + <td><a href="https://cplusplus.github.io/CWG/issues/2862.html">2862</a></td> + <td>tentatively ready</td> + <td>Unclear boundaries of template declarations</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2863"> + <td><a href="https://cplusplus.github.io/CWG/issues/2863.html">2863</a></td> + <td>tentatively ready</td> + <td>Unclear synchronization requirements for object lifetime rules</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr id="2864"> + <td><a href="https://cplusplus.github.io/CWG/issues/2864.html">2864</a></td> + <td>tentatively ready</td> + <td>Narrowing floating-point conversions</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr class="open" id="2865"> + <td><a href="https://cplusplus.github.io/CWG/issues/2865.html">2865</a></td> + <td>open</td> + <td>Regression on result of conditional operator</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2866"> + <td><a href="https://cplusplus.github.io/CWG/issues/2866.html">2866</a></td> + <td>open</td> + <td>Observing the effects of <TT>[[no_unique_address]]</TT></td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2867"> + <td><a href="https://cplusplus.github.io/CWG/issues/2867.html">2867</a></td> + <td>open</td> + <td>Order of initialization for structured bindings</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2868"> + <td><a href="https://cplusplus.github.io/CWG/issues/2868.html">2868</a></td> + <td>open</td> + <td>Self-references in trivially copyable objects as function return values</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2869"> + <td><a href="https://cplusplus.github.io/CWG/issues/2869.html">2869</a></td> + <td>open</td> + <td><TT>this</TT> in local classes</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2870"> + <td><a href="https://cplusplus.github.io/CWG/issues/2870.html">2870</a></td> + <td>open</td> + <td>Combining absent <I>encoding-prefix</I>es</td> + <td align="center">Not resolved</td> + </tr> + <tr id="2871"> + <td><a href="https://cplusplus.github.io/CWG/issues/2871.html">2871</a></td> + <td>tentatively ready</td> + <td>User-declared constructor templates inhibiting default constructors</td> + <td class="unknown" align="center">Unknown</td> + </tr> + <tr class="open" id="2872"> + <td><a href="https://cplusplus.github.io/CWG/issues/2872.html">2872</a></td> + <td>open</td> + <td>Linkage and unclear "can be referred to"</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2873"> + <td><a href="https://cplusplus.github.io/CWG/issues/2873.html">2873</a></td> + <td>open</td> + <td>Taking the address of a function involving template argument deduction</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2874"> + <td><a href="https://cplusplus.github.io/CWG/issues/2874.html">2874</a></td> + <td>open</td> + <td>Qualified declarations of partial specializations</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2875"> + <td><a href="https://cplusplus.github.io/CWG/issues/2875.html">2875</a></td> + <td>open</td> + <td>Missing support for round-tripping nullptr through indirection/address operators</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2876"> + <td><a href="https://cplusplus.github.io/CWG/issues/2876.html">2876</a></td> + <td>open</td> + <td>Disambiguation of <TT>T x = delete("text")</TT></td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2877"> + <td><a href="https://cplusplus.github.io/CWG/issues/2877.html">2877</a></td> + <td>open</td> + <td>Type-only lookup for <I>using-enum-declarator</I></td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2878"> + <td><a href="https://cplusplus.github.io/CWG/issues/2878.html">2878</a></td> + <td>open</td> + <td>C-style casts to reference types</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2879"> + <td><a href="https://cplusplus.github.io/CWG/issues/2879.html">2879</a></td> + <td>open</td> + <td>Undesired outcomes with <TT>const_cast</TT></td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2880"> + <td><a href="https://cplusplus.github.io/CWG/issues/2880.html">2880</a></td> + <td>open</td> + <td>Accessibility check for destructor of incomplete class type</td> + <td align="center">Not resolved</td> + </tr> + <tr class="open" id="2881"> + <td><a href="https://cplusplus.github.io/CWG/issues/2881.html">2881</a></td> + <td>open</td> + <td>Type restrictions for the explicit object parameter of a lambda</td> + <td align="center">Not resolved</td> </tr></table> </div> diff --git a/clang/www/make_cxx_dr_status b/clang/www/make_cxx_dr_status index 7c0cf77..57f1dc8 100755 --- a/clang/www/make_cxx_dr_status +++ b/clang/www/make_cxx_dr_status @@ -5,7 +5,7 @@ latest_release = 18 clang_www_dir = os.path.dirname(__file__) default_issue_list_path = os.path.join(clang_www_dir, 'cwg_index.html') -issue_list_url = "https://www.open-std.org/jtc1/sc22/wg21/docs/cwg_index.html" +issue_list_url = "https://raw.githubusercontent.com/cplusplus/CWG/gh-pages/issues/cwg_index.html" output = os.path.join(clang_www_dir, 'cxx_dr_status.html') dr_test_dir = os.path.join(clang_www_dir, '../test/CXX/drs') @@ -138,10 +138,10 @@ def availability(issue): unresolved_status = '' proposed_resolution = '' - unresolved_status_match = re.search(r' (open|drafting|review)', status) + unresolved_status_match = re.search(r' (open|drafting|review|tentatively ready)', status) if unresolved_status_match: unresolved_status = unresolved_status_match.group(1) - proposed_resolution_match = re.search(r' (open|drafting|review) (\d{4}-\d{2}(?:-\d{2})?|P\d{4}R\d+)$', status) + proposed_resolution_match = re.search(r' (open|drafting|review|tentatively ready) (\d{4}-\d{2}(?:-\d{2})?|P\d{4}R\d+)$', status) if proposed_resolution_match is None: raise AvailabilityError('Issue {}: \'{}\' status should be followed by a paper number (P1234R5) or proposed resolution in YYYY-MM-DD format'.format(dr.issue, unresolved_status)) proposed_resolution = proposed_resolution_match.group(2) |
