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

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
                 CC|                            |janus at gcc dot gnu.org
         AssignedTo|unassigned at gcc dot       |janus at gcc dot gnu.org
                   |gnu.org                     |

--- Comment #5 from janus at gcc dot gnu.org 2010-10-02 08:06:53 UTC ---
The following (pretty obvious) patch fixes it:

Index: gcc/fortran/resolve.c
===================================================================
--- gcc/fortran/resolve.c    (revision 164899)
+++ gcc/fortran/resolve.c    (working copy)
@@ -297,11 +297,9 @@ resolve_formal_arglist (gfc_symbol *proc)
       continue;
     }

-      if (sym->ts.type == BT_UNKNOWN)
-    {
-      if (!sym->attr.function || sym->result == sym)
-        gfc_set_default_type (sym, 1, sym->ns);
-    }
+      if (sym->ts.type == BT_UNKNOWN && !proc->attr.intrinsic
+      && (!sym->attr.function || sym->result == sym))
+    gfc_set_default_type (sym, 1, sym->ns);

       gfc_resolve_array_spec (sym->as, 0);

Reply via email to