diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2010-03-18 02:38:17 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2010-03-18 02:38:17 +0000 |
commit | 59011a60c01403fec67e08bc6b94bb44da920482 (patch) | |
tree | 7c1839131a6afe8a4689fb882f4a40ba696bb7b8 /gcc/fortran | |
parent | 5408fbe892f610330f2d06f1cbdae515c1656443 (diff) | |
download | gcc-59011a60c01403fec67e08bc6b94bb44da920482.zip gcc-59011a60c01403fec67e08bc6b94bb44da920482.tar.gz gcc-59011a60c01403fec67e08bc6b94bb44da920482.tar.bz2 |
re PR fortran/43265 (No EOF condition if reading with '(x)' from an empty file)
2010-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/43265
* io/io.h: Delete prototype for read_sf, making it static.
* io/read.c (read_x): Modify to call hit_eof if PAD="no".
* io/transfer.c (read_sf_internal): New static function extracted from
read_sf for use on internal units only. Handle empty string case.
(read_sf): New factoring of this function, make it static. Add special
conditions for EOF based on ADVANCE="no", PAD="no", and whether any
bytes have been previously read from the record.
(read_block_form): Modify to call read_sf or read_sf_internal.
(next_record_r): Add a done flag similar to next_record_w. Call hit_eof
if internal array unit next record returns finished, meaning an EOF was
found and not done, ie not the last record expected. For external
units call hit_eof if item_count is 1 or there are no pending spaces.
(next_record): Update call to next_record_r.
From-SVN: r157527
Diffstat (limited to 'gcc/fortran')
0 files changed, 0 insertions, 0 deletions