This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, libgfortran] PR25949 Excessive memory usage due to buffering.


Jerry,

This passed all NIST tests except fm311.f which is an unrelated compile error.


I have just tested the fix for this - I will commit it tonight under the "obvious" rule. Please note that this fix is mixed up with the patch for assumed character length functions but it is the
! && sym->attr.proc != PROC_ST_FUNCTION) below.


Thanks for reporting it.

Paul

Index: gcc/fortran/resolve.c
===================================================================
*** gcc/fortran/resolve.c       (revision 110174)
--- gcc/fortran/resolve.c       (working copy)
--- 1183,1202 ----
 resolve_function (gfc_expr * expr)
 {
   gfc_actual_arglist *arg;
+   gfc_symbol * sym;
   const char *name;
   try t;
   int temp;

+ sym = NULL;
+ if (expr->symtree)
+ sym = expr->symtree->n.sym;
+
/* If the procedure is not internal or module, it must be external and
should be checked for usage. */
! if (sym && !sym->attr.dummy && !sym->attr.contained && !sym->attr.use_assoc
! && sym->attr.proc != PROC_ST_FUNCTION)
! resolve_global_procedure (sym, &expr->where, 0);


   /* Switch off assumed size checking and do this again for certain kinds
      of procedure, once the procedure itself is resolved.  */



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]