llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: Vlad Serebrennikov (Endilll) <details> <summary>Changes</summary> This patch updates cxx_dr_status.html with the latest changes from CWG, while also changing status of tests written for unresolved issues. The latter part requires review from their author. --- Patch is 56.21 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/77372.diff 5 Files Affected: - (modified) clang/test/CXX/drs/dr24xx.cpp (+1-1) - (modified) clang/test/CXX/drs/dr25xx.cpp (+2-2) - (modified) clang/test/CXX/drs/dr26xx.cpp (+2-2) - (modified) clang/test/CXX/drs/dr27xx.cpp (+2-2) - (modified) clang/www/cxx_dr_status.html (+545-179) ``````````diff diff --git a/clang/test/CXX/drs/dr24xx.cpp b/clang/test/CXX/drs/dr24xx.cpp index b34ceb420788fc..66e9cf5a677f80 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 dr2450 { // dr2450: 18 drafting +namespace dr2450 { // dr2450: 18 review #if __cplusplus >= 202302L struct S {int a;}; template <S s> diff --git a/clang/test/CXX/drs/dr25xx.cpp b/clang/test/CXX/drs/dr25xx.cpp index 8c34b03c22d5b1..32bbfc63d0df4f 100644 --- a/clang/test/CXX/drs/dr25xx.cpp +++ b/clang/test/CXX/drs/dr25xx.cpp @@ -83,7 +83,7 @@ using ::dr2521::operator""_div; #if __cplusplus >= 202302L -namespace dr2553 { // dr2553: 18 +namespace dr2553 { // dr2553: 18 review struct B { virtual void f(this B&); // since-cxx23-error@-1 {{an explicit object parameter cannot appear in a virtual function}} @@ -143,7 +143,7 @@ void foo() { #endif -namespace dr2565 { // dr2565: 16 +namespace dr2565 { // dr2565: 16 open #if __cplusplus >= 202002L template<typename T> concept C = requires (typename T::type x) { diff --git a/clang/test/CXX/drs/dr26xx.cpp b/clang/test/CXX/drs/dr26xx.cpp index 8a22dbeb98a3d5..47eeddcc5bf269 100644 --- a/clang/test/CXX/drs/dr26xx.cpp +++ b/clang/test/CXX/drs/dr26xx.cpp @@ -24,7 +24,7 @@ using enum E; #endif } -namespace dr2628 { // dr2628: no open +namespace dr2628 { // dr2628: no // this was reverted for the 16.x release // due to regressions, see the issue for more details: // https://github.com/llvm/llvm-project/issues/60777 @@ -197,7 +197,7 @@ J j = { "ghi" }; #endif } -namespace dr2672 { // dr2672: 18 open +namespace dr2672 { // dr2672: 18 #if __cplusplus >= 202002L template <class T> void f(T) requires requires { []() { T::invalid; } (); }; diff --git a/clang/test/CXX/drs/dr27xx.cpp b/clang/test/CXX/drs/dr27xx.cpp index 4f7d0d6b44a83e..dd3fd5a20163fa 100644 --- a/clang/test/CXX/drs/dr27xx.cpp +++ b/clang/test/CXX/drs/dr27xx.cpp @@ -10,7 +10,7 @@ // expected-no-diagnostics #endif -namespace dr2789 { // dr2789: 18 open +namespace dr2789 { // dr2789: 18 #if __cplusplus >= 202302L template <typename T = int> struct Base { @@ -42,7 +42,7 @@ void test() { #endif } -namespace dr2798 { // dr2798: 17 drafting +namespace dr2798 { // dr2798: 17 #if __cpp_static_assert >= 202306 struct string { constexpr string() { diff --git a/clang/www/cxx_dr_status.html b/clang/www/cxx_dr_status.html index d09cf616899ad4..22eb7ac63c7edf 100755 --- a/clang/www/cxx_dr_status.html +++ b/clang/www/cxx_dr_status.html @@ -1055,7 +1055,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="170"> <td><a href="https://cplusplus.github.io/CWG/issues/170.html">170</a></td> - <td>DR</td> + <td>DRWP</td> <td>Pointer-to-member conversions</td> <td class="none" align="center">Unknown</td> </tr> @@ -1426,11 +1426,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Visibility of names after <I>using-directive</I>s</td> <td class="full" align="center">Yes</td> </tr> - <tr class="open" id="232"> + <tr id="232"> <td><a href="https://cplusplus.github.io/CWG/issues/232.html">232</a></td> - <td>drafting</td> + <td>NAD</td> <td>Is indirection through a null pointer undefined behavior?</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr class="open" id="233"> <td><a href="https://cplusplus.github.io/CWG/issues/233.html">233</a></td> @@ -2661,7 +2661,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td><a href="https://cplusplus.github.io/CWG/issues/437.html">437</a></td> <td>CD1</td> <td>Is type of class allowed in member function exception specification?</td> - <td class="none" align="center">Superseded by <a href="#1308">1308</a></td> + <td class="full" align="center">Superseded by <a href="#1308">1308</a></td> </tr> <tr id="438"> <td><a href="https://cplusplus.github.io/CWG/issues/438.html">438</a></td> @@ -2753,11 +2753,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Wording nit on description of <TT>this</TT></td> <td class="full" align="center">Yes</td> </tr> - <tr class="open" id="453"> + <tr id="453"> <td><a href="https://cplusplus.github.io/CWG/issues/453.html">453</a></td> - <td>drafting</td> + <td>tentatively ready</td> <td>References may only bind to “valid” objects</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr id="454"> <td><a href="https://cplusplus.github.io/CWG/issues/454.html">454</a></td> @@ -2789,11 +2789,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Hiding of member template parameters by other members</td> <td class="full" align="center">Clang 11</td> </tr> - <tr class="open" id="459"> + <tr id="459"> <td><a href="https://cplusplus.github.io/CWG/issues/459.html">459</a></td> - <td>open</td> + <td>NAD</td> <td>Hiding of template parameters by base class members</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr id="460"> <td><a href="https://cplusplus.github.io/CWG/issues/460.html">460</a></td> @@ -5967,7 +5967,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr class="open" id="1027"> <td><a href="https://cplusplus.github.io/CWG/issues/1027.html">1027</a></td> - <td>drafting</td> + <td>review</td> <td>Type consistency and reallocation of scalar types</td> <td align="center">Not resolved</td> </tr> @@ -6033,7 +6033,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="1038"> <td><a href="https://cplusplus.github.io/CWG/issues/1038.html">1038</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Overload resolution of <TT>&x.static_func</TT></td> <td class="none" align="center">Unknown</td> </tr> @@ -6339,7 +6339,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr class="open" id="1089"> <td><a href="https://cplusplus.github.io/CWG/issues/1089.html">1089</a></td> - <td>drafting</td> + <td>open</td> <td>Template parameters in member selections</td> <td align="center">Not resolved</td> </tr> @@ -7923,7 +7923,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="1353"> <td><a href="https://cplusplus.github.io/CWG/issues/1353.html">1353</a></td> - <td>DR</td> + <td>DRWP</td> <td>Array and variant members and deleted special member functions</td> <td class="none" align="center">Unknown</td> </tr> @@ -9657,7 +9657,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="1642"> <td><a href="https://cplusplus.github.io/CWG/issues/1642.html">1642</a></td> - <td>DR</td> + <td>DRWP</td> <td>Missing requirements for prvalue operands</td> <td class="none" align="center">Unknown</td> </tr> @@ -9993,7 +9993,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="1698"> <td><a href="https://cplusplus.github.io/CWG/issues/1698.html">1698</a></td> - <td>ready</td> + <td>DR</td> <td>Files ending in <TT>\</TT></td> <td class="none" align="center">Unknown</td> </tr> @@ -11527,11 +11527,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Data races and common initial sequence</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="1954"> + <tr id="1954"> <td><a href="https://cplusplus.github.io/CWG/issues/1954.html">1954</a></td> - <td>open</td> + <td>tentatively ready</td> <td><TT>typeid</TT> null dereference check in subexpressions</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr id="1955"> <td><a href="https://cplusplus.github.io/CWG/issues/1955.html">1955</a></td> @@ -11643,7 +11643,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="1973"> <td><a href="https://cplusplus.github.io/CWG/issues/1973.html">1973</a></td> - <td>DR</td> + <td>DRWP</td> <td>Which <I>parameter-declaration-clause</I> in a <I>lambda-expression</I>?</td> <td class="none" align="center">Unknown</td> </tr> @@ -11911,11 +11911,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Flowing off end is not equivalent to no-expression return</td> <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2018"> + <tr id="2018"> <td><a href="https://cplusplus.github.io/CWG/issues/2018.html">2018</a></td> - <td>drafting</td> + <td>dup</td> <td>Qualification conversion vs reference binding</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr id="2019"> <td><a href="https://cplusplus.github.io/CWG/issues/2019.html">2019</a></td> @@ -12127,11 +12127,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td><TT>auto</TT> in non-generic lambdas</td> <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2054"> + <tr id="2054"> <td><a href="https://cplusplus.github.io/CWG/issues/2054.html">2054</a></td> - <td>review</td> + <td>DR</td> <td>Missing description of class SFINAE</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr class="open" id="2055"> <td><a href="https://cplusplus.github.io/CWG/issues/2055.html">2055</a></td> @@ -12417,7 +12417,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2102"> <td><a href="https://cplusplus.github.io/CWG/issues/2102.html">2102</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Constructor checking in <I>new-expression</I></td> <td class="none" align="center">Unknown</td> </tr> @@ -13315,11 +13315,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Unreachable enumeration list-initialization</td> <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2252"> + <tr id="2252"> <td><a href="https://cplusplus.github.io/CWG/issues/2252.html">2252</a></td> - <td>review</td> + <td>DR</td> <td>Enumeration list-initialization from the same type</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr id="2253"> <td><a href="https://cplusplus.github.io/CWG/issues/2253.html">2253</a></td> @@ -14505,7 +14505,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr class="open" id="2450"> <td><a href="https://cplusplus.github.io/CWG/issues/2450.html">2450</a></td> - <td>drafting</td> + <td>review</td> <td><I>braced-init-list</I> as a <I>template-argument</I></td> <td class="unreleased" align="center">Clang 18</td> </tr> @@ -14715,7 +14715,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2485"> <td><a href="https://cplusplus.github.io/CWG/issues/2485.html">2485</a></td> - <td>DR</td> + <td>DRWP</td> <td>Bit-fields in integral promotions</td> <td class="none" align="center">Unknown</td> </tr> @@ -14827,11 +14827,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Unclear relationship among name, qualified name, and unqualified name</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2504"> + <tr id="2504"> <td><a href="https://cplusplus.github.io/CWG/issues/2504.html">2504</a></td> - <td>review</td> + <td>DR</td> <td>Inheriting constructors from virtual base classes</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr class="open" id="2505"> <td><a href="https://cplusplus.github.io/CWG/issues/2505.html">2505</a></td> @@ -14889,7 +14889,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr class="open" id="2514"> <td><a href="https://cplusplus.github.io/CWG/issues/2514.html">2514</a></td> - <td>review</td> + <td>open</td> <td>Modifying const subobjects</td> <td align="center">Not resolved</td> </tr> @@ -14919,7 +14919,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2519"> <td><a href="https://cplusplus.github.io/CWG/issues/2519.html">2519</a></td> - <td>DR</td> + <td>DRWP</td> <td>Object representation of a bit-field</td> <td class="none" align="center">Unknown</td> </tr> @@ -14989,11 +14989,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Multiple definitions of enumerators</td> <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2531"> + <tr id="2531"> <td><a href="https://cplusplus.github.io/CWG/issues/2531.html">2531</a></td> - <td>review</td> + <td>DR</td> <td>Static data members redeclared as constexpr</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr class="open" id="2532"> <td><a href="https://cplusplus.github.io/CWG/issues/2532.html">2532</a></td> @@ -15057,7 +15057,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2542"> <td><a href="https://cplusplus.github.io/CWG/issues/2542.html">2542</a></td> - <td>DR</td> + <td>DRWP</td> <td>Is a closure type a structural type?</td> <td class="none" align="center">Unknown</td> </tr> @@ -15079,23 +15079,23 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Transparently replacing objects in constant expressions</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2546"> + <tr id="2546"> <td><a href="https://cplusplus.github.io/CWG/issues/2546.html">2546</a></td> - <td>review</td> + <td>tentatively ready</td> <td>Defaulted secondary comparison operators defined as deleted</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2547"> + <tr id="2547"> <td><a href="https://cplusplus.github.io/CWG/issues/2547.html">2547</a></td> - <td>review</td> + <td>tentatively ready</td> <td>Defaulted comparison operator function for non-classes</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2548"> + <tr id="2548"> <td><a href="https://cplusplus.github.io/CWG/issues/2548.html">2548</a></td> - <td>review</td> + <td>NAD</td> <td>Array prvalues and additive operators</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr class="open" id="2549"> <td><a href="https://cplusplus.github.io/CWG/issues/2549.html">2549</a></td> @@ -15105,7 +15105,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2550"> <td><a href="https://cplusplus.github.io/CWG/issues/2550.html">2550</a></td> - <td>DR</td> + <td>DRWP</td> <td>Type "reference to <I>cv</I> <TT>void</TT>" outside of a declarator</td> <td class="none" align="center">Unknown</td> </tr> @@ -15117,13 +15117,13 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2552"> <td><a href="https://cplusplus.github.io/CWG/issues/2552.html">2552</a></td> - <td>DR</td> + <td>DRWP</td> <td>Constant evaluation of non-defining variable declarations</td> <td class="none" align="center">Unknown</td> </tr> - <tr id="2553"> + <tr class="open" id="2553"> <td><a href="https://cplusplus.github.io/CWG/issues/2553.html">2553</a></td> - <td>ready</td> + <td>review</td> <td>Restrictions on explicit object member functions</td> <td class="unreleased" align="center">Clang 18</td> </tr> @@ -15141,7 +15141,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2556"> <td><a href="https://cplusplus.github.io/CWG/issues/2556.html">2556</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Unusable <TT>promise::return_void</TT></td> <td class="none" align="center">Unknown</td> </tr> @@ -15163,11 +15163,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Defaulted consteval functions</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2560"> + <tr id="2560"> <td><a href="https://cplusplus.github.io/CWG/issues/2560.html">2560</a></td> - <td>open</td> + <td>tentatively ready</td> <td>Parameter type determination in a <I>requirement-parameter-list</I></td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr class="open" id="2561"> <td><a href="https://cplusplus.github.io/CWG/issues/2561.html">2561</a></td> @@ -15193,9 +15193,9 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Conversion to function pointer with an explicit object parameter</td> <td align="center">Not resolved</td> </tr> - <tr id="2565"> + <tr class="open" id="2565"> <td><a href="https://cplusplus.github.io/CWG/issues/2565.html">2565</a></td> - <td>tentatively ready</td> + <td>open</td> <td>Invalid types in the <I>parameter-declaration-clause</I> of a <I>requires-expression</I></td> <td class="full" align="center">Clang 16</td> </tr> @@ -15211,11 +15211,11 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Operator lookup ambiguity</td> <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2568"> + <tr id="2568"> <td><a href="https://cplusplus.github.io/CWG/issues/2568.html">2568</a></td> - <td>review</td> + <td>tentatively ready</td> <td>Access checking during synthesis of defaulted comparison operator</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr id="2569"> <td><a href="https://cplusplus.github.io/CWG/issues/2569.html">2569</a></td> @@ -15225,7 +15225,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2570"> <td><a href="https://cplusplus.github.io/CWG/issues/2570.html">2570</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Clarify constexpr for defaulted functions</td> <td class="none" align="center">Unknown</td> </tr> @@ -15241,17 +15241,17 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> <td>Address of overloaded function with no target</td> <td align="center">Not resolved</td> </tr> - <tr class="open" id="2573"> + <tr id="2573"> <td><a href="https://cplusplus.github.io/CWG/issues/2573.html">2573</a></td> - <td>open</td> + <td>DRWP</td> <td>Undefined behavior when splicing results in a <I>universal-character-name</I></td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> - <tr class="open" id="2574"> + <tr id="2574"> <td><a href="https://cplusplus.github.io/CWG/issues/2574.html">2574</a></td> - <td>open</td> + <td>DRWP</td> <td>Undefined behavior when lexing unmatched quotes</td> - <td align="center">Not resolved</td> + <td class="none" align="center">Unknown</td> </tr> <tr class="open" id="2575"> <td><a href="https://cplusplus.github.io/CWG/issues/2575.html">2575</a></td> @@ -15351,7 +15351,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2591"> <td><a href="https://cplusplus.github.io/CWG/issues/2591.html">2591</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>Implicit change of active union member for anonymous union in union</td> <td class="none" align="center">Unknown</td> </tr> @@ -15375,7 +15375,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2> </tr> <tr id="2595"> <td><a href="https://cplusplus.github.io/CWG/issues/2595.html">2595</a></td> - <td>tentatively ready</td> + <td>DR</td> <td>... [truncated] `````````` </details> https://github.com/llvm/llvm-project/pull/77372 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits