[clang] e77bfaa - [clang][NFC] Fill in historical data on when C++ DRs 500-599 were fixed
Vlad Serebrennikov via cfe-commits
cfe-commits at lists.llvm.org
Mon Dec 4 13:42:19 PST 2023
Author: Vlad Serebrennikov
Date: 2023-12-05T00:42:13+03:00
New Revision: e77bfaaf9d66748fc2dc3a710a0c9b4665dd3034
URL: https://github.com/llvm/llvm-project/commit/e77bfaaf9d66748fc2dc3a710a0c9b4665dd3034
DIFF: https://github.com/llvm/llvm-project/commit/e77bfaaf9d66748fc2dc3a710a0c9b4665dd3034.diff
LOG: [clang][NFC] Fill in historical data on when C++ DRs 500-599 were fixed
Added:
Modified:
clang/test/CXX/drs/dr5xx.cpp
clang/www/cxx_dr_status.html
Removed:
################################################################################
diff --git a/clang/test/CXX/drs/dr5xx.cpp b/clang/test/CXX/drs/dr5xx.cpp
index a3563481eac68..204d07f04f4e5 100644
--- a/clang/test/CXX/drs/dr5xx.cpp
+++ b/clang/test/CXX/drs/dr5xx.cpp
@@ -381,7 +381,7 @@ namespace dr532 { // dr532: 3.5
// dr533: na
-namespace dr534 { // dr534: yes
+namespace dr534 { // dr534: 2.9
struct S {};
template<typename T> void operator+(S, T);
template<typename T> void operator+<T*>(S, T*) {} // expected-error {{function template partial spec}}
@@ -511,7 +511,7 @@ namespace dr542 { // dr542: yes
#endif
}
-namespace dr543 { // dr543: yes
+namespace dr543 { // dr543: 3.0
// In C++98+DR543, this is valid because value-initialization doesn't call a
// trivial default constructor, so we never notice that defining the
// constructor would be ill-formed.
@@ -544,7 +544,7 @@ namespace dr546 { // dr546: yes
template<typename T> void A<T>::f() { T::error; }
}
-namespace dr547 { // dr547: yes
+namespace dr547 { // dr547: 3.2
template<typename T> struct X;
template<typename T> struct X<T() const> {};
template<typename T, typename C> X<T> f(T C::*) { return X<T>(); }
@@ -607,7 +607,7 @@ namespace dr553 {
// dr554: na
// dr556: na
-namespace dr557 { // dr557: yes
+namespace dr557 { // dr557: 3.1
template<typename T> struct S {
friend void f(S<T> *);
friend void g(S<S<T> > *);
@@ -618,7 +618,7 @@ namespace dr557 { // dr557: yes
}
}
-namespace dr558 { // dr558: yes
+namespace dr558 { // dr558: 2.9
wchar_t a = L'\uD7FF';
wchar_t b = L'\xD7FF';
wchar_t c = L'\uD800'; // expected-error {{invalid universal character}}
@@ -674,7 +674,7 @@ namespace dr566 { // dr566: yes
// dr567: na
-namespace dr568 { // dr568: yes c++11
+namespace dr568 { // dr568: 3.0 c++11
// FIXME: This is a DR issue against C++98, so should probably apply there
// too.
struct x { int y; };
@@ -762,7 +762,7 @@ namespace dr573 { // dr573: no
template<int*> struct T;
}
-namespace dr574 { // dr574: yes
+namespace dr574 { // dr574: 3.0
struct A {
A &operator=(const A&) const; // expected-note {{
diff erent qualifiers}}
};
@@ -827,13 +827,13 @@ namespace dr575 { // dr575: yes
void *p = h((void*)0);
}
-namespace dr576 { // dr576: yes
+namespace dr576 { // dr576: 3.5
typedef void f() {} // expected-error {{function definition declared 'typedef'}}
void f(typedef int n); // expected-error {{invalid storage class}}
void f(char c) { typedef int n; }
}
-namespace dr577 { // dr577: yes
+namespace dr577 { // dr577: 3.5
typedef void V;
typedef const void CV;
void a(void);
@@ -910,7 +910,7 @@ namespace dr583 { // dr583: 4
// dr584: na
-namespace dr585 { // dr585: yes
+namespace dr585 { // dr585: 3.0
template<typename> struct T;
struct A {
friend T;
@@ -938,7 +938,7 @@ namespace dr585 { // dr585: yes
// dr586: na
-namespace dr587 { // dr587: yes
+namespace dr587 { // dr587: 3.2
template<typename T> void f(bool b, const T x, T y) {
const T *p = &(b ? x : y);
}
diff --git a/clang/www/cxx_dr_status.html b/clang/www/cxx_dr_status.html
index 4d918224ded46..0d315a82eeaba 100755
--- a/clang/www/cxx_dr_status.html
+++ b/clang/www/cxx_dr_status.html
@@ -3243,7 +3243,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/534.html">534</a></td>
<td>CD1</td>
<td><I>template-name</I>s and <I>operator-function-id</I>s</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 2.9</td>
</tr>
<tr id="535">
<td><a href="https://cplusplus.github.io/CWG/issues/535.html">535</a></td>
@@ -3299,7 +3299,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/543.html">543</a></td>
<td>CD1</td>
<td>Value initialization and default constructors</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.0</td>
</tr>
<tr id="544">
<td><a href="https://cplusplus.github.io/CWG/issues/544.html">544</a></td>
@@ -3323,7 +3323,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/547.html">547</a></td>
<td>C++11</td>
<td>Partial specialization on member function types</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.2</td>
</tr>
<tr id="548">
<td><a href="https://cplusplus.github.io/CWG/issues/548.html">548</a></td>
@@ -3383,13 +3383,13 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/557.html">557</a></td>
<td>CD1</td>
<td>Does argument-dependent lookup cause template instantiation?</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.1</td>
</tr>
<tr id="558">
<td><a href="https://cplusplus.github.io/CWG/issues/558.html">558</a></td>
<td>CD1</td>
<td>Excluded characters in universal character names</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 2.9</td>
</tr>
<tr id="559">
<td><a href="https://cplusplus.github.io/CWG/issues/559.html">559</a></td>
@@ -3449,7 +3449,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/568.html">568</a></td>
<td>CD1</td>
<td>Definition of POD is too strict</td>
- <td class="full" align="center">Yes (C++11 onwards)</td>
+ <td class="full" align="center">Clang 3.0 (C++11 onwards)</td>
</tr>
<tr id="569">
<td><a href="https://cplusplus.github.io/CWG/issues/569.html">569</a></td>
@@ -3485,7 +3485,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/574.html">574</a></td>
<td>NAD</td>
<td>Definition of “copy assignment operator”</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.0</td>
</tr>
<tr id="575">
<td><a href="https://cplusplus.github.io/CWG/issues/575.html">575</a></td>
@@ -3497,13 +3497,13 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/576.html">576</a></td>
<td>CD2</td>
<td>Typedefs in function definitions</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.5</td>
</tr>
<tr id="577">
<td><a href="https://cplusplus.github.io/CWG/issues/577.html">577</a></td>
<td>CD3</td>
<td><TT>void</TT> in an empty parameter list</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.5</td>
</tr>
<tr id="578">
<td><a href="https://cplusplus.github.io/CWG/issues/578.html">578</a></td>
@@ -3551,7 +3551,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/585.html">585</a></td>
<td>NAD</td>
<td>Friend template template parameters</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.0</td>
</tr>
<tr id="586">
<td><a href="https://cplusplus.github.io/CWG/issues/586.html">586</a></td>
@@ -3563,7 +3563,7 @@ <h2 id="cxxdr">C++ defect report implementation status</h2>
<td><a href="https://cplusplus.github.io/CWG/issues/587.html">587</a></td>
<td>CD2</td>
<td>Lvalue operands of a conditional expression
diff ering only in cv-qualification</td>
- <td class="full" align="center">Yes</td>
+ <td class="full" align="center">Clang 3.2</td>
</tr>
<tr id="588">
<td><a href="https://cplusplus.github.io/CWG/issues/588.html">588</a></td>
More information about the cfe-commits
mailing list