From: Richard Kenner Date: Mon, 9 Jun 1997 22:37:37 +0000 (-0400) Subject: (c_build_type_variant): Don't futz with main type variant of array since C... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3ab1999b990d2da268828f659e47d8a5fb19afa3;p=gcc.git (c_build_type_variant): Don't futz with main type variant of array since C... (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 --- diff --git a/gcc/c-common.c b/gcc/c-common.c index 8b6d9f3133a..c282f16663e 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -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); }