From: Eric Botcazou Date: Wed, 30 Aug 2017 19:10:38 +0000 (+0000) Subject: tree-eh.c (lower_try_finally_switch): Set the location of the finally on the entire... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ba0cecd6d45506d12db4c88637565cc059e6960d;p=gcc.git tree-eh.c (lower_try_finally_switch): Set the location of the finally on the entire header of the finally block in... * tree-eh.c (lower_try_finally_switch): Set the location of the finally on the entire header of the finally block in the fallthru case. From-SVN: r251546 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c797558849c..9106eb735dc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-08-30 Eric Botcazou + + * tree-eh.c (lower_try_finally_switch): Set the location of the finally + on the entire header of the finally block in the fallthru case. + 2017-08-30 Eric Botcazou * varasm.c (decode_addr_const): Deal with INDIRECT_REF . diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index 938197992ce..329fadb230f 100644 --- a/gcc/tree-eh.c +++ b/gcc/tree-eh.c @@ -1416,11 +1416,12 @@ lower_try_finally_switch (struct leh_state *state, struct leh_tf_state *tf) x = gimple_build_assign (finally_tmp, build_int_cst (integer_type_node, fallthru_index)); + gimple_set_location (x, finally_loc); gimple_seq_add_stmt (&tf->top_p_seq, x); tmp = build_int_cst (integer_type_node, fallthru_index); last_case = build_case_label (tmp, NULL, - create_artificial_label (tf_loc)); + create_artificial_label (finally_loc)); case_label_vec.quick_push (last_case); last_case_index++; @@ -1429,7 +1430,7 @@ lower_try_finally_switch (struct leh_state *state, struct leh_tf_state *tf) tmp = lower_try_finally_fallthru_label (tf); x = gimple_build_goto (tmp); - gimple_set_location (x, tf_loc); + gimple_set_location (x, finally_loc); gimple_seq_add_stmt (&switch_body, x); }