PR libfortran/23598
* io/lock.c(library_start): If ioparm.iostat is present, clear
it unconditionally.
2005-02-29 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/23598
* gfortran.dg/iostat_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103613
138bc75d-0d04-0410-961f-
82ee72b054a4
+2005-02-29 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/23598
+ * gfortran.dg/iostat_1.f90: New test.
+
2005-08-28 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/23408
--- /dev/null
+! { dg-do run }
+! PR 23598 - The iostat variable wasn't reset if the previous
+! I/O library call had an error.
+program main
+ implicit none
+ integer :: ios, i
+ open (10, pad='no', status='scratch')
+ write (10, '(A)') '1','1'
+ rewind (10)
+ read (10,'(I2)',iostat=ios) i
+ ios = -4321
+ read (10, '(I1)', iostat=ios) i
+ if (ios /= 0) call abort
+end program main
+2005-08-29 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/23598
+ * io/lock.c(library_start): If ioparm.iostat is present, clear
+ it unconditionally.
+
2005-08-27 Francois-Xavier Coudert <coudert@clipper.ens.fr>
* acinclude.m4 (LIBGFOR_CHECK_UNLINK_OPEN_FILE): Add check to see
stay within the library. */
g.in_library = 1;
- if (ioparm.iostat != NULL && ioparm.library_return == LIBRARY_OK)
+ if (ioparm.iostat != NULL)
*ioparm.iostat = ERROR_OK;
ioparm.library_return = LIBRARY_OK;