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

--- Comment #8 from Paul Thomas <pault at gcc dot gnu.org> ---
A temporary fix:

Index: ../trunk/gcc/fortran/trans-io.c
===================================================================
*** ../trunk/gcc/fortran/trans-io.c     (revision 257261)
--- ../trunk/gcc/fortran/trans-io.c     (working copy)
*************** gfc_trans_transfer (gfc_code * code)
*** 2590,2596 ****

        if (expr->ts.type != BT_CLASS
         && expr->expr_type == EXPR_VARIABLE
!        && gfc_expr_attr (expr).pointer)
        goto scalarize;


--- 2590,2596 ----

        if (expr->ts.type != BT_CLASS
         && expr->expr_type == EXPR_VARIABLE
!        && (gfc_expr_attr (expr).pointer || gfc_expr_attr (expr).allocatable))
        goto scalarize;

fixes this and pr84141.

transfer_array is receiving a dtype with all the fields set to zero. I will get
back to this tonight or tomorrow morning. I have to go to the lab now.

Paul

Reply via email to