rt_gccstream/gcc/testsuite/gfortran.dg/assign_9.f90

15 lines
432 B
Fortran

! { dg-do run }
! Tests the fix for PR33749, in which one of the two assignments
! below would not produce a temporary for the index expression.
!
! Contributed by Dick Hendrickson on comp.lang.fortran,
! " Most elegant syntax for inverting a permutation?" 20071006
!
integer(4) :: p(4) = (/2,4,1,3/)
integer(8) :: q(4) = (/2,4,1,3/)
p(p) = (/(i, i = 1, 4)/)
q(q) = (/(i, i = 1, 4)/)
if (any(p .ne. q)) call abort ()
end