================
@@ -692,6 +692,86 @@ ExprResult Parser::ParseLambdaExpression() {
   return ParseLambdaExpressionAfterIntroducer(Intro);
 }
 
+bool Parser::IsLambdaAfterTypeCast() {
+  assert(getLangOpts().CPlusPlus && Tok.is(tok::l_square) &&
+         "Not at the start of a possible lambda expression.");
+  RevertingTentativeParsingAction TPA(*this);
+  ConsumeBracket();
+  // skip the introducer
+  if (Tok.is(tok::equal) ||
+      (Tok.is(tok::amp) && NextToken().isOneOf(tok::comma, tok::r_square)))
+    return true;
+
+  SkipUntil(tok::r_square);
+
+  auto IsLambdaKWOrAttribute = [&]() {
+    // These are keyworks that can appear somewhere in a lambda declarator,
----------------
Fznamznon wrote:

```suggestion
    // These are keywords that can appear somewhere in a lambda declarator,
```

https://github.com/llvm/llvm-project/pull/140053
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to