Skip to content

Commit 37f2928

Browse files
authored
[clang] Use cwg_index.html from GitHub for DR status page (#90352)
Currently we're using official publication of CWG issue list available at https://www.open-std.org/jtc1/sc22/wg21/docs/cwg_index.html. Unfortunately, it's not updated as frequently as we sometimes need. For instance, recently there was a confusion during review of CWG2149 test (#90079 (comment)). This patch changes our `make_cxx_dr_status` script to use issue list from CWG GitHub repository. I confirmed with CWG chair that this is the most up-to-date source of information on CWG issues. Changing the source of issue list uncovered previously unhandled "tentatively ready" status of an issue. This status is considered unresolved by the script (like `open`, `drafting`, and `review`), as the resolution might change during face-to-face CWG meeting. I also noticed that CWG decided to handle 2561 differently from what we're doing, so this DR is now considered not available in Clang, despite being declared as available since 18. CC @cor3ntin. This patch also brings new issues into our DR list, so if someone was waiting for a newly-filed issue to appear on our status page, it should appear with this PR.
1 parent f2452d4 commit 37f2928

File tree

8 files changed

+410
-165
lines changed

8 files changed

+410
-165
lines changed

clang/test/CXX/drs/cwg2149.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
// cxx98-error@-1 {{variadic macros are a C99 feature}}
1212
#endif
1313

14-
namespace cwg2149 { // cwg2149: 3.1 drafting 2024-04
14+
namespace cwg2149 { // cwg2149: 3.1
1515
#if __cplusplus <= 201103L
1616
struct X { int i, j, k; };
1717
#else

clang/test/CXX/drs/dr20xx.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ namespace cwg2026 { // cwg2026: 11
9090
}
9191
}
9292

93-
namespace cwg2049 { // cwg2049: 18 drafting P2308R1
93+
namespace cwg2049 { // cwg2049: 18
9494
#if __cplusplus >= 202302L
9595
template <int* x = {}> struct X {};
9696
X<> a;

clang/test/CXX/drs/dr21xx.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,8 @@ void foo() {
175175
}
176176
}
177177

178+
// cwg2149 is in cwg2149.cpp
179+
178180
namespace cwg2157 { // cwg2157: 11
179181
#if __cplusplus >= 201103L
180182
enum E : int;

clang/test/CXX/drs/dr24xx.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ void fallthrough(int n) {
4545
#endif
4646
}
4747

48-
namespace cwg2450 { // cwg2450: 18 review P2308R1
48+
namespace cwg2450 { // cwg2450: 18
4949
#if __cplusplus >= 202302L
5050
struct S {int a;};
5151
template <S s>
@@ -59,7 +59,7 @@ f<{.a= 0}>();
5959
#endif
6060
}
6161

62-
namespace cwg2459 { // cwg2459: 18 drafting P2308R1
62+
namespace cwg2459 { // cwg2459: 18
6363
#if __cplusplus >= 202302L
6464
struct A {
6565
constexpr A(float) {}

clang/test/CXX/drs/dr25xx.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,12 +130,14 @@ struct D3 : B {
130130
#endif
131131

132132
#if __cplusplus >= 202302L
133-
namespace cwg2561 { // cwg2561: 18 review 2023-11-09
133+
namespace cwg2561 { // cwg2561: no
134134
struct C {
135135
constexpr C(auto) { }
136136
};
137137
void foo() {
138138
constexpr auto b = [](this C) { return 1; };
139+
// FIXME: closure type shouldn't have a conversion function to function
140+
// pointer, because explicit object parameter is present.
139141
constexpr int (*fp)(C) = b;
140142
static_assert(fp(1) == 1);
141143
static_assert((&decltype(b)::operator())(1) == 1);

clang/test/CXX/drs/dr28xx.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
// expected-no-diagnostics
1111
#endif
1212

13-
namespace cwg2847 { // cwg2847: 19
13+
namespace cwg2847 { // cwg2847: 19 review 2024-03-01
1414

1515
#if __cplusplus >= 202002L
1616

0 commit comments

Comments
 (0)