diff options
-rw-r--r-- | gcc/ada/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ada/gcc-interface/trans.c | 10 |
2 files changed, 13 insertions, 3 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 916715a..7e8e9a1 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,11 @@ 2014-11-05 Eric Botcazou <ebotcazou@adacore.com> + * 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 <ebotcazou@adacore.com> + * gcc-interface/utils.c (create_subprog_decl): Move code dealing with conflicting inlining status of nested subprograms to... * gcc-interface/trans.c (check_inlining_for_nested_subprog): ...here. diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c index 258b79c..05b81ef 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, |