bug in 13.7 allocatable class array

I believe the code below is valid and GNU, Intel and NAG seem to agree.

module pg_test

    type point
        real(kind=8)    ::  coo(3)  =   [0.0d0,0.0d0,0.0d0]
    end type point
    type, extends(point) :: waypoint
	integer	 :: cnt
    end type waypoint


    subroutine filament_init(   points_in)
        implicit none
        class(point),  intent(in)      ::  points_in(:)   
        class(point), allocatable      ::  points(:)
        print *, points(1)%coo(1)
        select type (points)
            type is (waypoint)
		    print *, 'type is waypoint'
            class default
		    print *, points(1)%coo(1)
		    print *, points_in(1)%coo(1)
        end select  
    end subroutine filament_init
end module pg_test

program test
 print *, 'hello'
end program test

But pgfortran 13.7 throws the following severe at compile time:

PGF90-S-0076-Subscripts specified for non-array variable points (test.f90: 23)

Version information:

$ pgfortran --version

pgfortran 13.7-0 64-bit target on x86-64 Linux -tp sandybridge

Let me know if you need more information to reproduce

Hi rohou,

I was able to reproduce the error with 13.7 so added a problem report, TPR#19541, and sent it off to engineering. The good news is that the code compiled and ran correctly with our internal develpment compiler, meaning that our engineer had already found and fixed the problem. Hopefully this means that the fix will be available in the 13.9 release.


This problem has been fixed as of the 13.9 release.
Thanks for your submission.