[clang] Surface error for plain return statement in coroutine earlier (PR #100985)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 1 01:56:46 PDT 2024
================
@@ -3747,6 +3747,16 @@ Sema::ActOnReturnStmt(SourceLocation ReturnLoc, Expr *RetValExp,
Diag(ReturnLoc, diag::err_acc_branch_in_out_compute_construct)
<< /*return*/ 1 << /*out of */ 0);
+ // using plain return in a coroutine is not allowed.
+ FunctionScopeInfo *FSI = getCurFunction();
+ if (getLangOpts().Coroutines && FSI->isCoroutine()) {
----------------
ivanaivanovska wrote:
Done.
https://github.com/llvm/llvm-project/pull/100985
More information about the cfe-commits
mailing list