diff --git a/source/declarations.tex b/source/declarations.tex index de35f4643c..efcf66b62e 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -7553,17 +7553,6 @@ of a coroutine is ill-formed\iref{dcl.contract.func}. \end{note} -\pnum -If searches for the names \tcode{return_void} and \tcode{return_value} -in the scope of the promise type each find any declarations, -the program is ill-formed. -\begin{note} -If \tcode{return_void} is found, flowing off -the end of a coroutine is equivalent to a \keyword{co_return} with no operand. -Otherwise, flowing off the end of a coroutine -results in undefined behavior\iref{stmt.return.coroutine}. -\end{note} - \pnum The expression \tcode{\exposid{promise}.get_return_object()} is used to initialize diff --git a/source/preprocessor.tex b/source/preprocessor.tex index ab55008cf6..40faaf4da0 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -2369,7 +2369,7 @@ \defnxname{cpp_hex_float} & \tcode{201603L} \\ \rowsep \defnxname{cpp_if_consteval} & \tcode{202106L} \\ \rowsep \defnxname{cpp_if_constexpr} & \tcode{201606L} \\ \rowsep -\defnxname{cpp_impl_coroutine} & \tcode{201902L} \\ \rowsep +\defnxname{cpp_impl_coroutine} & \tcode{202606L} \\ \rowsep \defnxname{cpp_impl_destroying_delete} & \tcode{201806L} \\ \rowsep \defnxname{cpp_impl_reflection} & \tcode{202603L} \\ \rowsep \defnxname{cpp_impl_three_way_comparison} & \tcode{201907L} \\ \rowsep diff --git a/source/statements.tex b/source/statements.tex index 3742c06e8a..f034493787 100644 --- a/source/statements.tex +++ b/source/statements.tex @@ -1221,8 +1221,7 @@ \end{itemize} \pnum -If a search for the name \tcode{return_void} in the scope of the promise type -finds any declarations, +If overload resolution for \placeholder{p}\tcode{.return_void()} succeeds, flowing off the end of a coroutine's \grammarterm{function-body} is equivalent to a \keyword{co_return} with no operand; otherwise flowing off the end of a coroutine's \grammarterm{function-body}