[Bug fortran/52832] [F03] ASSOCIATE construct with proc-pointer selector is rejected

janus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Jan 24 13:51:00 GMT 2013


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

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2013-01-24
     Ever Confirmed|0                           |1

--- Comment #2 from janus at gcc dot gnu.org 2013-01-24 13:50:34 UTC ---
Here is a patch to accept the test case in comment 0:

Index: gcc/fortran/match.c
===================================================================
--- gcc/fortran/match.c    (revision 195411)
+++ gcc/fortran/match.c    (working copy)
@@ -1830,12 +1830,14 @@ gfc_match_associate (void)
       gfc_association_list* a;

       /* Match the next association.  */
+      gfc_matching_procptr_assignment = 1;
       if (gfc_match (" %n => %e", newAssoc->name, &newAssoc->target)
         != MATCH_YES)
     {
       gfc_error ("Expected association at %C");
       goto assocListError;
     }
+      gfc_matching_procptr_assignment = 0;
       newAssoc->where = gfc_current_locus;

       /* Check that the current name is not yet in the list.  */


I feels a bit like a hack and I'm not sure if it might break something (will
regtest now).

Also, I haven't checked yet if anything more is needed for a full runtime test,
where the associate symbol is actually used in some way.



More information about the Gcc-bugs mailing list