This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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, Fortran] PR 36426


>> Testing for regressions right now.
> OK - when the testing suceeds.

Ok, thanks for the review and approval. Actually there was one small
regression, which is fixed by this updated version (as is Domique's
comment #7 in the PR). Will commit soon ..

Cheers,
Janus
Index: gcc/fortran/expr.c
===================================================================
--- gcc/fortran/expr.c	(revision 141520)
+++ gcc/fortran/expr.c	(working copy)
@@ -3511,12 +3511,11 @@ static bool
 replace_symbol (gfc_expr *expr, gfc_symbol *sym, int *i ATTRIBUTE_UNUSED)
 {
   if ((expr->expr_type == EXPR_VARIABLE || expr->expr_type == EXPR_FUNCTION)
-      && expr->symtree->n.sym->ns != sym->formal_ns
-      && expr->symtree->n.sym->attr.dummy)
+      && expr->symtree->n.sym->ns == sym->ts.interface->formal_ns)
     {
       gfc_symtree *stree;
       gfc_get_sym_tree (expr->symtree->name, sym->formal_ns, &stree);
-      stree->n.sym->attr.referenced = expr->symtree->n.sym->attr.referenced;
+      stree->n.sym->attr = expr->symtree->n.sym->attr;
       expr->symtree = stree;
     }
   return false;
Index: gcc/fortran/resolve.c
===================================================================
--- gcc/fortran/resolve.c	(revision 141520)
+++ gcc/fortran/resolve.c	(working copy)
@@ -8939,6 +8939,12 @@ resolve_symbol (gfc_symbol *sym)
 	      sym->ts.cl->resolved = ifc->ts.cl->resolved;
 	      sym->ts.cl->length = gfc_copy_expr (ifc->ts.cl->length);
 	      gfc_expr_replace_symbols (sym->ts.cl->length, sym);
+	      /* Add charlen to namespace.  */
+	      if (sym->formal_ns)
+		{
+		  sym->ts.cl->next = sym->formal_ns->cl_list;
+		  sym->formal_ns->cl_list = sym->ts.cl;
+		}
 	    }
 	}
       else if (sym->ts.interface->name[0] != '\0')

Attachment: proc_decl_19.f90
Description: Binary data


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