aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJerry DeLisle <jvdelisle@gcc.gnu.org>2010-07-21 04:20:58 +0000
committerJerry DeLisle <jvdelisle@gcc.gnu.org>2010-07-21 04:20:58 +0000
commit6b2b43d844890028febdc4729c8a19ff69315ea6 (patch)
tree52f6eb98453bb33b9f0b5bd7b9a3361823818bde /gcc
parent7d8cafcde8aee5ccd585b17d33d5a8389351a20f (diff)
downloadgcc-6b2b43d844890028febdc4729c8a19ff69315ea6.zip
gcc-6b2b43d844890028febdc4729c8a19ff69315ea6.tar.gz
gcc-6b2b43d844890028febdc4729c8a19ff69315ea6.tar.bz2
re PR fortran/44697 (I/O testsuite failures: \r\n vs \n - gfortran.dg/ftell_3.f90)
2010-07-20 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/44697 * gfortran.dg/ftell_3.f90: Take care of cr-lf record endings. From-SVN: r162362
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/ftell_3.f9030
2 files changed, 27 insertions, 8 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d5e1802..64bb994 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2010-07-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/44697
+ * gfortran.dg/ftell_3.f90: Take care of cr-lf record endings.
+
2010-07-20 Jeffrey Yasskin <jyasskin@google.com>
* lib/scanasm.exp (dg-function-on-line): Test that a function is
diff --git a/gcc/testsuite/gfortran.dg/ftell_3.f90 b/gcc/testsuite/gfortran.dg/ftell_3.f90
index c16afe8..16875d8 100644
--- a/gcc/testsuite/gfortran.dg/ftell_3.f90
+++ b/gcc/testsuite/gfortran.dg/ftell_3.f90
@@ -3,9 +3,10 @@
! Contributed by Janne Blomqvist, Manfred Schwarb
! and Dominique d'Humieres.
program ftell_3
- integer :: i
+ integer :: i, j
+ character(1) :: ch
character(len=99) :: buffer
- open(10, form='formatted', status='scratch', position='rewind')
+ open(10, form='formatted', position='rewind')
write(10, '(a)') '123456'
write(10, '(a)') '789'
write(10, '(a)') 'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'
@@ -13,16 +14,29 @@ program ftell_3
rewind(10)
read(10, '(a)') buffer
call ftell(10, i)
- if(i /= 7) then
- call abort()
+! Expected: On '\n' systems: 7, on \r\n systems: 8
+ if(i /= 7 .and. i /= 8) then
+ call abort
end if
read(10,'(a)') buffer
if (trim(buffer) /= "789") then
call abort()
end if
- call ftell(10,i)
- if (i /= 11) then
- call abort()
- end if
+ call ftell(10,j)
close(10)
+ open(10, access="stream")
+! Expected: On '\n' systems: 11, on \r\n systems: 13
+ if (i == 7) then
+ read(10, pos=7) ch
+ if (ch /= char(10)) call abort
+ if (j /= 11) call abort
+ end if
+ if (i == 8) then
+ read(10, pos=7) ch
+ if (ch /= char(13)) call abort
+ read(10) ch
+ if (ch /= char(10)) call abort
+ if (j /= 13) call abort
+ end if
+ close(10, status="delete")
end program ftell_3