------- Comment #2 from jvdelisle at gcc dot gnu dot org  2007-10-21 00:15 
-------
This patch:

Index: interface.c
===================================================================
--- interface.c (revision 129496)
+++ interface.c (working copy)
@@ -1679,8 +1679,9 @@ compare_actual_formal (gfc_actual_arglis
            return 0;

        }
-      else if (!compare_parameter (f->sym, a->expr,
-                                  ranks_must_agree || rank_check,
is_elemental))
+      else if (a->expr->ts.type != BT_PROCEDURE 
+              && !compare_parameter (f->sym, a->expr, ranks_must_agree
+                                     || rank_check, is_elemental))
        {
          if (where)
            gfc_error ("Type/rank mismatch in argument '%s' at %L",

Allows the test case in comment #1 to compile and run correctly with no
regressions in the test suite.


-- 

jvdelisle at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |jvdelisle at gcc dot gnu dot
                   |dot org                     |org
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-10-21 00:15:45
               date|                            |


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

Reply via email to