------- Comment #4 from pault at gcc dot gnu dot org  2006-12-20 21:39 -------
This is regtesting right now:

Index: gcc/fortran/trans-expr.c
===================================================================
*** gcc/fortran/trans-expr.c    (revision 120083)
--- gcc/fortran/trans-expr.c    (working copy)
*************** gfc_conv_function_call (gfc_se * se, gfc
*** 2068,2076 ****
                if (fsym && fsym->attr.allocatable
                    && fsym->attr.intent == INTENT_OUT)
                  {
!                 tmp = e->symtree->n.sym->backend_decl;
!                 if (e->symtree->n.sym->attr.dummy)
!                     tmp = build_fold_indirect_ref (tmp);
                    tmp = gfc_trans_dealloc_allocated (tmp);
                    gfc_add_expr_to_block (&se->pre, tmp);
                  }
--- 2068,2074 ----
                if (fsym && fsym->attr.allocatable
                    && fsym->attr.intent == INTENT_OUT)
                  {
!                   tmp = build_fold_indirect_ref (parmse.expr);
                    tmp = gfc_trans_dealloc_allocated (tmp);
                    gfc_add_expr_to_block (&se->pre, tmp);
                  }

Will submit in the morning.

Ciao

Paul


-- 

pault at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
                   |dot org                     |
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2006-12-13 17:07:32         |2006-12-20 21:39:12
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30202

Reply via email to