http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47136
Summary: [OOP] possible name resolution problems between MODULE and INTERFACE? Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: dfra...@gcc.gnu.org CC: ja...@gcc.gnu.org In the snippet below, I believe that "ABSTRACT INTERFACE s" of "MODULE a" and the "MODULE s" interfere with each other in an unholy way. If either is renamed, the error goes away. As I can not see why duplicate names like these should be invalid, I'd assume the code as-is to be valid?! MODULE a ABSTRACT INTERFACE SUBROUTINE s() END SUBROUTINE END INTERFACE TYPE, ABSTRACT :: t CONTAINS PROCEDURE(s), DEFERRED, NOPASS :: pp END TYPE END MODULE MODULE s USE a END MODULE $ gfortran-svn -c iface.f90 iface.f90:17.7: USE a 1 Error: 's' must be a module procedure or an external procedure with an explicit interface at (1) $ gfortran-svn -v gcc version 4.6.0 20101230 (experimental) (GCC) Same for $ gfortran-4.5 -v gcc version 4.5.3 20101230 (prerelease) (GCC)