diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/list_read_11.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/list_read_11.f90 | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/list_read_11.f90 b/gcc/testsuite/gfortran.dg/list_read_11.f90 new file mode 100644 index 00000000000..10344a1959e --- /dev/null +++ b/gcc/testsuite/gfortran.dg/list_read_11.f90 @@ -0,0 +1,38 @@ +! { dg-do run } +! { dg-options "-fbackslash" } +! +! PR fortran/57633 +! +program teststuff + implicit none + integer::a + character(len=10)::s1,s2 + + open(11,file="testcase.txt",form='unformatted',access='stream',status='new') + write(11) 'line1,1,\r\nline2' + close(11) + + open(11,file="testcase.txt",form='formatted') + s1 = repeat('x', len(s1)) + a = 99 + read(11,*)s1,a + if (s1 /= "line1" .or. a /= 1) call abort() + + s1 = repeat('x', len(s1)) + read(11,"(a)")s1 + close(11,status="delete") + if (s1 /= "line2") call abort() + + + open(11,file="testcase.txt",form='unformatted',access='stream',status='new') + write(11) 'word1\rword2,\n' + close(11) + + open(11,file="testcase.txt",form='formatted') + s1 = repeat('x', len(s1)) + s2 = repeat('x', len(s1)) + read(11,*)s1,s2 + close(11,status="delete") + if (s1 /= "word1") call abort() + if (s2 /= "word2") call abort() +end program teststuff |