diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 916715ad62e..7e8e9a127bf 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2014-11-05 Eric Botcazou + + * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu): Set + the SLOC of the node on the call to set_jmpbuf_address_soft emitted + on block entry with SJLJ. + 2014-11-05 Eric Botcazou * gcc-interface/utils.c (create_subprog_decl): Move code dealing with diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c index 258b79cbb52..05b81ef75fb 100644 --- a/gcc/ada/gcc-interface/trans.c +++ b/gcc/ada/gcc-interface/trans.c @@ -4629,9 +4629,13 @@ Handled_Sequence_Of_Statements_to_gnu (Node_Id gnat_node) start_stmt_group (); if (setjmp_longjmp) - add_stmt (build_call_n_expr (set_jmpbuf_decl, 1, - build_unary_op (ADDR_EXPR, NULL_TREE, - gnu_jmpbuf_decl))); + { + gnu_expr = build_call_n_expr (set_jmpbuf_decl, 1, + build_unary_op (ADDR_EXPR, NULL_TREE, + gnu_jmpbuf_decl)); + set_expr_location_from_node (gnu_expr, gnat_node); + add_stmt (gnu_expr); + } if (Present (First_Real_Statement (gnat_node))) process_decls (Statements (gnat_node), Empty,