diff options
author | Thomas Koenig <Thomas.Koenig@online.de> | 2005-01-29 15:45:17 +0000 |
---|---|---|
committer | Paul Brook <pbrook@gcc.gnu.org> | 2005-01-29 15:45:17 +0000 |
commit | 24a09741e4e7ed510fc543cdf3136ebc6582db90 (patch) | |
tree | ff80645281787a24f8776463abf1fdf1a5ab8ee1 | |
parent | f240b8960cf33d4832d75855b9d93b3e8a3015f3 (diff) | |
download | gcc-24a09741e4e7ed510fc543cdf3136ebc6582db90.zip gcc-24a09741e4e7ed510fc543cdf3136ebc6582db90.tar.gz gcc-24a09741e4e7ed510fc543cdf3136ebc6582db90.tar.bz2 |
re PR libfortran/19595 ([4.0 only] eor does not work)
2005-01-29 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/19595
* io/transfer.c (data_transfer_init): eor requires advance="NO".
testsuite/
* gfortran.dg/eor_1.f90: New test.
From-SVN: r94410
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/eor_1.f90 | 10 | ||||
-rw-r--r-- | libgfortran/ChangeLog | 5 | ||||
-rw-r--r-- | libgfortran/io/transfer.c | 2 |
4 files changed, 21 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index edd525a..2fc135f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-01-29 Thomas Koenig <Thomas.Koenig@online.de> + + PR libfortran/19595 + * gfortran.dg/eor_1.f90: New test. + 2005-01-29 Steven G. Kargl <kargls@comcast.net> PR fortran/19589 diff --git a/gcc/testsuite/gfortran.dg/eor_1.f90 b/gcc/testsuite/gfortran.dg/eor_1.f90 new file mode 100644 index 0000000..c61a0b7 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/eor_1.f90 @@ -0,0 +1,10 @@ +! { dg do-run } +! PR 19451: The test for advance='NO' with eor used to be reversed. +program main + character*2 c + open(12, status='SCRATCH') + write(12, '(A)') '123', '456' + rewind(12) + read(12, '(A2)', advance='NO', eor=100) c +100 continue +end program main diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index effa767..be7bfa8 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,8 @@ +2005-01-29 Thomas Koenig <Thomas.Koenig@online.de> + + PR libfortran/19595 + * io/transfer.c (data_transfer_init): eor requires advance="NO". + 2005-01-25 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> PR libfortran/19524 diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c index c69d309..a55936f 100644 --- a/libgfortran/io/transfer.c +++ b/libgfortran/io/transfer.c @@ -1041,7 +1041,7 @@ data_transfer_init (int read_flag) if (read_flag) { - if (ioparm.eor != 0 && advance_status == ADVANCE_NO) + if (ioparm.eor != 0 && advance_status != ADVANCE_NO) generate_error (ERROR_MISSING_OPTION, "EOR specification requires an ADVANCE specification of NO"); |