https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99863

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 6da66985ad6..1f417a52702 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -5231,6 +5231,7 @@ gimplify_init_constructor (tree *expr_p, gimple_seq
*pre_p, gimple_seq *post_p,
                                                       TREE_TYPE (ce->value)))
              TREE_STATIC (ctor) = 0;
          }
+       recompute_constructor_flags (ctor);
        if (!is_gimple_reg (TREE_OPERAND (*expr_p, 0)))
          TREE_OPERAND (*expr_p, 1) = get_formal_tmp_var (ctor, pre_p);
       }

simplifies the IL (vector lowering was supposed to simplify the element
extraction but GENERIC match.pd folding is confused about TREE_SIDE_EFFECTS
on the vector CTOR).  It still nicely triggers the bug though.

Reply via email to