diff --git a/gcc/cp/coroutines.cc b/gcc/cp/coroutines.cc index 4cbc0e09994c3fa68aa0cb332905e1ab680f8a20..b79e2c66b702bfda0cee8a7d9750dcc29c4c963d 100644 --- a/gcc/cp/coroutines.cc +++ b/gcc/cp/coroutines.cc @@ -1102,7 +1102,8 @@ finish_co_return_stmt (location_t kw, tree expr) " %<co_return%> statement"); expr = build2_loc (kw, CO_RETURN_EXPR, void_type_node, expr, co_ret_call); - return finish_expr_stmt (expr); + expr = maybe_cleanup_point_expr_void (expr); + return add_stmt (expr); } /* We need to validate the arguments to __builtin_coro_promise, since the