diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2012-06-29 22:39:29 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2012-06-29 22:39:29 +0000 |
commit | 0118b9193d83cb42fc5b6b7f2095898296a4313c (patch) | |
tree | df5915b3873e926b9a0de2cd6ebe7789ba9e8d96 /gcc/tree-eh.c | |
parent | dc7267351ebc216085566a216e68f398ba63c2a9 (diff) | |
download | gcc-0118b9193d83cb42fc5b6b7f2095898296a4313c.zip gcc-0118b9193d83cb42fc5b6b7f2095898296a4313c.tar.gz gcc-0118b9193d83cb42fc5b6b7f2095898296a4313c.tar.bz2 |
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
Diffstat (limited to 'gcc/tree-eh.c')
-rw-r--r-- | gcc/tree-eh.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index 89b95fa..3b35ca4 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); |