This trivial patch removes the problem. As far as I can tell, looking at -fdump-tree-original, the results are correct.

Regression tested on x86-64.  I will add a test case from the PR.

I plan to commit to trunk and then backport after about a week if no problems show up.

Regards,

Jerry

2016-07-07  Jerry DeLisle  <jvdeli...@gcc.gnu.org>

        PR fortran/71764
        * trans-expr.c (gfc_trans_structure_assign): Remove assert.


diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
index b5731aa8..4321850b 100644
--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -7358,7 +7358,6 @@ gfc_trans_structure_assign (tree dest, gfc_expr * expr, bool init)
     {
       gfc_se se, lse;

-      gcc_assert (cm->backend_decl == NULL);
       gfc_init_se (&se, NULL);
       gfc_init_se (&lse, NULL);
gfc_conv_expr (&se, gfc_constructor_first (expr->value.constructor)->expr);

Reply via email to