re PR libfortran/31052 ([4.2 only] Bad IOSTAT values when readings NAMELISTs past EOF)

2007-03-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/31052
	* io/transfer.c (next_record_r): Do not call test_endfile if in namelist
	mode.

From-SVN: r123284
This commit is contained in:
Jerry DeLisle 2007-03-28 00:19:39 +00:00
parent 9f363d2ac2
commit f70ddc12ec
2 changed files with 11 additions and 4 deletions

View File

@ -1,9 +1,15 @@
2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052
* io/transfer.c (next_record_r): Do not call test_endfile if in namelist
mode.
2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31199
*io/io.h: Add saved_pos to gfc_unit structure.
*io/open.c (new_unit): Initialize saved_pos.
*io/transfer.c (data_transfer_init): Set max_pos to value in saved_pos.
* io/io.h: Add saved_pos to gfc_unit structure.
* io/open.c (new_unit): Initialize saved_pos.
* io/transfer.c (data_transfer_init): Set max_pos to value in saved_pos.
(next_record_w): Fix whitespace.
(finalze_transfer): Calculate max_pos for ADVANCE="no" and save it for
later use. If not ADVANCE="no" set saved_pos to zero.

View File

@ -2228,7 +2228,8 @@ next_record_r (st_parameter_dt *dtp)
break;
}
if (dtp->u.p.current_unit->flags.access == ACCESS_SEQUENTIAL)
if (dtp->u.p.current_unit->flags.access == ACCESS_SEQUENTIAL
&& !dtp->u.p.namelist_mode)
test_endfile (dtp->u.p.current_unit);
}