Fix issue with LTO bootstrap
authorEric Botcazou <ebotcazou@gcc.gnu.org>
Tue, 26 May 2020 19:21:08 +0000 (21:21 +0200)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Tue, 26 May 2020 19:23:27 +0000 (21:23 +0200)
gcc/ada/ChangeLog
PR ada/95333
* gcc-interface/decl.c (gnat_to_gnu_param): Never make a variant of
the type.

gcc/ada/gcc-interface/decl.c

index 94ea05de14fb95978e54df5c0de30f66f11f9337..38c73cb4b44429a842bb0a67ce76ab414c3baa3c 100644 (file)
@@ -5408,15 +5408,6 @@ gnat_to_gnu_param (Entity_Id gnat_param, tree gnu_param_type, bool first,
        gnu_param_type = unpadded_type;
     }
 
-  /* If this is a read-only parameter, make a variant of the type that is
-     read-only, except in LTO mode because free_lang_data_in_type would
-     undo it.  ??? However, if this is a self-referential type, the type
-     can be very complex, so skip it for now.  */
-  if (ro_param
-      && !flag_generate_lto
-      && !CONTAINS_PLACEHOLDER_P (TYPE_SIZE (gnu_param_type)))
-    gnu_param_type = change_qualified_type (gnu_param_type, TYPE_QUAL_CONST);
-
   /* For foreign conventions, pass arrays as pointers to the element type.
      First check for unconstrained array and get the underlying array.  */
   if (foreign && TREE_CODE (gnu_param_type) == UNCONSTRAINED_ARRAY_TYPE)