summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/internal_readwrite_1.f90
blob: 405f581546026d9e3a57ea0c5498b1f434d1c36f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
! { dg-do run }
! PR 34565 - internal writes with negative strides
! didn't work.
program main
  implicit none
  integer :: i
  integer :: lo, up, st
  character(len=2) :: c (5)
  integer, dimension(5) :: n
  c = (/ 'a', 'b', 'c', 'd', 'e' /)
  write (unit=c(5:1:-2),fmt="(A)") '5','3', '1'
  write (unit=c(2:4:2),fmt="(A)") '2', '4'
  read  (c(5:1:-1),fmt="(I2)") (n(i), i=5,1,-1)
  if (any(n /= (/ (i,i=1,5) /))) call abort
end program main