rymiel marked an inline comment as done. rymiel added inline comments.
================ Comment at: clang/lib/Parse/ParseExprCXX.cpp:1283 ParseScope LambdaScope(this, Scope::LambdaScope | Scope::DeclScope | Scope::FunctionDeclarationScope | ---------------- erichkeane wrote: > Ok, last bit, I promise :) I see that we set up the lambda scope here and > push the lambda scope on 1287. Instead of passing a bool, could we just > figure out the `IsLambdaRequiresClause` based on that instead? See > definition of `PushLambdaScope` here: > https://clang.llvm.org/doxygen/Sema_8cpp_source.html#l02141 > > A test to see if that would work would be the one you have below, PLUS an > example of a requires clause INSIDE of a lambda that itself isn't a lambda > that would reproduce the warning(though I'm not convinced ATM that is > possible, I don't think we allow a template inside block scope, unless there > is some trick I'm too uncreative enough to come up with). If none exists, > just checking the current scope would work and perhaps be more preferential. > > We do this rarely, but we do it at least in SemaStmt.cpp in > ActOnCapScopeReturnStmt. Just a > `dyn_cast<LambdaScopeInfo>(getCurFunction())` might be able to replace the > bool all over the place. Thank you, I knew there was probably some much cleaner way to do this that I simply had no clue about due to my unfamiliarity. I've gone ahead and used `dyn_cast<LambdaScopeInfo>(getCurFunction())` Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146140/new/ https://reviews.llvm.org/D146140 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits