decl.c (gnat_to_gnu_entity): Do not bother about alias sets in presence of derivation...
authorEric Botcazou <ebotcazou@adacore.com>
Sun, 8 Feb 2015 09:24:54 +0000 (09:24 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Sun, 8 Feb 2015 09:24:54 +0000 (09:24 +0000)
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not bother about alias
sets in presence of derivation for subprogram types.

From-SVN: r220511

gcc/ada/ChangeLog
gcc/ada/gcc-interface/decl.c

index ed638a61c5ed6a2afc01ce5f5c4f3bc0aa561390..e14b1c1c34d6cee0700fa36975fbfcb0d885092b 100644 (file)
@@ -1,3 +1,8 @@
+2015-02-08  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/decl.c (gnat_to_gnu_entity): Do not bother about alias
+       sets in presence of derivation for subprogram types.
+
 2015-02-08  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gcc-interface/utils.c (begin_subprog_body): Assert that the body is
index 43984a20e7b681faf6244cf0df5ec43f5e265b73..12e5fd0b6bb97b099e26c717164c1bfee8b4b3a7 100644 (file)
@@ -5138,7 +5138,9 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
         to conflict with Comp2 and an alias set copy is required.
 
         The language rules ensure the parent type is already frozen here.  */
-      if (Is_Derived_Type (gnat_entity) && !type_annotate_only)
+      if (kind != E_Subprogram_Type
+         && Is_Derived_Type (gnat_entity)
+         && !type_annotate_only)
        {
          Entity_Id gnat_parent_type = Underlying_Type (Etype (gnat_entity));
          /* For constrained packed array subtypes, the implementation type is