aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimplify.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2009-03-09 15:01:29 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2009-03-09 15:01:29 +0100
commit9a9ba8d9b1292607bc97da712976937c4d81909d (patch)
treea109f3aadadda1afd28d8682c9411655f342e777 /gcc/gimplify.c
parent929b7fc3c0afc5d5154ce9e40371a42a0610fd7f (diff)
downloadgcc-9a9ba8d9b1292607bc97da712976937c4d81909d.zip
gcc-9a9ba8d9b1292607bc97da712976937c4d81909d.tar.gz
gcc-9a9ba8d9b1292607bc97da712976937c4d81909d.tar.bz2
re PR tree-optimization/39394 (ICE in copy_tree_body_r)
PR tree-optimization/39394 * gimplify.c (gimplify_type_sizes): Gimplify DECL_SIZE and DECL_SIZE_UNIT of variable length FIELD_DECLs. * gcc.c-torture/compile/pr39394.c: New test. From-SVN: r144727
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r--gcc/gimplify.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 02d4923..b0c6592 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -7141,6 +7141,8 @@ gimplify_type_sizes (tree type, gimple_seq *list_p)
if (TREE_CODE (field) == FIELD_DECL)
{
gimplify_one_sizepos (&DECL_FIELD_OFFSET (field), list_p);
+ gimplify_one_sizepos (&DECL_SIZE (field), list_p);
+ gimplify_one_sizepos (&DECL_SIZE_UNIT (field), list_p);
gimplify_type_sizes (TREE_TYPE (field), list_p);
}
break;