From 4a17ee9576f699ef28ad361eed32a6b61b19c4de Mon Sep 17 00:00:00 2001 From: ebotcazou Date: Wed, 26 Oct 2011 20:45:09 +0000 Subject: * gcc-interface/decl.c (gnat_to_gnu_entity) : Try to make a packable type for fields of union types as well. : Use RECORD_OR_UNION_TYPE_P predicate. (gnat_to_gnu_component_type): Try to make a packable type for fields of union types as well. (make_packable_type): Use RECORD_OR_UNION_TYPE_P predicate. (maybe_pad_type): Try to make a packable type for fields of union types as well. (gnat_to_gnu_field): Likewise. (is_variable_size): Use RECORD_OR_UNION_TYPE_P predicate. (set_rm_size): Likewise. (rm_size): Likewise. * gcc-interface/misc.c (gnat_type_max_size): Likewise. * gcc-interface/trans.c (add_decl_expr): Likewise. * gcc-interface/utils.c (finish_record_type): Likewise. * gcc-interface/utils2.c (build_simple_component_ref): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180540 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/gcc-interface/utils.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'gcc/ada/gcc-interface/utils.c') diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index 272c192dbee..73657528a8a 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -726,9 +726,7 @@ finish_record_type (tree record_type, tree field_list, int rep_level, tree this_size = DECL_SIZE (field); tree this_ada_size; - if ((TREE_CODE (type) == RECORD_TYPE - || TREE_CODE (type) == UNION_TYPE - || TREE_CODE (type) == QUAL_UNION_TYPE) + if (RECORD_OR_UNION_TYPE_P (type) && !TYPE_FAT_POINTER_P (type) && !TYPE_CONTAINS_TEMPLATE_P (type) && TYPE_ADA_SIZE (type)) -- cgit v1.2.3