coroutines: Fix a typo in rewriting the function.

When amending the function re-write code, I made a typo in
the block connections.  This has not shown up in any test
fails (as far as can be seen) but is a regression in debug
info.

Fixed thus.

Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>

gcc/cp/ChangeLog:

	* coroutines.cc
	(coro_rewrite_function_body): Connect the replacement
	function block to the block nest correctly.
This commit is contained in:
Iain Sandoe 2021-06-23 08:13:22 +01:00
parent 41bd1b1903
commit 0d5db79a61

View File

@ -4055,8 +4055,8 @@ coro_rewrite_function_body (location_t fn_start, tree fnbody, tree orig,
BIND_EXPR_BLOCK (first) = replace_blk;
/* The top block has one child, so far, and we have now got a
superblock. */
BLOCK_SUPERCONTEXT (block) = top_block;
BLOCK_SUBBLOCKS (top_block) = block;
BLOCK_SUPERCONTEXT (replace_blk) = top_block;
BLOCK_SUBBLOCKS (top_block) = replace_blk;
}
/* Wrap the function body in a try {} catch (...) {} block, if exceptions