From: Olivier Hainque Date: Tue, 21 Sep 2004 15:34:36 +0000 (+0200) Subject: decl.c (gnat_to_gnu_entity): Check for a dummy designated type via TYPE_MODE instead... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2494e67370e79d3530c72fab916713e2254453d6;p=gcc.git decl.c (gnat_to_gnu_entity): Check for a dummy designated type via TYPE_MODE instead of COMPLETE_TYPE_P. 2004-09-21 Olivier Hainque * decl.c (gnat_to_gnu_entity) : Check for a dummy designated type via TYPE_MODE instead of COMPLETE_TYPE_P. This ensures proper handling of types with rep clauses, which might have their TYPE_SIZE set already. From-SVN: r87807 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 3799d7b0b54..ca0256667f4 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,10 @@ +2004-09-21 Olivier Hainque + + * decl.c (gnat_to_gnu_entity) : Check for a + dummy designated type via TYPE_MODE instead of COMPLETE_TYPE_P. This + ensures proper handling of types with rep clauses, which might have + their TYPE_SIZE set already. + 2004-09-21 Robert Dewar * decl.c (gnat_to_gnu_type, case E_Modular_Integer_Type): Wrap modular diff --git a/gcc/ada/decl.c b/gcc/ada/decl.c index b73081bb3ee..369f8d248d8 100644 --- a/gcc/ada/decl.c +++ b/gcc/ada/decl.c @@ -3032,7 +3032,7 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) of the call to gnat_to_gnu_type above if we are processing an access type for a record component designating the record type itself. */ - if (!COMPLETE_TYPE_P (gnu_desig_type)) + if (TYPE_MODE (gnu_desig_type) == VOIDmode) { /* We must ensure that the pointer to variant we make will be processed by update_pointer_to when the initial type