[clang] [C++20][Coroutines] Lambda-coroutine with operator new in promise_type (PR #84193)
Andreas Fertig via cfe-commits
cfe-commits at lists.llvm.org
Fri Mar 8 03:07:20 PST 2024
================
@@ -1434,13 +1434,18 @@ ExprResult Sema::ActOnCXXThis(SourceLocation Loc) {
return Diag(Loc, diag::err_invalid_this_use) << 0;
}
- return BuildCXXThisExpr(Loc, ThisTy, /*IsImplicit=*/false);
+ return BuildCXXThisExpr(Loc, ThisTy, /*IsImplicit=*/false,
+ SkipLambdaCaptureCheck);
}
-Expr *Sema::BuildCXXThisExpr(SourceLocation Loc, QualType Type,
- bool IsImplicit) {
+Expr *Sema::BuildCXXThisExpr(SourceLocation Loc, QualType Type, bool IsImplicit,
+ bool SkipLambdaCaptureCheck) {
auto *This = CXXThisExpr::Create(Context, Loc, Type, IsImplicit);
- MarkThisReferenced(This);
+
+ if (!SkipLambdaCaptureCheck) {
----------------
andreasfertig wrote:
I assume your question is answered by my answer above: https://github.com/llvm/llvm-project/pull/84193#discussion_r1515631511.
https://github.com/llvm/llvm-project/pull/84193
More information about the cfe-commits
mailing list