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  <hainque@act-europe.fr>

	* decl.c (gnat_to_gnu_entity) <E_General_Access_Type>: 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
This commit is contained in:
Olivier Hainque 2004-09-21 17:34:36 +02:00 committed by Arnaud Charlet
parent 910d20fcb8
commit 2494e67370
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2004-09-21 Olivier Hainque <hainque@act-europe.fr>
* decl.c (gnat_to_gnu_entity) <E_General_Access_Type>: 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 <dewar@gnat.com>
* decl.c (gnat_to_gnu_type, case E_Modular_Integer_Type): Wrap modular

View File

@ -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