1! { dg-do run } 2! 3! Test that pr81773/fortran is fixed. 4 5program get_to_indexed_array 6 7 integer, parameter :: ndim = 5 8 integer :: i 9 integer :: vec(1:ndim) = 0 10 integer :: indx(1:2) = [3, 2] 11 integer :: mat(1:ndim, 1:ndim) = 0 12 integer :: res(1:ndim)[*]=[ (i, i=1, ndim) ] 13 14 ! No sync needed, because this test always is running on single image 15 vec([ndim , 1]) = res(1:2)[1] 16 if (vec(1) /= res(2) .or. vec(ndim) /= res(1)) then 17 print *,"vec: ", vec, " on image: ", this_image() 18 stop 1 19 end if 20 21 mat(2:3,[indx(:)]) = reshape(res(1:4)[1], [2, 2]) 22 if (any(mat(2:3, 3:2:-1) /= reshape(res(1:4), [2,2]))) then 23 print *, "mat: ", mat, " on image: ", this_image() 24 stop 2 25 end if 26end 27 28! vim:ts=2:sts=2:sw=2: 29