http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52968
Bug #: 52968 Summary: Call to type-bound procedure produces wrongly rejected Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: reube...@gmail.com The following code illustrate the problem. Compiled with gcc 4.8.0 20120408, I got this error message: $> gfortran -c solvermod.f90 solvermod.f90:21.31: call S % Equation % Evaluate () 1 Error: 'evaluate' at (1) is not a member of the 'equationtemplate' structure The error dissapear when EquationTemplate is defined before SolverType in the code below. ---------------------- module SolverModule type :: SolverType class ( EquationTemplate ), pointer :: Equation end type type :: EquationTemplate contains procedure :: Evaluate end type contains subroutine Evaluate ( ET ) class ( EquationTemplate ) :: ET end subroutine subroutine Solve type ( SolverType ) :: S call S % Equation % Evaluate () end subroutine end module --------------------