[clang] c1e614c - [clang][DR] Test and mark DR1305 as complete

Markus Böck via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 29 11:45:56 PDT 2022


Author: Markus Böck
Date: 2022-03-29T20:45:49+02:00
New Revision: c1e614c8eb5004582c4d8f153f30fbfd0fcbea94

URL: https://github.com/llvm/llvm-project/commit/c1e614c8eb5004582c4d8f153f30fbfd0fcbea94
DIFF: https://github.com/llvm/llvm-project/commit/c1e614c8eb5004582c4d8f153f30fbfd0fcbea94.diff

LOG: [clang][DR] Test and mark DR1305 as complete

DR: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#1305

This DR has always been implemented in all clang versions as far back as I could go. This patch basically just adds a test with the needed comments to mark it as complete.

Differential Revision: https://reviews.llvm.org/D122674

Added: 
    

Modified: 
    clang/test/CXX/drs/dr13xx.cpp
    clang/www/cxx_dr_status.html

Removed: 
    


################################################################################
diff  --git a/clang/test/CXX/drs/dr13xx.cpp b/clang/test/CXX/drs/dr13xx.cpp
index cf7091a533b56..57d0f3cc97cc1 100644
--- a/clang/test/CXX/drs/dr13xx.cpp
+++ b/clang/test/CXX/drs/dr13xx.cpp
@@ -13,6 +13,16 @@ namespace std {
   };
 }
 
+#if __cplusplus >= 201103L
+namespace dr1305 { // dr1305: yes
+struct Incomplete; // expected-note {{forward declaration of 'dr1305::Incomplete'}}
+struct Complete {};
+
+int incomplete = alignof(Incomplete(&)[]); // expected-error {{invalid application of 'alignof' to an incomplete type 'dr1305::Incomplete'}}
+int complete = alignof(Complete(&)[]);
+}
+#endif
+
 namespace dr1310 { // dr1310: 5
   struct S {} * sp = new S::S; // expected-error {{qualified reference to 'S' is a constructor name}}
   void f() {

diff  --git a/clang/www/cxx_dr_status.html b/clang/www/cxx_dr_status.html
index 6f66e2262a565..e730d6088ebaf 100755
--- a/clang/www/cxx_dr_status.html
+++ b/clang/www/cxx_dr_status.html
@@ -7644,7 +7644,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
     <td><a href="https://wg21.link/cwg1305">1305</a></td>
     <td>CD3</td>
     <td><TT>alignof</TT> applied to array of unknown size</td>
-    <td class="none" align="center">Unknown</td>
+    <td class="full" align="center">Yes</td>
   </tr>
   <tr id="1306">
     <td><a href="https://wg21.link/cwg1306">1306</a></td>


        


More information about the cfe-commits mailing list