[PATCH] D114439: [Annotation] Allow parameter pack expansions in annotate attribute
Steffen Larsen via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 7 04:26:21 PST 2021
steffenlarsen updated this revision to Diff 392340.
steffenlarsen added a comment.
The new revision does the following:
1. Revisits the diagnostics. Now parameter packs will cause the same error on attributes that do not support parameter packs in arguments, while attributes that support it will cause an error if parameter packs are used in the incorrect argument, specifying which argument should be the earliest for it.
2. Adds additional tests to ensure that variadic arguments supporting packs also allow pack expansion intermingled with other arguments.
3. Adds assertions to attribute generation to check that attributes only ever support packs in the last variadic argument and that there are no other variadic arguments if they do.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D114439/new/
https://reviews.llvm.org/D114439
Files:
clang/include/clang/Basic/Attr.td
clang/include/clang/Basic/DiagnosticParseKinds.td
clang/lib/Parse/ParseDecl.cpp
clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
clang/test/Parser/cxx0x-attributes.cpp
clang/test/SemaTemplate/attributes.cpp
clang/utils/TableGen/ClangAttrEmitter.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D114439.392340.patch
Type: text/x-patch
Size: 12335 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20211207/b7ed4577/attachment.bin>
More information about the cfe-commits
mailing list