gigi.h (standard_datatypes): Add ADT_set_exception_parameter_decl

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
This commit is contained in:
Tristan Gingold 2013-10-14 14:02:14 +00:00 committed by Arnaud Charlet
parent 161c5cc509
commit 9f2a75d355
3 changed files with 20 additions and 0 deletions

View 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

View 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]

View 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,