Endill created this revision.
Endill added reviewers: clang-language-wg, shafik, cor3ntin.
Herald added a project: All.
Endill requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.
P1787 <https://wg21.link/p1787>: CWG2213 is resolved by allowing an 
elaborated-type-specifier to contain a simple-template-id without friend.
Wording: see changes to [dcl.type.elab]]/1.

The gist of the issue is that forward declaration of partial class template 
specialization was disallowed.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D151032

Files:
  clang/test/CXX/drs/dr22xx.cpp
  clang/www/cxx_dr_status.html


Index: clang/www/cxx_dr_status.html
===================================================================
--- clang/www/cxx_dr_status.html
+++ clang/www/cxx_dr_status.html
@@ -13085,7 +13085,7 @@
     <td><a 
href="https://cplusplus.github.io/CWG/issues/2213.html";>2213</a></td>
     <td>CD6</td>
     <td>Forward declaration of partial specializations</td>
-    <td class="none" align="center">Unknown</td>
+    <td class="full" align="center">Yes</td>
   </tr>
   <tr id="2214">
     <td><a 
href="https://cplusplus.github.io/CWG/issues/2214.html";>2214</a></td>
Index: clang/test/CXX/drs/dr22xx.cpp
===================================================================
--- clang/test/CXX/drs/dr22xx.cpp
+++ clang/test/CXX/drs/dr22xx.cpp
@@ -14,6 +14,14 @@
 }
 #endif
 
+namespace dr2213 { // dr2213: yes
+template <typename T, typename U>
+struct A;
+
+template <typename U>
+struct A<int, U>;
+} // namespace dr2213
+
 namespace dr2229 { // dr2229: 7
 struct AnonBitfieldQualifiers {
   const unsigned : 1; // expected-error {{anonymous bit-field cannot have 
qualifiers}}


Index: clang/www/cxx_dr_status.html
===================================================================
--- clang/www/cxx_dr_status.html
+++ clang/www/cxx_dr_status.html
@@ -13085,7 +13085,7 @@
     <td><a href="https://cplusplus.github.io/CWG/issues/2213.html";>2213</a></td>
     <td>CD6</td>
     <td>Forward declaration of partial specializations</td>
-    <td class="none" align="center">Unknown</td>
+    <td class="full" align="center">Yes</td>
   </tr>
   <tr id="2214">
     <td><a href="https://cplusplus.github.io/CWG/issues/2214.html";>2214</a></td>
Index: clang/test/CXX/drs/dr22xx.cpp
===================================================================
--- clang/test/CXX/drs/dr22xx.cpp
+++ clang/test/CXX/drs/dr22xx.cpp
@@ -14,6 +14,14 @@
 }
 #endif
 
+namespace dr2213 { // dr2213: yes
+template <typename T, typename U>
+struct A;
+
+template <typename U>
+struct A<int, U>;
+} // namespace dr2213
+
 namespace dr2229 { // dr2229: 7
 struct AnonBitfieldQualifiers {
   const unsigned : 1; // expected-error {{anonymous bit-field cannot have qualifiers}}
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to