[PATCH] D36527: Implemented P0428R2 - Familiar template syntax for generic lambdas
Hamza Sood via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Dec 7 08:01:03 PST 2018
hamzasood updated this revision to Diff 177221.
hamzasood added a comment.
- Committed the test framework changes separately as r348589 and r348603.
- Correctly cleanup the lambda scope if an error in encountered while parsing the template parameters.
- Replaced getExplicitTemplateParameterCount with getExplicitTemplateParameters, which returns an ArrayRef. This simplifies the handling of the parameters in a few places.
- Replaced a linear search over the template parameters with a binary search.
- Added expected error cases to the template lambda usage tests to ensure that the static assertions are correctly instantiated.
- Added a test for templated lambdas that're used within another template; TreeTransform already transforms the template parameter list so no change was needed to make the test pass.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D36527/new/
https://reviews.llvm.org/D36527
Files:
include/clang/AST/DeclCXX.h
include/clang/AST/DeclTemplate.h
include/clang/AST/ExprCXX.h
include/clang/AST/RecursiveASTVisitor.h
include/clang/Basic/DiagnosticParseKinds.td
include/clang/Parse/Parser.h
include/clang/Sema/ScopeInfo.h
include/clang/Sema/Sema.h
lib/AST/DeclCXX.cpp
lib/AST/DeclPrinter.cpp
lib/AST/ExprCXX.cpp
lib/AST/ItaniumMangle.cpp
lib/AST/StmtPrinter.cpp
lib/AST/TypePrinter.cpp
lib/Parse/ParseExprCXX.cpp
lib/Sema/Sema.cpp
lib/Sema/SemaLambda.cpp
lib/Sema/SemaType.cpp
test/CXX/temp/temp.decls/temp.variadic/p4.cpp
test/CodeGenCXX/mangle-lambda-explicit-template-params.cpp
test/Index/print-display-names.cpp
test/PCH/cxx11-lambdas.mm
test/PCH/cxx1y-lambdas.mm
test/PCH/cxx2a-template-lambdas.cpp
test/Parser/cxx2a-template-lambdas.cpp
test/SemaCXX/cxx2a-template-lambdas.cpp
unittests/AST/StmtPrinterTest.cpp
unittests/Tooling/RecursiveASTVisitorTests/LambdaTemplateParams.cpp
www/cxx_status.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D36527.177221.patch
Type: text/x-patch
Size: 36339 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20181207/d4db49b5/attachment-0001.bin>
More information about the cfe-commits
mailing list