From: Arnaud Charlet Date: Fri, 1 Aug 2014 14:23:53 +0000 (+0000) Subject: fe.h (GNAT_Mode): New. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5b2bf62c762ab68a914a68ba4b8e115ac944507e;p=gcc.git fe.h (GNAT_Mode): New. * fe.h (GNAT_Mode): New. * gcc-interface/decl.c (gnat_to_gnu_entity): Do not error out on reverse SSO in GNAT mode. From-SVN: r213473 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index dba624f96bf..9cdbd8a7b27 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2014-08-01 Arnaud Charlet + + * fe.h (GNAT_Mode): New. + * gcc-interface/decl.c (gnat_to_gnu_entity): Do not error out on + reverse SSO in GNAT mode. + 2014-08-01 Thomas Quinot * freeze.adb: Minor reformatting. diff --git a/gcc/ada/fe.h b/gcc/ada/fe.h index c76affaf291..6f0c1d4afd5 100644 --- a/gcc/ada/fe.h +++ b/gcc/ada/fe.h @@ -173,6 +173,7 @@ extern Boolean In_Same_Source_Unit (Node_Id, Node_Id); #define Exception_Locations_Suppressed opt__exception_locations_suppressed #define Exception_Mechanism opt__exception_mechanism #define Generate_SCO_Instance_Table opt__generate_sco_instance_table +#define GNAT_Mode opt__gnat_mode #define Float_Format opt__float_format #define List_Representation_Info opt__list_representation_info @@ -183,6 +184,7 @@ extern Boolean Exception_Extra_Info; extern Boolean Exception_Locations_Suppressed; extern Exception_Mechanism_Type Exception_Mechanism; extern Boolean Generate_SCO_Instance_Table; +extern Boolean GNAT_Mode; extern Char Float_Format; extern Int List_Representation_Info; diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c index bf70486a823..9f05067f350 100644 --- a/gcc/ada/gcc-interface/decl.c +++ b/gcc/ada/gcc-interface/decl.c @@ -2916,7 +2916,8 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) gnu_type = make_node (tree_code_for_record_type (gnat_entity)); TYPE_NAME (gnu_type) = gnu_entity_name; TYPE_PACKED (gnu_type) = (packed != 0) || has_rep; - if (Reverse_Storage_Order (gnat_entity)) + + if (Reverse_Storage_Order (gnat_entity) && !GNAT_Mode) sorry ("non-default Scalar_Storage_Order"); process_attributes (&gnu_type, &attr_list, true, gnat_entity);