]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
coroutines : Add a missed begin/finish else clause to the codegen.
authorIain Sandoe <iain@sandoe.co.uk>
Wed, 3 Mar 2021 16:14:24 +0000 (16:14 +0000)
committerIain Sandoe <iain@sandoe.co.uk>
Wed, 1 Sep 2021 13:26:03 +0000 (14:26 +0100)
Minor code-gen correction.

Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
gcc/cp/ChangeLog:

* coroutines.cc (build_actor_fn): Add begin/finish clauses
to the initial test in the actor function.

gcc/cp/coroutines.cc

index 3bb33cc9eb936500cc9302c987e89e59304fc91e..ceb3d3be75e3c4b1c5f261909aab8035eb256c94 100644 (file)
@@ -2331,6 +2331,7 @@ build_actor_fn (location_t loc, tree coro_frame_type, tree actor, tree fnbody,
   finish_switch_stmt (destroy_dispatcher);
 
   finish_then_clause (lsb_if);
+  begin_else_clause (lsb_if);
 
   tree dispatcher = begin_switch_stmt ();
   finish_switch_cond (rat, dispatcher);
@@ -2368,6 +2369,7 @@ build_actor_fn (location_t loc, tree coro_frame_type, tree actor, tree fnbody,
 
   /* Insert the prototype dispatcher.  */
   finish_switch_stmt (dispatcher);
+  finish_else_clause (lsb_if);
 
   finish_if_stmt (lsb_if);