This revision was automatically updated to reflect the committed changes. Closed by commit rGfeb93d28b02c: [clang] Add test for CWG2370 (authored by Endill).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147848/new/ https://reviews.llvm.org/D147848 Files: clang/test/CXX/drs/dr23xx.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 @@ -14027,7 +14027,7 @@ <td><a href="https://wg21.link/cwg2370">2370</a></td> <td>CD6</td> <td><TT>friend</TT> declarations of namespace-scope functions</td> - <td class="none" align="center">Unknown</td> + <td class="none" align="center">No</td> </tr> <tr id="2371"> <td><a href="https://wg21.link/cwg2371">2371</a></td> Index: clang/test/CXX/drs/dr23xx.cpp =================================================================== --- clang/test/CXX/drs/dr23xx.cpp +++ clang/test/CXX/drs/dr23xx.cpp @@ -2,7 +2,9 @@ // RUN: %clang_cc1 -std=c++11 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s // RUN: %clang_cc1 -std=c++14 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s // RUN: %clang_cc1 -std=c++17 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s -// RUN: %clang_cc1 -std=c++2a %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s +// RUN: %clang_cc1 -std=c++20 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s +// RUN: %clang_cc1 -std=c++2b %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s + #if __cplusplus >= 201103L namespace dr2338 { // dr2338: 12 @@ -169,6 +171,20 @@ } //namespace dr2303 #endif +namespace dr2370 { // dr2370: no +namespace N { +typedef int type; +void g(type); +void h(type); +} // namespace N +class C { + typedef N::type N_type; + // FIXME: `type` should be searched for in N + // friend void N::g(type); + friend void N::h(N_type); +}; +} // namespace dr2370 + // dr2385: na namespace dr2394 { // dr2394: 15
Index: clang/www/cxx_dr_status.html =================================================================== --- clang/www/cxx_dr_status.html +++ clang/www/cxx_dr_status.html @@ -14027,7 +14027,7 @@ <td><a href="https://wg21.link/cwg2370">2370</a></td> <td>CD6</td> <td><TT>friend</TT> declarations of namespace-scope functions</td> - <td class="none" align="center">Unknown</td> + <td class="none" align="center">No</td> </tr> <tr id="2371"> <td><a href="https://wg21.link/cwg2371">2371</a></td> Index: clang/test/CXX/drs/dr23xx.cpp =================================================================== --- clang/test/CXX/drs/dr23xx.cpp +++ clang/test/CXX/drs/dr23xx.cpp @@ -2,7 +2,9 @@ // RUN: %clang_cc1 -std=c++11 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s // RUN: %clang_cc1 -std=c++14 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s // RUN: %clang_cc1 -std=c++17 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s -// RUN: %clang_cc1 -std=c++2a %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s +// RUN: %clang_cc1 -std=c++20 %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s +// RUN: %clang_cc1 -std=c++2b %s -verify -fexceptions -fcxx-exceptions -pedantic-errors 2>&1 | FileCheck %s + #if __cplusplus >= 201103L namespace dr2338 { // dr2338: 12 @@ -169,6 +171,20 @@ } //namespace dr2303 #endif +namespace dr2370 { // dr2370: no +namespace N { +typedef int type; +void g(type); +void h(type); +} // namespace N +class C { + typedef N::type N_type; + // FIXME: `type` should be searched for in N + // friend void N::g(type); + friend void N::h(N_type); +}; +} // namespace dr2370 + // dr2385: na namespace dr2394 { // dr2394: 15
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits