]> gcc.gnu.org Git - gcc.git/commitdiff
(c_build_type_variant): Don't futz with main type variant of array since C...
authorRichard Kenner <kenner@gcc.gnu.org>
Mon, 9 Jun 1997 22:37:37 +0000 (18:37 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Mon, 9 Jun 1997 22:37:37 +0000 (18:37 -0400)
(c_build_type_variant): Don't futz with main type variant of array
since C Standard requires main type variant of array-of-const also be
array-of-const.

From-SVN: r14195

gcc/c-common.c

index 8b6d9f3133a1677b2864868c756349f8fab417d2..c282f16663e13e68c20ec9ec64135f259669ae9d 100644 (file)
@@ -2514,27 +2514,8 @@ c_build_type_variant (type, constp, volatilep)
      int constp, volatilep;
 {
   if (TREE_CODE (type) == ARRAY_TYPE)
-    {
-      tree real_main_variant = TYPE_MAIN_VARIANT (type);
-
-      push_obstacks (TYPE_OBSTACK (real_main_variant),
-                    TYPE_OBSTACK (real_main_variant));
-      type = build_array_type (c_build_type_variant (TREE_TYPE (type),
-                                                    constp, volatilep),
-                              TYPE_DOMAIN (type));
-
-      /* TYPE must be on same obstack as REAL_MAIN_VARIANT.  If not,
-        make a copy.  (TYPE might have come from the hash table and
-        REAL_MAIN_VARIANT might be in some function's obstack.)  */
-
-      if (TYPE_OBSTACK (type) != TYPE_OBSTACK (real_main_variant))
-       {
-         type = copy_node (type);
-         TYPE_POINTER_TO (type) = TYPE_REFERENCE_TO (type) = 0;
-       }
-
-      TYPE_MAIN_VARIANT (type) = real_main_variant;
-      pop_obstacks ();
-    }
+    return build_array_type (c_build_type_variant (TREE_TYPE (type),
+                                                  constp, volatilep),
+                            TYPE_DOMAIN (type));
   return build_type_variant (type, constp, volatilep);
 }
This page took 0.069484 seconds and 5 git commands to generate.