[PATCH] D156546: [Clang][WIP]Experimental implementation of data member packs declarations

Corentin Jabot via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jul 31 15:11:04 PDT 2023


cor3ntin added inline comments.


================
Comment at: clang/lib/Sema/SemaType.cpp:5930-5931
       break;
+    case DeclaratorContext::Member:
+      // Expand for packed data members.
     case DeclaratorContext::TemplateParam:
----------------
cjdb wrote:
> dblaikie wrote:
> > Perhaps a few more words here would be good - quoting a WG21 proposal paper that this code implements, similar to the standard quotations in nearby code. (be good to mention the WG21 proposal paper/whatnot in the patch description/commit message too)
> I would suggest a link to the discourse discussion instead of [[ http://wg21.link/P1858 | P1858]], since that thread talks about the proposal and goes into a bit more detail than the [[ https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1858r2.html#member-packs | member packs ]] section of the proposal.
@dblaikie  This does not implement a C++ proposal - especially one that would be anywhere near approval (ie we had vague talk that WG21 want something in that space in P1858 and related papers, but no actual specification or consensus of any kind) and this PR also does not implement or have proposals for all  the complications this features has in terms of accessing such member packs
(ie packs in non dependent context, disambiguation between member of a variadic variable and pack members and combinations of the two)

This is a very interesting experiment, but we should be careful not to approve an extension that is going to conflict with future C++ language features


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D156546/new/

https://reviews.llvm.org/D156546



More information about the cfe-commits mailing list