* gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
authorhainque <hainque@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 6 Jul 2009 14:33:11 +0000 (14:33 +0000)
committerhainque <hainque@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 6 Jul 2009 14:33:11 +0000 (14:33 +0000)
        setjmp_longjmp): Attach the exception propagation reraise fallback
        to the sequence end label location when we have it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149285 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/ChangeLog
gcc/ada/gcc-interface/trans.c

index a2ad971..5e76c14 100644 (file)
@@ -1,3 +1,9 @@
+2009-07-06  Olivier Hainque  <hainque@adacore.com>
+
+       * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
+       setjmp_longjmp): Attach the exception propagation reraise fallback
+       to the sequence end label location when we have it.
+
 2009-07-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
        PR ada/40608
index 24163b8..1008f1a 100644 (file)
@@ -3071,7 +3071,9 @@ Handled_Sequence_Of_Statements_to_gnu (Node_Id gnat_node)
         defer abortion.  */
       gnu_expr = build_call_1_expr (raise_nodefer_decl,
                                    TREE_VALUE (gnu_except_ptr_stack));
-      set_expr_location_from_node (gnu_expr, gnat_node);
+      set_expr_location_from_node
+       (gnu_expr,
+        Present (End_Label (gnat_node)) ? End_Label (gnat_node) : gnat_node);
 
       if (gnu_else_ptr)
        *gnu_else_ptr = gnu_expr;