[PATCH] D148433: [clang] Add tests for DRs about complete-class context

Vlad Serebrennikov via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Apr 15 09:16:51 PDT 2023


Endill created this revision.
Endill added reviewers: erichkeane, shafik.
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>: 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.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D148433

Files:
  clang/test/CXX/drs/dr13xx.cpp
  clang/test/CXX/drs/dr16xx.cpp
  clang/test/CXX/drs/dr18xx.cpp
  clang/test/CXX/drs/dr23xx.cpp
  clang/www/cxx_dr_status.html

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D148433.513919.patch
Type: text/x-patch
Size: 6449 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230415/b7a5e931/attachment.bin>


More information about the cfe-commits mailing list