This is an archive of the discontinued LLVM Phabricator instance.

[clang] Mark CWG2009 as N/A
ClosedPublic

Authored by Endill on Apr 13 2023, 11:37 AM.

Details

Reviewers
shafik
Group Reviewers
Restricted Project
Commits
rG0a113c4c50f6: [clang] Mark CWG2009 as N/A
Summary

P1787: CWG2331 is resolved by defining lookup from complete-class contexts and out-of-line member definitions. The rest of CWG2009 is resolved by making it ill-formed NDR for forward lookup outside a complete-class context to change the results (before overload resolution, to avoid differences in instantiation).
Wording: The result of the search is the declaration set of S(N, T). If it is an invalid set, the program is ill-formed. If it differs from the result of a search in T for N from immediately after the class-specifier of T, the program is ill-formed, no diagnostic required. ([class.member.lookup]/7)

Diff Detail

Event Timeline

Endill created this revision.Apr 13 2023, 11:37 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 13 2023, 11:37 AM
Endill requested review of this revision.Apr 13 2023, 11:37 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 13 2023, 11:37 AM
Herald added a subscriber: cfe-commits. · View Herald Transcript
shafik accepted this revision.Apr 20 2023, 2:23 PM

LGTM, from what I can tell this did not change anything.

This revision is now accepted and ready to land.Apr 20 2023, 2:23 PM
This revision was automatically updated to reflect the committed changes.