blob: 3b0c279441f4fd63c8857b86115fff11a114d276 [file] [log] [blame]
! { dg-do compile }
! Tests the fix for PR33566, in which the first variable array ref
! to v1 would cause an incompatible ranks error and the second an ICE.
!
! Contributed by Mikael Morin <mikael.morin@tele2.fr>
!
program test_vec
implicit none
integer :: i
real :: x
type vec3
real, dimension(3) :: coords
end type vec3
type(vec3),parameter :: v1 = vec3((/ 1.0, 2.0, 3.0 /))
type(vec3) :: v2
v2 = vec3((/ 1.0, 2.0, 3.0 /))
x = v1%coords(1)
do i=1,3
x = v1%coords(i) ! used to fail
x = v2%coords(i)
end do
i = 2
v2 = vec3 (v1%coords ((/i+1, i, i-1/))) ! also broken
end program test_vec