From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1666) id B1942385AC2F; Tue, 30 Nov 2021 14:27:58 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B1942385AC2F MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Richard Biener To: gcc-cvs@gcc.gnu.org Subject: [gcc r12-5629] Add comment to indicate tail recursion X-Act-Checkin: gcc X-Git-Author: Richard Biener X-Git-Refname: refs/heads/master X-Git-Oldrev: e43b15c88c242b14a8ced8e631c1f9b80e83d63c X-Git-Newrev: 26493af58a1297d5d9fbb061694416deaee71220 Message-Id: <20211130142758.B1942385AC2F@sourceware.org> Date: Tue, 30 Nov 2021 14:27:58 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Nov 2021 14:27:58 -0000 https://gcc.gnu.org/g:26493af58a1297d5d9fbb061694416deaee71220 commit r12-5629-g26493af58a1297d5d9fbb061694416deaee71220 Author: Richard Biener Date: Tue Nov 30 15:25:17 2021 +0100 Add comment to indicate tail recursion My previous change removed an unreachable break; there (an unreachable continue; would have been more to the point). The following re-adds a comment explaining that WALK_SUBEXPR_TAIL does not fall through but tail recurses. 2021-11-30 Richard Biener gcc/fortran/ * frontend-passes.c (gfc_expr_walker): Add comment to indicate tail recursion. Diff: --- gcc/fortran/frontend-passes.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/fortran/frontend-passes.c b/gcc/fortran/frontend-passes.c index 16ee2afc9c0..4764c834f4f 100644 --- a/gcc/fortran/frontend-passes.c +++ b/gcc/fortran/frontend-passes.c @@ -5229,6 +5229,7 @@ gfc_expr_walker (gfc_expr **e, walk_expr_fn_t exprfn, void *data) case EXPR_OP: WALK_SUBEXPR ((*e)->value.op.op1); WALK_SUBEXPR_TAIL ((*e)->value.op.op2); + /* No fallthru because of the tail recursion above. */ case EXPR_FUNCTION: for (a = (*e)->value.function.actual; a; a = a->next) WALK_SUBEXPR (a->expr);