[PATCH] D36527: Implemented P0428R2 - Familiar template syntax for generic lambdas

Hamza Sood via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 21 04:55:11 PDT 2017


hamzasood marked 5 inline comments as done.
hamzasood added a comment.

So to clarify: NumExplicitTemplateParams should be stored in LambdaDefinitionData (with an accessor in LambdaExpr) and ExplicitTemplateParamRange (SourceRange) should be stored in LambdaExpr?
That makes sense, but doesn't seem consistent with how things are currently stored. E.g. NumCaptures is stored in both LambdaDefinitionData and LambdaExpr.



================
Comment at: lib/Parse/ParseExprCXX.cpp:1116
+  if (HasExplicitTemplateParams) {
+    SmallVector<Decl*, 4> TemplateParams;
+    SourceLocation LAngleLoc, RAngleLoc;
----------------
faisalv wrote:
> Why not Just use/pass LSI->TemplateParams?
I thought that Parser and Sema stay separate, and communicate through various ActOn functions? Directly accessing LSI would violate that.


https://reviews.llvm.org/D36527





More information about the cfe-commits mailing list