Problem mentioned by A. Markus with a valid interface corresponding to several different FORTRAN signatures for a single C routine.
Unfortunately, gfortran reports an error. I think that this behavior is too strong : a warning would be enough to point out a possible programming mistake. Here this is not a mistake : the C signature really corresponds to these different Fortran signatures ! void xxx(float *y); module test interface xxx subroutine xxx_1( y ) bind( c, name = "xxx" ) use iso_c_binding real(c_float), intent(inout) :: y end subroutine subroutine xxx_2( y ) bind( c, name = "xxx" ) use iso_c_binding real(c_float), intent(inout), dimension(*) :: y end subroutine end interface end module -- Summary: wrong error reporting Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: francois dot jacq at irsn dot fr GCC build triplet: 4.3.0 20080102 GCC host triplet: i386-pc-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35172