This is an archive of the discontinued LLVM Phabricator instance.

[C++20][Modules] Handle diagnosing TU-local exposures [P1815].
DraftPublic

Authored by iains on Jan 3 2023, 4:19 AM.
This is a draft revision that has not yet been submitted for review.

Details

Reviewers
None
Summary

This implements P1815R2: Translation-unit-local entities

  • cases in a function bodies
  • initializers for variables
  • decltype() for variables
  • decltype() for function return values
  • auto for variables
  • constexpt/consteval for function and variable types
  • support for function templates
  • support for template instantiations in module consumers
  • initial support for lambdas.
  • support handing lambda exposures.

Diff Detail

Event Timeline

iains created this revision.Jan 3 2023, 4:19 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 3 2023, 4:19 AM
Herald added a subscriber: ChuanqiXu. · View Herald Transcript
iains added a comment.Jan 3 2023, 4:21 AM

added @ChuanqiXu as requested (this is a draft, it does not need review at this time).

iains updated this revision to Diff 498824.Feb 20 2023, 6:15 AM
iains edited the summary of this revision. (Show Details)

rebased, added support for decltype and constexpr/constal and auto.

iains updated this revision to Diff 499073.Feb 21 2023, 1:29 AM

rebased, reworked handling of constexpr variables.

iains updated this revision to Diff 502596.Mar 6 2023, 4:59 AM
iains edited the summary of this revision. (Show Details)

rebased, added support for function templates.

iains updated this revision to Diff 510392.Apr 2 2023, 9:08 PM
iains edited the summary of this revision. (Show Details)

rebased, added support for template instantiations.

depends on lookup changes for proper functionality,

iains updated this revision to Diff 510395.Apr 2 2023, 9:11 PM

reapply onto parent revision

iains updated this revision to Diff 511328.Apr 6 2023, 2:09 AM
iains edited the summary of this revision. (Show Details)

rebased and moved some lookup stuff to D145965.

added initial support for lambda closure cases.

iains updated this revision to Diff 529853.Jun 9 2023, 1:04 AM

rebased and adjusted to upstream changes

bruno added a subscriber: bruno.Jun 15 2023, 6:30 AM
iains updated this revision to Diff 536460.Jun 30 2023, 3:33 PM
iains edited the summary of this revision. (Show Details)

rebased - added support for lambda expression exposures.

iains edited the summary of this revision. (Show Details)Jun 30 2023, 3:36 PM
iains updated this revision to Diff 536528.Jul 1 2023, 6:11 AM

rebased, fixed some formatting