https://gcc.gnu.org/g:09cac2a833689f2535d6c2c88a67b2169df4e4d7
commit r16-1058-g09cac2a833689f2535d6c2c88a67b2169df4e4d7 Author: Iain Sandoe <i...@sandoe.co.uk> Date: Fri May 30 20:06:26 2025 +0100 c++: Add co_await, co_yield and co_return to dump_expr. These were omitted there as an oversight, most of the error handling for the coroutines code is specific rather than using generic %qE etc. gcc/cp/ChangeLog: * error.cc (dump_expr): Add co_await, co_yield and co_return. Signed-off-by: Iain Sandoe <i...@sandoe.co.uk> Diff: --- gcc/cp/error.cc | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gcc/cp/error.cc b/gcc/cp/error.cc index 636434561775..69da381a355b 100644 --- a/gcc/cp/error.cc +++ b/gcc/cp/error.cc @@ -3269,6 +3269,27 @@ dump_expr (cxx_pretty_printer *pp, tree t, int flags) break; } + case CO_AWAIT_EXPR: + pp_cxx_ws_string (pp, "co_await"); + pp_cxx_whitespace (pp); + dump_expr (pp, TREE_OPERAND (t, 0), flags); + break; + + case CO_YIELD_EXPR: + pp_cxx_ws_string (pp, "co_yield"); + pp_cxx_whitespace (pp); + dump_expr (pp, TREE_OPERAND (t, 0), flags); + break; + + case CO_RETURN_EXPR: + pp_cxx_ws_string (pp, "co_return"); + if (TREE_OPERAND (t, 0)) + { + pp_cxx_whitespace (pp); + dump_expr (pp, TREE_OPERAND (t, 0), flags); + } + break; + /* This list is incomplete, but should suffice for now. It is very important that `sorry' does not call `report_error_function'. That could cause an infinite loop. */