From 0118b9193d83cb42fc5b6b7f2095898296a4313c Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Fri, 29 Jun 2012 22:39:29 +0000 Subject: [PATCH] tree-eh.c (lower_try_finally_switch): Really put the location of the last statement of the finally block onto the switch. * tree-eh.c (lower_try_finally_switch): Really put the location of the last statement of the finally block onto the switch. From-SVN: r189086 --- gcc/ChangeLog | 5 +++++ gcc/tree-eh.c | 5 ++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0fca228f3c2..45caa679590 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2012-06-29 Eric Botcazou + + * tree-eh.c (lower_try_finally_switch): Really put the location of the + last statement of the finally block onto the switch. + 2012-06-29 H.J. Lu PR target/53539 diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index 89b95fa78af..3b35ca42862 100644 --- a/gcc/tree-eh.c +++ b/gcc/tree-eh.c @@ -1320,9 +1320,8 @@ lower_try_finally_switch (struct leh_state *state, struct leh_tf_state *tf) /* The location of the finally is either the last stmt in the finally block or the location of the TRY_FINALLY itself. */ - finally_loc = gimple_seq_last_stmt (tf->top_p_seq) != NULL ? - gimple_location (gimple_seq_last_stmt (tf->top_p_seq)) - : tf_loc; + x = gimple_seq_last_stmt (finally); + finally_loc = x ? gimple_location (x) : tf_loc; /* Lower the finally block itself. */ lower_eh_constructs_1 (state, &finally); -- 2.43.5