(Based on Andrea Ferretti, http://gcc.gnu.org/ml/fortran/2007-01/msg00368.html)

The following valid program is rejected with the following message:

  USE global_module
                  1
Error: Name 'hello' at (1) is an ambiguous reference to 'hello' from module
'interfaces'
  CALL hello(10)
               1
Error: There is no specific subroutine for the generic 'hello' at (1)

 * * *

SUBROUTINE hello_x(dum)
   IMPLICIT NONE
   INTEGER :: dum
   WRITE(0,*) "Hello world: ", dum
END SUBROUTINE hello_x

MODULE interfaces
IMPLICIT NONE
INTERFACE hello
   SUBROUTINE hello_x(dum)
      IMPLICIT NONE
      INTEGER :: dum
   END SUBROUTINE hello_x
END INTERFACE
END MODULE interfaces

MODULE global_module
  USE interfaces
END MODULE global_module

PROGRAM main
  USE global_module
  IMPLICIT NONE
  CALL hello(10)
END PROGRAM main


-- 
           Summary: [Regression 4.2, 4.3] Via other module imported generic
                    interface rejected
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: burnus at gcc dot gnu dot org


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

Reply via email to