decl.c (set_nonaliased_component_on_array_type): Add missing guard for the presence...
authorEric Botcazou <ebotcazou@adacore.com>
Sat, 29 Jun 2019 07:30:22 +0000 (07:30 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Sat, 29 Jun 2019 07:30:22 +0000 (07:30 +0000)
* gcc-interface/decl.c (set_nonaliased_component_on_array_type): Add
missing guard for the presence of TYPE_CANONICAL.
(set_reverse_storage_order_on_array_type): Likewise.

From-SVN: r272811

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

index bf00e6baea7e8c2f25462c5dccaadf72c9c14018..4060019a5354d846a861e38958e7b59fc63e4819 100644 (file)
@@ -1,3 +1,9 @@
+2019-06-29  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc-interface/decl.c (set_nonaliased_component_on_array_type): Add
+       missing guard for the presence of TYPE_CANONICAL.
+       (set_reverse_storage_order_on_array_type): Likewise.
+
 2019-06-29  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gcc-interface/gigi.h (make_packable_type): Remove default value.
index 4d338146fe4d99dc0000ed7c158043698b298af6..e38986bfcdc324b32341eb378ad145abcea92492 100644 (file)
@@ -6150,7 +6150,8 @@ static void
 set_nonaliased_component_on_array_type (tree type)
 {
   TYPE_NONALIASED_COMPONENT (type) = 1;
-  TYPE_NONALIASED_COMPONENT (TYPE_CANONICAL (type)) = 1;
+  if (TYPE_CANONICAL (type))
+    TYPE_NONALIASED_COMPONENT (TYPE_CANONICAL (type)) = 1;
 }
 
 /* Set TYPE_REVERSE_STORAGE_ORDER on an array type built by means of
@@ -6160,7 +6161,8 @@ static void
 set_reverse_storage_order_on_array_type (tree type)
 {
   TYPE_REVERSE_STORAGE_ORDER (type) = 1;
-  TYPE_REVERSE_STORAGE_ORDER (TYPE_CANONICAL (type)) = 1;
+  if (TYPE_CANONICAL (type))
+    TYPE_REVERSE_STORAGE_ORDER (TYPE_CANONICAL (type)) = 1;
 }
 
 /* Return true if DISCR1 and DISCR2 represent the same discriminant.  */