This fixes an oversight in the support for parallel types: they are silently 
dropped when a type goes through make_packable_type.

Fixed thusly, tested on i586-suse-linux, applied on the mainline.


2011-04-22  Eric Botcazou  <ebotca...@adacore.com>

        * gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE
        onto the new type.


-- 
Eric Botcazou
Index: gcc-interface/decl.c
===================================================================
--- gcc-interface/decl.c	(revision 172862)
+++ gcc-interface/decl.c	(working copy)
@@ -6334,6 +6334,8 @@ make_packable_type (tree type, bool in_r
 
   finish_record_type (new_type, nreverse (field_list), 2, false);
   relate_alias_sets (new_type, type, ALIAS_SET_COPY);
+  SET_DECL_PARALLEL_TYPE (TYPE_STUB_DECL (new_type),
+			  DECL_PARALLEL_TYPE (TYPE_STUB_DECL (type)));
 
   /* If this is a padding record, we never want to make the size smaller
      than what was specified.  For QUAL_UNION_TYPE, also copy the size.  */

Reply via email to