gigi.h (standard_datatypes): Add ADT_set_exception_parameter_decl
authorTristan Gingold <gingold@adacore.com>
Mon, 14 Oct 2013 14:02:14 +0000 (14:02 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 14 Oct 2013 14:02:14 +0000 (16:02 +0200)
2013-10-14  Tristan Gingold  <gingold@adacore.com>

* gcc-interface/gigi.h (standard_datatypes): Add
ADT_set_exception_parameter_decl
(set_exception_parameter_decl): New macro.
* gcc-interface/trans.c (gigi): Initialize set_exception_parameter_decl.
(Exception_Handler_to_gnu_zcx): Initialize the choice parameter.

From-SVN: r203561

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

index aa7004b15e26b74b01cd7f15ed87e7bf2d97436e..6818ca33198a3f1e7eb77e21780a930d629555d1 100644 (file)
@@ -1,3 +1,11 @@
+2013-10-14  Tristan Gingold  <gingold@adacore.com>
+
+       * gcc-interface/gigi.h (standard_datatypes): Add
+       ADT_set_exception_parameter_decl
+       (set_exception_parameter_decl): New macro.
+       * gcc-interface/trans.c (gigi): Initialize set_exception_parameter_decl.
+       (Exception_Handler_to_gnu_zcx): Initialize the choice parameter.
+
 2013-10-14  Robert Dewar  <dewar@adacore.com>
 
        * exp_attr.adb (Find_Stream_Subprogram): Optimize
index d18fd4d2207f558dbf913d9ebbc2cc76b6e825b1..ca297373d73591931d509b54ee3eecabdc3f1996 100644 (file)
@@ -411,6 +411,7 @@ enum standard_datatypes
   ADT_update_setjmp_buf_decl,
   ADT_raise_nodefer_decl,
   ADT_reraise_zcx_decl,
+  ADT_set_exception_parameter_decl,
   ADT_begin_handler_decl,
   ADT_end_handler_decl,
   ADT_unhandled_except_decl,
@@ -470,6 +471,8 @@ extern GTY(()) tree gnat_raise_decls_ext[(int) LAST_REASON_CODE + 1];
 #define update_setjmp_buf_decl gnat_std_decls[(int) ADT_update_setjmp_buf_decl]
 #define raise_nodefer_decl gnat_std_decls[(int) ADT_raise_nodefer_decl]
 #define reraise_zcx_decl gnat_std_decls[(int) ADT_reraise_zcx_decl]
+#define set_exception_parameter_decl \
+          gnat_std_decls[(int) ADT_set_exception_parameter_decl]
 #define begin_handler_decl gnat_std_decls[(int) ADT_begin_handler_decl]
 #define others_decl gnat_std_decls[(int) ADT_others_decl]
 #define all_others_decl gnat_std_decls[(int) ADT_all_others_decl]
index f97112ce3999e607fcc05c9b0a58f6a0bea84f51..ff1f22d3c9e47b4a0cb9b863ca406c3383d7ec5d 100644 (file)
@@ -565,6 +565,15 @@ gigi (Node_Id gnat_root, int max_gnat_node, int number_name ATTRIBUTE_UNUSED,
      NULL_TREE, is_disabled, true, true, true, NULL, Empty);
   DECL_IGNORED_P (get_excptr_decl) = 1;
 
+  set_exception_parameter_decl
+    = create_subprog_decl
+      (get_identifier ("__gnat_set_exception_parameter"), NULL_TREE,
+       build_function_type_list (void_type_node,
+                                ptr_void_type_node,
+                                ptr_void_type_node,
+                                NULL_TREE),
+       NULL_TREE, is_disabled, true, true, true, NULL, Empty);
+
   raise_nodefer_decl
     = create_subprog_decl
       (get_identifier ("__gnat_raise_nodefer_with_msg"), NULL_TREE,