------- Comment #4 from burnus at gcc dot gnu dot org 2008-09-09 18:44 ------- Paul, sounds like a bug for you.
* * * The problem is that gfortran calls the use-associated (generic or specific) procedure instead of the host-associated procedure. (The procedure is use-associated in the specification part of a module). If the procedure is USEd in the subroutine or in a PROGRAM, all compilers print an error. * * * I wonder whether the following is valid: module m2 use, only: s1 All compilers accept this. However, how to read then the following, assuming that s1 is also a host-associated procedure: MODULE M2 USE M1, only: s1 procedure(),pointer :: procptr => s1 (Note: "procptr => s1" is Fortran 2008 syntax; F2003 only allows "=> null()".) Actually, I would reject a program if "only:" is specified [or for "use m2, s1=>s2"], but I have not checked the standard, yet. -- burnus at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at gcc dot gnu dot | |org Summary|incorrect error reported |Host-associated proc not | |found if same-name generic | |is use-associated http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37445