[all-commits] [llvm/llvm-project] 91b53a: [clang] Add tests for DRs about complete-class con...
Vlad Serebrennikov via All-commits
all-commits at lists.llvm.org
Sat Jan 13 14:27:13 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 91b53a2c791c65e17aa80dce7c357ff705d3fd4e
https://github.com/llvm/llvm-project/commit/91b53a2c791c65e17aa80dce7c357ff705d3fd4e
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-01-14 (Sun, 14 Jan 2024)
Changed paths:
M clang/test/CXX/drs/dr13xx.cpp
M clang/test/CXX/drs/dr18xx.cpp
A clang/test/CXX/drs/dr2335.cpp
M clang/test/CXX/drs/dr23xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Add tests for DRs about complete-class context (#77444)
[P1787](https://wg21.link/p1787): The intent for CWG2335 (contra those of the older CWG1890, CWG1626, CWG1255, and CWG287) is supported by retaining the unrestricted forward lookup in complete-class contexts (despite current implementation behavior for non-templates).
Wording: The declaration set is the result of a single search in the scope of C for N from immediately after the class-specifier of C if P is in a complete-class context of C or from P otherwise. [Drafting note: The plan for CWG2335 is to describe forbidden dependency cycles among the complete-class contexts of a class. — end drafting note] ([class.member.lookup]/4)
Complete-class context is described in [class.mem.general] [p7](http://eel.is/c++draft/class#mem.general-7) and
[p8](http://eel.is/c++draft/class#mem.general-8). In this patch I add tests only for CWG issues that fall under current definition of complete-class context, because I'm not sure how CWG1255 and CWG287 are going to work. That's why I skip over them, but mark CWG1308 as superseded by CWG1330.
More information about the All-commits
mailing list