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



             Bug #: 55901

           Summary: [OOP] type is (character(len=*)) misinterpreted as

                    array

    Classification: Unclassified

           Product: gcc

           Version: 4.8.0

            Status: UNCONFIRMED

          Severity: normal

          Priority: P3

         Component: fortran

        AssignedTo: unassig...@gcc.gnu.org

        ReportedBy: anl...@gmx.de





Hi,



this small example is IMO wrongly rejected:



module gfcbug123

  implicit none

  type myobj

     class(*), allocatable :: x

   contains

     procedure :: print

  end type myobj

contains

  subroutine print(this)

    class(myobj) :: this

    select type (x => this% x)

    type is (character(len=*))

       print *, "String: ", x(1:len(x))

    end select

  end subroutine print

end module gfcbug123



% gfc-trunk gfcbug123.f90 -c

gfcbug123.f90:12.30:



    type is (character(len=*))

                              1

Error: Associate-name '__tmp_CHARACTER_0_1' at (1) is used as array

Reply via email to