The following valid program is rejected. The problem is that gfortran assigns
the interface of the INTRINSIC function "cos" to "f" and not the one of the
abstract interface. If one uses "interface" instead of "abstract interface" it
works.

abstract interface
  function dim()
    integer :: dim
  end function dim
end interface
procedure(dim) :: f
print *, f()
end


-- 
           Summary: Wrong interface use for PROCEDURE(<abstr.interface_name)
           Product: gcc
           Version: 4.4.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=36459

Reply via email to