gcc/libgfortran/io
Jerry DeLisle 2418d0e0e6 re PR libfortran/40330 (incorrect IO)
2009-07-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/40330
	PR libfortran/40662
	* io/io.h (st_parameter_dt): Define format_not_saved bit used to signal
	whether the parsed format data was previously saved. Used to determine
	if the current format data should be freed or not.
	* io/transfer.c (st_read_done): Use the format_not_saved bit.
	(st_write_done): Likewise.
	* io/format.c (parse_format_list): Add boolean pointer to arg list. This
	pointer is used to return status to the caller regarding whether it is
	safe to cache the parsed format data.  Currently, if a FMT_STRING token
	is encounetered, it is not safe to cache. Also, added a local boolean
	variable to hold this information as recursive calls to
	parse_format_list are made.  Remove previous save_format logic.
	(parse_format): Do not use the format caching facility if the current
	unit is an internal unit or if it is not safe to save parsed format
	data.

From-SVN: r149398
2009-07-09 01:20:23 +00:00
..
close.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
fbuf.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
file_pos.c Fix PR libfortran/39667 2009-04-30 18:12:37 +03:00
format.c re PR libfortran/40330 (incorrect IO) 2009-07-09 01:20:23 +00:00
inquire.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
intrinsics.c Fix PR libfortran/39667 2009-04-30 18:12:37 +03:00
io.h re PR libfortran/40330 (incorrect IO) 2009-07-09 01:20:23 +00:00
list_read.c re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
lock.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
open.c re PR fortran/40008 (F2008: Add NEWUNIT= for OPEN statement) 2009-06-07 19:00:47 +00:00
read.c re PR libfortran/39665 (Fortran IO using unaligned accesses to read/write doubles.) 2009-04-09 20:44:23 +03:00
size_from_kind.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
transfer.c re PR libfortran/40330 (incorrect IO) 2009-07-09 01:20:23 +00:00
unit.c re PR fortran/40008 (F2008: Add NEWUNIT= for OPEN statement) 2009-06-07 19:00:47 +00:00
unix.c io.h (is_preconnected): Remove prototype. 2009-04-17 22:52:02 +03:00
write.c re PR fortran/37577 ([meta-bug] change internal array descriptor format for better syntax, C interop TR, rank 15) 2009-06-21 19:24:55 +00:00
write_float.def re PR libfortran/37754 (READ I/O Performance regression from 4.3 to 4.4/4.5) 2009-05-20 00:16:38 +00:00