- Experimental implementation of discourse#71333.
- Supports access data member packs in dependent context.
- Expands access to member packs on transforming member access expression.
- Renames expanded field names to avoid duplication.
Depends on D156546
Paths
| Differential D158006
[Clang][WIP]Experimental implementation of data member packs in dependent context. Needs ReviewPublic Authored by SlaterLatiao on Aug 15 2023, 11:05 AM.
Details Summary
Depends on D156546
Diff Detail
Event TimelineSlaterLatiao retitled this revision from Member pack access in dependent context. to [Clang][WIP]Experimental implementation of data member packs in dependent context..Aug 15 2023, 11:13 AM SlaterLatiao added reviewers: cjdb, denik, aaron.ballman, cor3ntin, rsmith, erichkeane, dblaikie, shafik.
SlaterLatiao added a parent revision: D156546: [Clang][WIP]Experimental implementation of data member packs declarations.
SlaterLatiao added inline comments. SlaterLatiao marked 2 inline comments as done. Comment ActionsRemove changes in D156546 which doesn't belong to this patch. Comment Actions
SlaterLatiao added inline comments.
SlaterLatiao marked an inline comment as done. Comment Actions
Revision Contents
Diff 550400 clang/include/clang/AST/ExprCXX.h
clang/lib/AST/ComputeDependence.cpp
clang/lib/AST/ExprCXX.cpp
clang/lib/Sema/SemaExprMember.cpp
clang/lib/Sema/SemaTemplateInstantiate.cpp
clang/lib/Sema/TreeTransform.h
clang/test/CodeGenCXX/data_member_packs.cpp
|
I think you can skip the const in the first dyn_cast (think it works implicitly?) & could use const auto * on the LHS of both these ifs, since the RHS makes it clear what the type is