decl.c (gnat_to_gnu_entity): Do not clobber gnat_entity_name with temporary names...
authorPierre-Marie de Rodat <derodat@adacore.com>
Sat, 11 Jun 2016 11:23:54 +0000 (11:23 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Sat, 11 Jun 2016 11:23:54 +0000 (11:23 +0000)
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not clobber
gnat_entity_name with temporary names for XUP and XUT types.

From-SVN: r237324

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

index 7576463b4533564a2349bbac3263664ba80c6bbe..ec42a8b9496a0ec0afbfabad851adbfe3ded0f2d 100644 (file)
@@ -1,3 +1,8 @@
+2016-06-11  Pierre-Marie de Rodat  <derodat@adacore.com>
+
+       * gcc-interface/decl.c (gnat_to_gnu_entity): Do not clobber
+       gnat_entity_name with temporary names for XUP and XUT types.
+
 2016-06-10  Martin Sebor  <msebor@redhat.com>
 
        PR c/71392
index 45878a7c6357debf8a9503506c563b4386d6cefb..8d4ff3fd76c7e3944cbe5b171bf71dc837859714 100644 (file)
@@ -2335,10 +2335,12 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition)
          gnat_name = Packed_Array_Impl_Type (gnat_entity);
        else
          gnat_name = gnat_entity;
-       if (gnat_encodings != DWARF_GNAT_ENCODINGS_MINIMAL)
-         gnu_entity_name = create_concat_name (gnat_name, "XUP");
-       create_type_decl (gnu_entity_name, gnu_fat_type, artificial_p,
-                         debug_info_p, gnat_entity);
+       tree xup_name
+         = (gnat_encodings == DWARF_GNAT_ENCODINGS_MINIMAL)
+           ? get_entity_name (gnat_name)
+           : create_concat_name (gnat_name, "XUP");
+       create_type_decl (xup_name, gnu_fat_type, artificial_p, debug_info_p,
+                         gnat_entity);
 
        /* Create the type to be designated by thin pointers: a record type for
           the array and its template.  We used to shift the fields to have the
@@ -2348,11 +2350,11 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition)
           Note that GDB can handle standard DWARF information for them, so we
           don't have to name them as a GNAT encoding, except if specifically
           asked to.  */
-       if (gnat_encodings != DWARF_GNAT_ENCODINGS_MINIMAL)
-         gnu_entity_name = create_concat_name (gnat_name, "XUT");
-       else
-         gnu_entity_name = get_entity_name (gnat_name);
-       tem = build_unc_object_type (gnu_template_type, tem, gnu_entity_name,
+       tree xut_name
+         = (gnat_encodings == DWARF_GNAT_ENCODINGS_MINIMAL)
+           ? get_entity_name (gnat_name)
+           : create_concat_name (gnat_name, "XUT");
+       tem = build_unc_object_type (gnu_template_type, tem, xut_name,
                                     debug_info_p);
 
        SET_TYPE_UNCONSTRAINED_ARRAY (tem, gnu_type);