1!{ dg-do run } 2! Tests namelist io for an explicit shape array with negative bounds 3! provided by Paul Thomas - pault@gcc.gnu.org 4 5program namelist_20 6 integer, dimension (-4:-2) :: x 7 integer :: i, ier 8 namelist /a/ x 9 10 open (10, status = "scratch") 11 write (10, '(A)') "&a x(-5)=0 /" !-ve index below lbound 12 write (10, '(A)') "&a x(-1)=0 /" !-ve index above ubound 13 write (10, '(A)') "&a x(1:2)=0 /" !+ve indices 14 write (10, '(A)') "&a x(-4:-2)= -4,-3,-2 /" !correct 15 write (10, '(A)') " " 16 rewind (10) 17 18 ier=0 19 read(10, a, iostat=ier) 20 if (ier == 0) call abort () 21 ier=0 22 read(10, a, iostat=ier) 23 if (ier == 0) call abort () 24 ier=0 25 read(10, a, iostat=ier) 26 if (ier == 0) call abort () 27 28 ier=0 29 read(10, a, iostat=ier) 30 if (ier /= 0) call abort () 31 do i = -4,-2 32 if (x(i) /= i) call abort () 33 end do 34 35end program namelist_20 36