aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2019-06-29 07:37:31 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2019-06-29 07:37:31 +0000
commit4ed9ab2de7fd409e385524ab9ca2e62a3097691e (patch)
tree7a6af0139a305970761e60c267d280f83932e757
parentd9888378d38544bc1261d533d250096144931fd9 (diff)
downloadgcc-4ed9ab2de7fd409e385524ab9ca2e62a3097691e.zip
gcc-4ed9ab2de7fd409e385524ab9ca2e62a3097691e.tar.gz
gcc-4ed9ab2de7fd409e385524ab9ca2e62a3097691e.tar.bz2
trans.c (mark_visited_r): Set TYPE_SIZES_GIMPLIFIED on the main variant of a type, if any.
* gcc-interface/trans.c (mark_visited_r): Set TYPE_SIZES_GIMPLIFIED on the main variant of a type, if any. From-SVN: r272815
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/gcc-interface/trans.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 4060019..3abcabb 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,5 +1,10 @@
2019-06-29 Eric Botcazou <ebotcazou@adacore.com>
+ * gcc-interface/trans.c (mark_visited_r): Set TYPE_SIZES_GIMPLIFIED on
+ the main variant of a type, if any.
+
+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.
diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c
index e2d2dda..32dd132 100644
--- a/gcc/ada/gcc-interface/trans.c
+++ b/gcc/ada/gcc-interface/trans.c
@@ -9042,8 +9042,9 @@ mark_visited_r (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED)
else if (!TYPE_IS_DUMMY_P (t))
TREE_VISITED (t) = 1;
+ /* The test in gimplify_type_sizes is on the main variant. */
if (TYPE_P (t))
- TYPE_SIZES_GIMPLIFIED (t) = 1;
+ TYPE_SIZES_GIMPLIFIED (TYPE_MAIN_VARIANT (t)) = 1;
return NULL_TREE;
}