diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2006-03-31 05:15:42 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2006-03-31 05:15:42 +0000 |
commit | 9ef47dec918a7b32927f240581d9418981050170 (patch) | |
tree | ed41fa0939990e7914d7717a3f472e837c606e62 /gcc | |
parent | d57d34243215318c25a0139d971b15c9b9a1c099 (diff) | |
download | gcc-9ef47dec918a7b32927f240581d9418981050170.zip gcc-9ef47dec918a7b32927f240581d9418981050170.tar.gz gcc-9ef47dec918a7b32927f240581d9418981050170.tar.bz2 |
re PR libfortran/26890 (SIZE parameter interacts with same variable in IO list character length specification.)
2006-03-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26890
* gfortran.dg/read_size_noadvance.f90: New test.
From-SVN: r112571
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/read_size_noadvance.f90 | 23 |
2 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 018e11c..79fb94c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-03-30 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libgfortran/26890 + * gfortran.dg/read_size_noadvance.f90: New test. + 2006-03-30 Thomas Koenig <Thomas.Koenig@online.de> PR fortran/25031 diff --git a/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 new file mode 100644 index 0000000..819a28d --- /dev/null +++ b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 @@ -0,0 +1,23 @@ +! { dg-do run } +! PR26890 Test for use of SIZE variable in IO list. +! Test case from Paul Thomas. +! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> + + character(80) :: buffer, line + integer :: nchars + line = "The quick brown fox jumps over the lazy dog." + open (10) + write (10, '(a)') trim(line) + rewind (10) + read (10, '(a)', advance = 'no', size = nchars, eor = 998) buffer + call abort() +998 if (nchars.ne.44) call abort() + rewind (10) + buffer = "how about some random text here just to be sure on this one." + nchars = 80 + read (10, '(a)', advance = 'no', size = nchars, eor = 999) buffer(:nchars) +999 if (nchars.ne.44) call abort() + if (buffer.ne.line) call abort() + close (10, status="delete") +end + |