! { dg-do run } ! { dg-options "-std=legacy" } ! ! PR32235 incorrectly position text file after backspace ! Test case from PR, prepared by Jerry DeLisle program main character*10 a ncards=2 input=10 write(10,"(a)") "One" write(10,"(a)") "Two" write(10,"(a)") "Three" rewind(10) read(input,1000)a read(input,1000)a call inlist(ncards) read(input,1000)a if (a.ne."Three") STOP 1 close(10,status="delete") stop 1000 format(a10) 2000 format('read =',a10) end subroutine inlist(ncards) character*4 data(20) input=10 c if (ncards.eq.0) go to 20 do 15 i=1,ncards backspace input 15 continue c 20 continue kard = 0 30 read(input,1000,end=60) data 40 kard=kard + 1 50 continue if ((kard .eq. 1) .and. (DATA(1) .ne. "One")) STOP 2 if ((kard .eq. 2) .and. (DATA(1) .ne. "Two")) STOP 3 if ((kard .eq. 3) .and. (DATA(1) .ne. "Thre")) STOP 4 go to 30 60 continue kard=kard - ncards + 1 do 70 i=1,kard backspace input 70 continue c return c 1000 format (20a4) 2020 format (8x,i15,8x,20a4) c end