As polymorphic entities are not implemented in gfortran, the handling of
passed-object dummy arguments allows (or requires) them to be declared
non-polymorphic (TYPE(t)) while they should in fact be CLASS(t):

MODULE m

  TYPE :: t
  CONTAINS
    PROCEDURE :: proc
  END TYPE t

CONTAINS

  SUBROUTINE proc (me)
    TYPE(t) :: me ! should be CLASS(t) :: me
  END SUBROUTINE proc

END MODULE m


-- 
           Summary: Passed-object dummy argument should be polymorphic
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: minor
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: domob at gcc dot gnu dot org


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

Reply via email to