mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			
		
			
				
	
	
		
			2923 lines
		
	
	
		
			104 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			2923 lines
		
	
	
		
			104 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 2005-12-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25594
 | ||
| 	PR libfortran/25419
 | ||
| 	* io/list_read.c (list_formatted_read_scalar): Test for comma to return
 | ||
| 	a null value (default). Revert patch of 25419 on 2005-12-28.  
 | ||
| 
 | ||
| 2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25139
 | ||
| 	* io/unix.c (fd_truncate): Set s->active to zero.
 | ||
| 	PR libfortran/25510
 | ||
| 	* libgfortran.h: Add ERROR_INTERNAL and ERROR_INTERNAL_UNIT.
 | ||
| 	* runtime/error.c (translate_error): Add messages for new errors.
 | ||
| 	* io/list_read.c (next_char): Use new errors.
 | ||
| 	* io/transfer.c (next_record_r) (next_record_w): Use new errors.
 | ||
| 
 | ||
| 2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25550
 | ||
| 	* io/file_pos.c (st_rewind): Reset bytes left so no error occurs in
 | ||
| 	next_record_r.
 | ||
| 
 | ||
| 2005-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25419
 | ||
| 	* io/list_read.c (list_formatted_read_scalar): Allow comma to return a
 | ||
| 	null value (default).
 | ||
| 
 | ||
| 2005-12-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25307
 | ||
| 	* io/list_read.c (next_char): Handle end-of-file conditions for
 | ||
| 	internal units and add support for internal character array units.
 | ||
| 
 | ||
| 2005-12-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25463
 | ||
| 	* io/transfer.c (finalize_transfer): Fix execution order so that
 | ||
| 	next_record is set to zero in all cases.
 | ||
| 
 | ||
| 2005-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25264
 | ||
| 	PR libfortran/25349
 | ||
| 	* io/unit.c (get_unit): Delete code that cleared the string when the
 | ||
| 	unit was opened, which is too soon.
 | ||
| 	* io/transfer.c (next_record_w): Pass done flag in.  Change logic for
 | ||
| 	setting max_pos.  Add code to position unit and pad record as needed.
 | ||
| 
 | ||
| 2005-12-13  Richard Sandiford  <richard@codesourcery.com>
 | ||
| 	    Victor Leikehman  <LEI@il.ibm.com>
 | ||
| 
 | ||
| 	* m4/matmul.m4: Use a different order in the special case of a
 | ||
| 	transposed first argument.
 | ||
| 	* generated/matmul_c4.c, generated/matmul_c8.c, generated/matmul_c10.c,
 | ||
| 	* generated/matmul_c16.c, generated/matmul_i4.c, generated/matmul_i8.c,
 | ||
| 	* generated/matmul_i10.c, generated/matmul_r4.c, generated/matmul_r8.c
 | ||
| 	* generated/matmul_r10.c, generated/matmul_r16.c: Regenerated.
 | ||
| 
 | ||
| 2005-12-10  Janne Blomqvist  <jb@gcc.gnu.org>
 | ||
| 
 | ||
| 	* Makefile.am: Enable loop unrolling for matmul.
 | ||
| 	* configure: Regenerated.
 | ||
| 	* Makefile.in: Regenerated.
 | ||
| 	* aclocal.m4: Regenerated.
 | ||
| 
 | ||
| 2005-12-10  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR fortran/23815
 | ||
| 	* io/file_pos.c (unformatted_backspace):  If flags.convert
 | ||
| 	does not equal CONVERT_NATIVE, reverse the record marker.
 | ||
| 	* io/open.c:  Add convert_opt[].
 | ||
| 	(st_open):  If no convert option is given, set CONVERT_NATIVE.
 | ||
| 	If CONVERT_BIG or CONVERT_LITTLE are given, set flags.convert to
 | ||
| 	CONVERT_NATIVE or CONVERT_SWAP (depending on wether we have
 | ||
| 	a big- or little-endian system).
 | ||
| 	* io/transfer.c (unformatted_read):  Remove unused attribute
 | ||
| 	from arguments.
 | ||
| 	If we need to reverse
 | ||
| 	bytes, break up large transfers into a loop.  Split complex
 | ||
| 	numbers into its two parts.
 | ||
| 	(unformatted_write):  Likewise.
 | ||
| 	(us_read):  If flags.convert does not equal CONVERT_NATIVE,
 | ||
| 	reverse the record marker.
 | ||
| 	(next_record_w): Likewise.
 | ||
| 	(reverse_memcpy):  New function.
 | ||
| 	* io/inquire.c (inquire_via_unit):  Implement convert.
 | ||
| 	* io/io.h (top level):  Add enum unit_convert.
 | ||
| 	Add convert to st_parameter_open and st_parameter_inquire.
 | ||
| 	Define IOPARM_OPEN_HAS_CONVERT and IOPARM_INQUIRE_HAS_CONVERT.
 | ||
| 	Increase padding for st_parameter_dt.
 | ||
| 	Declare reverse_memcpy().
 | ||
| 
 | ||
| 2005-12-09  Jakub Jelinek  <jakub@redhat.com>
 | ||
| 
 | ||
| 	PR libfortran/24991
 | ||
| 	* acinclude.m4: Include acx.m4 and no-executables.m4.
 | ||
| 	* configure.ac: Add GCC_TOPLEVEL_SUBDIRS.
 | ||
| 	* configure: Rebuilt.
 | ||
| 	* Makefile.am (AM_CPPFLAGS): Use $(host_subdir) in build dir
 | ||
| 	path.
 | ||
| 	* Makefile.in: Rebuilt.
 | ||
| 
 | ||
| 2005-12-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25039
 | ||
| 	* io/io.h: Create a new flag sf_read_comma to control comma
 | ||
| 	separators in numeric reads.
 | ||
| 	* io/transfer.c (formatted_transfer_scalar): Initialize the flag.
 | ||
| 	(read_sf): Check for commas coming in and if the flag is set,
 | ||
| 	shortcut the read.
 | ||
| 	* io/read.c (read_a) (read_x): Clear the flag for character reads and
 | ||
| 	reset it after the reads.
 | ||
| 
 | ||
| 2005-12-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* io/format.c: Removing unused code.
 | ||
| 	* intrinsics/random.c: Likewise.
 | ||
| 
 | ||
| 2005-12-02  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/25116
 | ||
| 	* io/transfer.c (data_transfer_init): Don't set the default for
 | ||
| 	namelist I/O on preconnected files to UNFORMATTED.
 | ||
| 
 | ||
| 2005-11-30  Eric Botcazou  <ebotcazou@libertysurf.fr>
 | ||
| 
 | ||
| 	* libgfortran.h (ILP32 typedefs): Define _UINT8_T, _UINT32_T and
 | ||
| 	_UINT64_T on Solaris.
 | ||
| 
 | ||
| 2005-11-28  Steven G. Kargl  <kargls@comcast.net>
 | ||
| 
 | ||
| 	PR libfortran/25149
 | ||
| 	* intrinsics/abort.c: Add external abort_ to allow linking when 
 | ||
| 	invoking -std=f95 in testsuite.
 | ||
| 
 | ||
| 2005-11-28  Jakub Jelinek  <jakub@redhat.com>
 | ||
| 
 | ||
| 	PR libfortran/24991
 | ||
| 	* acinclude.m4 (LIBGFOR_CHECK_PRAGMA_WEAK): Rename to...
 | ||
| 	(LIBGFOR_GTHREAD_WEAK): ... this.  Define SUPPORTS_WEAK rather
 | ||
| 	than HAVE_PRAGMA_WEAK.  Define GTHREAD_USE_WEAK to 0 on hosts
 | ||
| 	that shouldn't use weak in gthr.h.
 | ||
| 	* configure.ac: Use LIBGFOR_GTHREAD_WEAK instead of
 | ||
| 	LIBGFOR_CHECK_PRAGMA_WEAK.
 | ||
| 	* config.h.in: Regenerated.
 | ||
| 	* configure: Regenerated.
 | ||
| 	* io/io.h (SUPPORTS_WEAK): Don't define here.
 | ||
| 
 | ||
| 	* intrinsics/ftell.c (ftell, FTELL_SUB): Add unlock_unit call.
 | ||
| 	* intrinsics/fget.c (fgetc, fputs): Likewise.
 | ||
| 	* intrinsics/tty.c (ttynam): Likewise.
 | ||
| 
 | ||
| 2005-11-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/25109
 | ||
| 	* io/unit.c (init_units): Set default flag to BLANK_NULL per
 | ||
| 	requirement of F95 standard.  Set PAD_YES for stdin.
 | ||
| 
 | ||
| 2005-11-27  David Edelsohn  <edelsohn@gnu.org>
 | ||
| 
 | ||
| 	* intrinsics/random.c: Include config.h
 | ||
| 	* io/size_from_kind.c: Include config.h and libgfortran.h
 | ||
| 	* io/io.h: Revert 2005-11-21 change.
 | ||
| 
 | ||
| 2005-11-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* io/write.c (namelist_write): Correct type in previous
 | ||
| 	commit.
 | ||
| 
 | ||
| 2005-11-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/24919
 | ||
| 	* io/list_read.c (eat_separator, finish_separator,
 | ||
| 	read_character): Handle CRLF separators correctly during reads.
 | ||
| 	(nml_query): Use the HAVE_CRLF macro to print adequate newlines.
 | ||
| 	* io/io.h (st_parameter_dt): Add comment about the possible
 | ||
| 	values for sf_seen_eor.
 | ||
| 	* io/unix.c (tempfile, regular_file): HAVE_CRLF doesn't imply
 | ||
| 	that O_BINARY is defined, so we add that condition.
 | ||
| 	(stream_at_bof): Fix typo in comment.
 | ||
| 	* io/transfer.c (read_sf): Handle correctly CRLF, setting
 | ||
| 	sf_seen_eor value to 2 instead of 1.
 | ||
| 	(formatted_transfer_scalar): Use the sf_seen_eor value to
 | ||
| 	handle CRLF the right way.
 | ||
| 	* io/write.c (nml_write_obj, namelist_write): Use CRLF as newline
 | ||
| 	when HAVE_CRLF is defined.
 | ||
| 
 | ||
| 2005-11-27  Janne Blomqvist  <jb@gcc.gnu.org>
 | ||
| 
 | ||
| 	* m4/ifunction.m4: Add const restrict to function arguments.
 | ||
| 	* m4/iforeach.m4: Likewise.
 | ||
| 	* m4/eoshift1.m4: Likewise.
 | ||
| 	* m4/eoshift3.m4: Likewise.
 | ||
| 	* m4/dotprod.m4: Likewise.
 | ||
| 	* m4/dotprodc.m4: Likewise.
 | ||
| 	* m4/dotprodl.m4: Likewise.
 | ||
| 	* m4/shape.m4: Likewise.
 | ||
| 	* m4/cshift1.m4: Likewise.
 | ||
| 	* m4/reshape.m4: Likewise.
 | ||
| 	* m4/transpose.m4: Likewise.
 | ||
| 	* generated/eoshift*: Regenerated
 | ||
| 	* generated/dotprod*: Likewise.
 | ||
| 	* generated/shape*: Likewise.
 | ||
| 	* generated/cshift1*: Likewise.
 | ||
| 	* generated/reshape*: Likewise.
 | ||
| 	* generated/transpose*: Likewise.
 | ||
| 
 | ||
| 2005-11-26  Richard Henderson  <rth@redhat.com>
 | ||
| 
 | ||
| 	* io/list_read.c (nml_parse_qualifier): Use ssize_t instead of int
 | ||
| 	in dtp->u.p.value.
 | ||
| 
 | ||
| 2005-11-26  Janne Blomqvist  <jb@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/24945
 | ||
| 	* io/open.c (edit_modes): Check for STATUS_UNKNOWN flag.
 | ||
| 	
 | ||
| 2005-11-25  Richard Henderson  <rth@redhat.com>
 | ||
| 
 | ||
| 	* io/list_read.c (nml_parse_qualifier): Use memcpy to extract
 | ||
| 	values from dtp->u.p.value.
 | ||
| 	* io/io.h (struct st_parameter_dt): Change reversion_flag, first_item,
 | ||
| 	seen_dollar, sf_seen_eor, eor_condition, no_leading_blank, char_flag,
 | ||
| 	input_complete, at_eol, comma_flag, namelist_mode, nml_read_error to
 | ||
| 	single-bit fields.  Move value to where it'll be at least pointer
 | ||
| 	aligned.
 | ||
| 
 | ||
| 2005-11-23  Alan Modra  <amodra@bigpond.net.au>
 | ||
| 
 | ||
| 	* io/open.c (new_unit): Use the right unit number when checking
 | ||
| 	for stdin, stdout, stderr.
 | ||
| 
 | ||
| 2005-11-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/24794
 | ||
| 	* io/list_read.c (read_character): Add auto completion on short
 | ||
| 	namelist reads.
 | ||
| 
 | ||
| 2005-11-21  David Edelsohn  <edelsohn@gnu.org>
 | ||
| 
 | ||
| 	* io/io.h (_LARGE_FILES): Undefine for AIX.
 | ||
| 	(_LARGE_FILE_API): Define for AIX.
 | ||
| 
 | ||
| 2005-11-21  Jakub Jelinek  <jakub@redhat.com>
 | ||
| 
 | ||
| 	PR fortran/24774
 | ||
| 	PR fortran/14943
 | ||
| 	PR fortran/21647
 | ||
| 	* Makefile.am (AM_CPPFLAGS): Add gcc directories as -I paths,
 | ||
| 	add -D_GNU_SOURCE.
 | ||
| 	* Makefile.in: Regenerated.
 | ||
| 	* acinclude.m4 (LIBGFOR_CHECK_SYNC_FETCH_AND_ADD,
 | ||
| 	LIBGFOR_CHECK_GTHR_DEFAULT, LIBGFOR_CHECK_PRAGMA_WEAK): New macros.
 | ||
| 	* configure.ac: Add them.
 | ||
| 	* configure: Rebuilt.
 | ||
| 	* config.h.in: Rebuilt.
 | ||
| 	* libtool-version: Bump libgfortran.so SONAME to libgfortran.so.1.
 | ||
| 	* libgfortran.h (library_start, show_locus, internal_error,
 | ||
| 	generate_error, find_option): Add st_parameter_common * argument.
 | ||
| 	(library_end): Change into a dummy macro.
 | ||
| 	* io/io.h: Include gthr.h.
 | ||
| 	(SUPPORTS_WEAK): Define if HAVE_PRAGMA_WEAK.
 | ||
| 	(CHARACTER): Remove define.
 | ||
| 	(st_parameter, global_t): Remove typedef.
 | ||
| 	(ioparm, g, ionml, current_unit): Remove variables.
 | ||
| 	(init_error_stream): Remove prototype.
 | ||
| 	(CHARACTER1, CHARACTER2): Define.
 | ||
| 	(st_parameter_common, st_parameter_open, st_parameter_close,
 | ||
| 	st_parameter_filepos, st_parameter_inquire, st_parameter_dt): New
 | ||
| 	typedefs.
 | ||
| 	(IOPARM_LIBRETURN_MASK, IOPARM_LIBRETURN_OK, IOPARM_LIBRETURN_ERROR,
 | ||
| 	IOPARM_LIBRETURN_END, IOPARM_LIBRETURN_EOR, IOPARM_ERR, IOPARM_END,
 | ||
| 	IOPARM_EOR, IOPARM_HAS_IOSTAT, IOPARM_HAS_IOMSG, IOPARM_COMMON_MASK,
 | ||
| 	IOPARM_OPEN_HAS_RECL_IN, IOPARM_OPEN_HAS_FILE, IOPARM_OPEN_HAS_STATUS,
 | ||
| 	IOPARM_OPEN_HAS_ACCESS, IOPARM_OPEN_HAS_FORM, IOPARM_OPEN_HAS_BLANK,
 | ||
| 	IOPARM_OPEN_HAS_POSITION, IOPARM_OPEN_HAS_ACTION,
 | ||
| 	IOPARM_OPEN_HAS_DELIM, IOPARM_OPEN_HAS_PAD, IOPARM_CLOSE_HAS_STATUS,
 | ||
| 	IOPARM_INQUIRE_HAS_EXIST, IOPARM_INQUIRE_HAS_OPENED,
 | ||
| 	IOPARM_INQUIRE_HAS_NUMBER, IOPARM_INQUIRE_HAS_NAMED,
 | ||
| 	IOPARM_INQUIRE_HAS_NEXTREC, IOPARM_INQUIRE_HAS_RECL_OUT,
 | ||
| 	IOPARM_INQUIRE_HAS_FILE, IOPARM_INQUIRE_HAS_ACCESS,
 | ||
| 	IOPARM_INQUIRE_HAS_FORM, IOPARM_INQUIRE_HAS_BLANK,
 | ||
| 	IOPARM_INQUIRE_HAS_POSITION, IOPARM_INQUIRE_HAS_ACTION,
 | ||
| 	IOPARM_INQUIRE_HAS_DELIM, IOPARM_INQUIRE_HAS_PAD,
 | ||
| 	IOPARM_INQUIRE_HAS_NAME, IOPARM_INQUIRE_HAS_SEQUENTIAL,
 | ||
| 	IOPARM_INQUIRE_HAS_DIRECT, IOPARM_INQUIRE_HAS_FORMATTED,
 | ||
| 	IOPARM_INQUIRE_HAS_UNFORMATTED, IOPARM_INQUIRE_HAS_READ,
 | ||
| 	IOPARM_INQUIRE_HAS_WRITE, IOPARM_INQUIRE_HAS_READWRITE,
 | ||
| 	IOPARM_DT_LIST_FORMAT, IOPARM_DT_NAMELIST_READ_MODE,
 | ||
| 	IOPARM_DT_HAS_REC, IOPARM_DT_HAS_SIZE, IOPARM_DT_HAS_IOLENGTH,
 | ||
| 	IOPARM_DT_HAS_FORMAT, IOPARM_DT_HAS_ADVANCE,
 | ||
| 	IOPARM_DT_HAS_INTERNAL_UNIT, IOPARM_DT_HAS_NAMELIST_NAME,
 | ||
| 	IOPARM_DT_IONML_SET): Define.
 | ||
| 	(gfc_unit): Add lock, waiting and close fields.  Change file
 | ||
| 	from flexible array member into pointer to char.
 | ||
| 	(open_external): Add st_parameter_open * argument.
 | ||
| 	(find_file, file_exists): Add file and file_len arguments.
 | ||
| 	(flush_all_units): New prototype.
 | ||
| 	(max_offset, unit_root, unit_lock): New variable.
 | ||
| 	(is_internal_unit, is_array_io, next_array_record,
 | ||
| 	parse_format, next_format, unget_format, format_error,
 | ||
| 	read_block, write_block, next_record, convert_real,
 | ||
| 	read_a, read_f, read_l, read_x, read_radix, read_decimal,
 | ||
| 	list_formatted_read, finish_list_read, namelist_read,
 | ||
| 	namelist_write, write_a, write_b, write_d, write_e, write_en,
 | ||
| 	write_es, write_f, write_i, write_l, write_o, write_x, write_z,
 | ||
| 	list_formatted_write, get_unit): Add st_parameter_dt * argument.
 | ||
| 	(insert_unit): Remove prototype.
 | ||
| 	(find_or_create_unit, unlock_unit): New prototype.
 | ||
| 	(new_unit): Return gfc_unit *.  Add st_parameter_open *
 | ||
| 	and gfc_unit * arguments.
 | ||
| 	(free_fnodes): Remove prototype.
 | ||
| 	(free_format_data): New prototype.
 | ||
| 	(scratch): Remove.
 | ||
| 	(init_at_eol): Remove prototype.
 | ||
| 	(free_ionml): New prototype.
 | ||
| 	(inc_waiting_locked, predec_waiting_locked, dec_waiting_unlocked):
 | ||
| 	New inline functions.
 | ||
| 	* io/unit.c (max_offset, unit_root, unit_lock): New variables.
 | ||
| 	(insert): Adjust os_error caller.
 | ||
| 	(insert_unit): Made static.  Allocate memory here, initialize
 | ||
| 	lock and after inserting it return it, locked.
 | ||
| 	(delete_unit): Adjust for deletion of g.
 | ||
| 	(find_unit_1): New function.
 | ||
| 	(find_unit): Use it.
 | ||
| 	(find_or_create_unit): New function.
 | ||
| 	(get_unit): Add dtp argument, change meaning of the int argument
 | ||
| 	as creation request flag.  Adjust for different st_* calling
 | ||
| 	conventions, lock internal unit's lock before returning it
 | ||
| 	and removal of g.  Call find_unit_1 instead of find_unit.
 | ||
| 	(is_internal_unit, is_array_io): Add dtp argument, adjust for
 | ||
| 	removal of most of global variables.
 | ||
| 	(init_units): Initialize unit_lock.  Adjust insert_unit callers
 | ||
| 	and adjust for g removal.
 | ||
| 	(close_unit_1): New function.
 | ||
| 	(close_unit): Use it.
 | ||
| 	(unlock_unit): New function.
 | ||
| 	(close_units): Lock unit_lock, use close_unit_1 rather than
 | ||
| 	close_unit.
 | ||
| 	* io/close.c (st_close): Add clp argument.  Adjust for new
 | ||
| 	st_* calling conventions and internal function API changes.
 | ||
| 	* io/file_pos.c (st_backspace, st_endfile, st_rewind, st_flush):
 | ||
| 	Add fpp argument.  Adjust for new st_* calling conventions and
 | ||
| 	internal function API changes.
 | ||
| 	(formatted_backspace, unformatted_backspace): Likewise.  Add
 | ||
| 	u argument.
 | ||
| 	* io/open.c (edit_modes, st_open): Add opp argument.  Adjust for
 | ||
| 	new st_* calling conventions and internal function API changes.
 | ||
| 	(already_open): Likewise.  If not HAVE_UNLINK_OPEN_FILE, unlink
 | ||
| 	scratch file.  Instead of calling close_unit just call sclose,
 | ||
| 	free u->file if any and clear a few u fields before calling
 | ||
| 	new_unit.
 | ||
| 	(new_unit): Return gfc_unit *.  Add opp and u arguments.
 | ||
| 	Adjust for new st_* calling conventions and internal function
 | ||
| 	API changes.  Don't allocate unit here, rather than work with
 | ||
| 	already created unit u already locked on entry.  In case
 | ||
| 	of failure, close_unit it.
 | ||
| 	* io/unix.c: Include unix.h.
 | ||
| 	(BUFFER_SIZE, unix_stream): Moved to unix.h.
 | ||
| 	(unit_to_fd): Add unlock_unit call.
 | ||
| 	(tempfile): Add opp argument, use its fields rather than ioparm.
 | ||
| 	(regular_file): Likewise.
 | ||
| 	(open_external): Likewise.  Only unlink file if fd >= 0.
 | ||
| 	(init_error_stream): Add error argument, set structure it points
 | ||
| 	to rather than filling static variable and returning its address.
 | ||
| 	(FIND_FILE0_DECL, FIND_FILE0_ARGS): Define.
 | ||
| 	(find_file0): Use them.  Don't crash if u->s == NULL.
 | ||
| 	(find_file): Add file and file_len arguments, use them instead
 | ||
| 	of ioparm.  Add locking.  Pass either an array of 2 struct stat
 | ||
| 	or file and file_len pair to find_file0.
 | ||
| 	(flush_all_units_1, flush_all_units): New functions.
 | ||
| 	(file_exists): Add file and file_len arguments, use them instead
 | ||
| 	of ioparm.
 | ||
| 	* io/unix.h: New file.
 | ||
| 	* io/lock.c (ioparm, g, ionml): Remove variables.
 | ||
| 	(library_start): Add cmp argument, adjust for new st_* calling
 | ||
| 	conventions.
 | ||
| 	(library_end): Remove.
 | ||
| 	(free_ionml): New function.
 | ||
| 	* io/inquire.c (inquire_via_unit, inquire_via_filename,
 | ||
| 	st_inquire): Add iqp argument, adjust for new st_* calling
 | ||
| 	conventions and internal function API changes.
 | ||
| 	* io/format.c (FARRAY_SIZE): Decrease to 64.
 | ||
| 	(fnode_array, format_data): New typedefs.
 | ||
| 	(avail, array, format_string, string, error, saved_token, value,
 | ||
| 	format_string_len, reversion_ok, saved_format): Remove variables.
 | ||
| 	(colon_node): Add const.
 | ||
| 	(free_fnode, free_fnodes): Remove.
 | ||
| 	(free_format_data): New function.
 | ||
| 	(next_char, unget_char, get_fnode, format_lex, parse_format_list,
 | ||
| 	format_error, parse_format, revert, unget_format, next_test): Add
 | ||
| 	fmt or dtp arguments, pass it all around, adjust for internal
 | ||
| 	function API changes and adjust for removal of global variables.
 | ||
| 	(next_format): Likewise.  Constify return type.
 | ||
| 	(next_format0): Constify return type.
 | ||
| 	* io/transfer.c (current_unit, sf_seen_eor, eor_condition, max_pos,
 | ||
| 	skips, pending_spaces, scratch, line_buffer, advance_status,
 | ||
| 	transfer): Remove variables.
 | ||
| 	(transfer_integer, transfer_real, transfer_logical,
 | ||
| 	transfer_character, transfer_complex, transfer_array, current_mode,
 | ||
| 	read_sf, read_block, read_block_direct, write_block,
 | ||
| 	write_block_direct, unformatted_read, unformatted_write,
 | ||
| 	type_name, write_constant_string, require_type,
 | ||
| 	formatted_transfer_scalar, us_read, us_write, pre_position,
 | ||
| 	data_transfer_init, next_record_r, next_record_w, next_record,
 | ||
| 	finalize_transfer, iolength_transfer, iolength_transfer_init,
 | ||
| 	st_iolength, st_iolength_done, st_read, st_read_done, st_write,
 | ||
| 	st_write_done, st_set_nml_var, st_set_nml_var_dim,
 | ||
| 	next_array_record): Add dtp argument, pass it all around, adjust for
 | ||
| 	internal function API changes and removal of global variables.
 | ||
| 	* io/list_read.c (repeat_count, saved_length, saved_used,
 | ||
| 	input_complete, at_eol, comma_flag, last_char, saved_string,
 | ||
| 	saved_type, namelist_mode, nml_read_error, value, parse_err_msg,
 | ||
| 	nml_err_msg, prev_nl): Remove variables.
 | ||
| 	(push_char, free_saved, next_char, unget_char, eat_spaces,
 | ||
| 	eat_separator, finish_separator, nml_bad_return, convert_integer,
 | ||
| 	parse_repeat, read_logical, read_integer, read_character,
 | ||
| 	parse_real, read_complex, read_real, check_type,
 | ||
| 	list_formatted_read_scalar, list_formatted_read, finish_list_read,
 | ||
| 	find_nml_node, nml_untouch_nodes, nml_match_name, nml_query,
 | ||
| 	namelist_read): Add dtp argument, pass it all around, adjust for
 | ||
| 	internal function API changes and removal of global variables.
 | ||
| 	(nml_parse_qualifier): Likewise.  Add parse_err_msg argument.
 | ||
| 	(nml_read_obj): Likewise.  Add pprev_nl, nml_err_msg, clow and
 | ||
| 	chigh arguments.
 | ||
| 	(nml_get_obj_data): Likewise.  Add pprev_nl and nml_err_msg
 | ||
| 	arguments.
 | ||
| 	(init_at_eol): Removed.
 | ||
| 	* io/read.c (convert_real, read_l, read_a, next_char, read_decimal,
 | ||
| 	read_radix, read_f, read_x): Add dtp argument, pass it all around,
 | ||
| 	adjust for internal function API changes and removal of global
 | ||
| 	variables.
 | ||
| 	(set_integer): Adjust internal_error caller.
 | ||
| 	* io/write.c (no_leading_blank, nml_delim): Remove variables.
 | ||
| 	(write_a, calculate_sign, calculate_G_format, output_float,
 | ||
| 	write_l, write_float, write_int, write_decimal, write_i, write_b,
 | ||
| 	write_o, write_z, write_d, write_e, write_f, write_en, write_es,
 | ||
| 	write_x, write_char, write_logical, write_integer, write_character,
 | ||
| 	write_real, write_complex, write_separator,
 | ||
| 	list_formatted_write_scalar, list_formatted_write, nml_write_obj,
 | ||
| 	namelist_write): Add dtp argument, pass it all around, adjust for
 | ||
| 	internal function API changes and removal of global variables.
 | ||
| 	(extract_int, extract_uint, extract_real): Adjust internal_error
 | ||
| 	callers.
 | ||
| 	* runtime/fpu.c (_GNU_SOURCE): Don't define here.
 | ||
| 	* runtime/error.c: Include ../io/unix.h.
 | ||
| 	(filename, line): Remove variables.
 | ||
| 	(st_printf): Pass address of a local variable to init_error_stream.
 | ||
| 	(show_locus): Add cmp argument.  Use fields it points to rather than
 | ||
| 	filename and line variables.
 | ||
| 	(os_error, runtime_error): Remove show_locus calls.
 | ||
| 	(internal_error): Add cmp argument.  Pass it down to show_locus.
 | ||
| 	(generate_error): Likewise.  Use flags bitmask instead of non-NULL
 | ||
| 	check for iostat and iomsg parameter presence, adjust for st_*
 | ||
| 	calling convention changes.
 | ||
| 	* runtime/stop.c (stop_numeric, stop_string): Remove show_locus
 | ||
| 	calls.
 | ||
| 	* runtime/pause.c (pause_numeric, pause_string): Likewise.
 | ||
| 	* runtime/string.c: Include ../io/io.h.
 | ||
| 	(find_option): Add cmp argument.  Pass it down to generate_error.
 | ||
| 	* intrinsics/flush.c (recursive_flush): Remove.
 | ||
| 	(flush_i4, flush_i8): Use flush_all_units.  Add unlock_unit
 | ||
| 	call.
 | ||
| 	* intrinsics/rand.c: Include ../io/io.h.
 | ||
| 	(rand_seed_lock): New variable.
 | ||
| 	(srand, irand): Add locking.
 | ||
| 	(init): New constructor function.
 | ||
| 	* intrinsics/random.c: Include ../io/io.h.
 | ||
| 	(random_lock): New variable.
 | ||
| 	(random_r4, random_r8, arandom_r4, arandom_r8): Add locking.
 | ||
| 	(random_seed): Likewise.  open failed if fd < 0.  Set i correctly.
 | ||
| 	(init): New constructor function.
 | ||
| 	* intrinsics/system_clock.c (tp0, t0): Remove.
 | ||
| 	(system_clock_4, system_clock_8): Don't subtract tp0/t0 from current
 | ||
| 	time, use just integer arithmetics.
 | ||
| 	* intrinsics/tty.c (isatty_l4, isatty_l8, ttynam_sub): Add
 | ||
| 	unlock_unit calls.
 | ||
| 
 | ||
| 2005-11-20  Richard Henderson  <rth@redhat.com>
 | ||
| 
 | ||
|         * Makefile.am: Revert 2005-11-14 change.  Enable -free-vectorize
 | ||
|         via gmake per-target variables.
 | ||
| 	* Makefile.in, aclocal.m4: Regenerate.
 | ||
| 
 | ||
| 2005-11-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* configure.ac: Add "-I ." to the AM_FCFLAGS.
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 2005-11-18  Hans-Peter Nilsson  <hp@axis.com>
 | ||
| 
 | ||
| 	* config/fpu-glibc.h (set_fpu): Only call fedisableexcept for
 | ||
| 	nonzero FE_ALL_EXCEPT.
 | ||
| 
 | ||
| 2005-11-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR fortran/24892
 | ||
| 	* io/io.h (unit_access): Add ACCESS_APPEND.
 | ||
| 	* io/open.c (access_opt): Add APPEND value for ACCESS keyword.
 | ||
| 	(st_open): Use that new value to set the POSITION accordingly.
 | ||
| 
 | ||
| 2005-11-14  Janne Blomqvist  <jb@gcc.gnu.org>
 | ||
| 
 | ||
|         PR fortran/21468
 | ||
|         * Makefile.am: Add -ftree-vectorize for compiling matmul.
 | ||
|         * m4/matmul.m4: Add const and restrict to type declarations as
 | ||
|         appropriate.
 | ||
|         * m4/matmull.m4: Likewise.
 | ||
|         * Makefile.in: Regenerated.
 | ||
|         * generated/matmul_*.c: Likewise.
 | ||
| 	
 | ||
| 2005-11-13  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* intrinsics/fget.c: New file.
 | ||
| 	* intrinsics/ftell.c: New file.
 | ||
| 	* io/unix.c (stream_offset): New function.
 | ||
| 	* io/io.h: Add prototype for stream_offset.
 | ||
| 	* Makefile.am: Add intrinsics/fget.c and intrinsics/ftell.c.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 
 | ||
| 2005-11-12  Steven G. Kargl  <kargls@comcast.net>
 | ||
| 
 | ||
| 	PR libfortran/24787
 | ||
| 	*  intrinsics/string_intrinsics.c (string_scan): Off by one; Fix typos
 | ||
| 	in nearby comment.
 | ||
| 
 | ||
| 2005-11-10  Andreas Jaeger  <aj@suse.de>
 | ||
| 
 | ||
| 	* libgfortran.h: Add proper defines where needed.
 | ||
| 
 | ||
| 2005-11-10  Andreas Jaeger  <aj@suse.de>
 | ||
| 
 | ||
| 	* libgfortran.h: Add missing prototypes for internal_pack
 | ||
| 	functions.
 | ||
| 
 | ||
| 2005-11-06  Janne Blomqvist <jb@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR fortran/24174
 | ||
| 	PR fortran/24305
 | ||
| 	* io/io.h: Add argument to prototypes, add prototypes for
 | ||
| 	size_from_*_kind functions.
 | ||
| 	* io/list_read.c (read_complex): Add size argument, use
 | ||
| 	it.
 | ||
| 	(list_formatted_read): Add size argument, cleanup.
 | ||
| 	(list_formatted_read_scalar): Add size argument.
 | ||
| 	(nml_read_obj): Fix for padding.
 | ||
| 	* io/transfer.c: Add argument to transfer function pointer.
 | ||
| 	(unformatted_read): Add size argument.
 | ||
| 	(unformatted_write): Likewise.
 | ||
| 	(formatted_transfer_scalar): Fix for padding with complex(10).
 | ||
| 	(formatted_transfer): Add size argument, cleanup.
 | ||
| 	(transfer_integer): Add size argument to transfer call.
 | ||
| 	(transfer_real): Likewise.
 | ||
| 	(transfer_logical): Likewise.
 | ||
| 	(transfer_character): Likewise.
 | ||
| 	(transfer_complex): Likewise.
 | ||
| 	(transfer_array): New kind argument, use it.
 | ||
| 	(data_transfer_init): Add size argument to formatted_transfer
 | ||
| 	call.
 | ||
| 	(iolength_transfer): Add size argument, cleanup.
 | ||
| 	* io/write.c (write_complex): Add size argument, fix for padding
 | ||
| 	with complex(10).
 | ||
| 	(list_formatted_write): Add size argument, cleanup.
 | ||
| 	(list_formatted_write_scalar): Add size argument, use it.
 | ||
| 	(nml_write_obj): Fix for size vs. kind issue.
 | ||
| 	* io/size_from_kind.c: New file.
 | ||
| 	* Makefile.am: Add io/size_from_kind.c.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 
 | ||
| 2005-11-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* intrinsics/ctime.c: New file.
 | ||
| 	* configure.ac: Add check for ctime.
 | ||
| 	* Makefile.am: Add ctime.c
 | ||
| 	* configure: Regenerate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 
 | ||
| 2005-11-05  Richard Guenther  <rguenther@suse.de>
 | ||
| 
 | ||
| 	* configure.ac: Use AM_FCFLAGS for extra flags, not FCFLAGS.
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 2005-11-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* intrinsics/tty.c (ttynam): New function.
 | ||
| 
 | ||
| 2005-11-04  Steven G. Kargl <kargls@comcast.net>
 | ||
| 
 | ||
| 	PR fortran/24636
 | ||
| 	* runtime/stop.c (stop_numeric): Use stop_code = -1.
 | ||
| 
 | ||
| 2005-11-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/22298
 | ||
| 	* runtime/main.c (stupid_function_name_for_static_linking): New
 | ||
| 	function.
 | ||
| 	* runtime/error.c (internal_error): Call
 | ||
| 	stupid_function_name_for_static_linking.
 | ||
| 	* libgfortran.h: Add prototype for
 | ||
| 	stupid_function_name_for_static_linking.
 | ||
| 
 | ||
| 2005-11-01  Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR fortran/14994
 | ||
| 	* libgfortran/intrinsics/date_and_time.c: Add interface to
 | ||
| 	the functions date_and_time for the intrinsic function secnds.
 | ||
| 
 | ||
| 2005-10-31  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/24584
 | ||
| 	* io/list_read.c (free_saved): Set saved_used to zero.
 | ||
| 
 | ||
| 2005-10-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20179
 | ||
| 	* io/unix.c (flush_if_preconnected): New function.
 | ||
| 	* io/io.h: Add prototype for flush_if_preconnected.
 | ||
| 	* io/transfer.c (data_transfer_init): Use flush_if_preconnected
 | ||
| 	to workaround buggy mixed C-Fortran code.
 | ||
| 
 | ||
| 2005-10-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* Makefile.am: Add intrinsics/malloc.c file.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* intrinsics/malloc.c: New file, with implementations for free
 | ||
| 	and malloc library functions.
 | ||
| 
 | ||
| 2005-10-29  Mike Stump  <mrs@apple.com>
 | ||
| 
 | ||
| 	* Makefile.am (kinds.h): Remove target, if command fails.
 | ||
| 	(selected_int_kind.inc): Likewise.
 | ||
| 	(selected_real_kind.inc): Likewise.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 
 | ||
| 2005-10-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 
 | ||
| 	* Makefile.am (intrinsics): Add signal.c.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* configure.ac: Checks for signal and alarm.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* intrinsics/signal.c: New file for SIGNAL and ALARM intrinsics.
 | ||
| 
 | ||
| 2005-10-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* acinclude.m4 (LIBGFOR_CHECK_FPSETMASK): New check.
 | ||
| 	* configure.ac: Check for floatingpoint.h, fptrap.h and float.h
 | ||
| 	headers. Use LIBGFOR_CHECK_FPSETMASK. Check for fp_trap and
 | ||
| 	fp_enable functions.
 | ||
| 	* configure.host: Add case for systems with fpsetmask and systems
 | ||
| 	with fp_trap/fp_enable.
 | ||
| 	* config/fpu-sysv.h: New file, FPU code using fpsetmask.
 | ||
| 	* config/fpu-aix.h: New file, FPU code for AIX using fp_trap and
 | ||
| 	fp_enable.
 | ||
| 	* aclocal.m4: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 
 | ||
| 2005-10-24  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/24224
 | ||
| 	* libgfortran.h: Remove array stride error code.
 | ||
| 	* runtime/error.c: Remove array stride error.
 | ||
| 	* io/io.h: Change name of 'nml_loop_spec' to 'array_loop_spec' to be
 | ||
| 	generic.  Add pointer to array_loop_spec and rank to gfc_unit
 | ||
| 	structure.
 | ||
| 	* io/list_read.c: Revise nml_loop_spec references to array_loop_spec.
 | ||
| 	* io/transfer.c (init_loop_spec): New function to initialize
 | ||
| 	an array_loop_spec.
 | ||
| 	(next_array_record): New function to return the index to the next array
 | ||
| 	record by incrementing through the array_loop_spec.
 | ||
| 	(next_record_r): Use new function.
 | ||
| 	(next_record_w): Use new function.
 | ||
| 	(finalize_transfer): Free memory allocated for array_loop_spec.
 | ||
| 	* io/unit.c (get_array_unit_len): Delete this function. Use new
 | ||
| 	function init_loop_spec to initialize the array_loop_spec.
 | ||
| 
 | ||
| 2005-10-24  Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR fortran/24416
 | ||
| 	* libgfortran/io/list_read.c (namelist_read): Exit with call to
 | ||
| 	free_saved () so that character strings do not accumulate.
 | ||
| 
 | ||
| 2005-10-23  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/24489
 | ||
| 	* io/transfer.c (read_block): Change the order of execution to not read
 | ||
| 	past end-of-record.
 | ||
| 	(read_block_direct): Same change.
 | ||
| 
 | ||
| 2005-10-23  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/23272
 | ||
| 	* acinclude.m4 (LIBGFOR_CHECK_WORKING_STAT): New check.
 | ||
| 	* configure.ac: Use LIBGFOR_CHECK_WORKING_STAT.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* aclocal.m4: Regenerate.
 | ||
| 	* io/unix.c (compare_file_filename): Add fallback case for
 | ||
| 	systems without working stat.
 | ||
| 	* io/open.c (already_open): Correct call to
 | ||
| 	compare_file_filename.
 | ||
| 	* io/io.h: Correct proto for compare_file_filename.
 | ||
| 
 | ||
| 2005-10-23  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* runtime/fpu.c: Add _GNU_SOURCE definition.
 | ||
| 	* config/fpu-glibc.h: Remove __USE_GNU definition.
 | ||
| 
 | ||
| 2005-10-23  Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR fortran/24384
 | ||
| 	* intrinsics/spread_generic.c (spread_internal_scalar): New
 | ||
| 	function that handles the special case of spread with a scalar
 | ||
| 	source. This has new interface functions -
 | ||
| 	(spread_scalar, spread_char_scalar): New functions to interface
 | ||
| 	with the calls specified in gfc_resolve_spread.
 | ||
| 
 | ||
| 2005-10-21  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/24383
 | ||
| 	* io/unix.c: Add fallback definition for SSIZE_MAX.
 | ||
| 
 | ||
| 2005-10-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* c99_protos.h: Define preprocessor HAVE_ macros with value 1
 | ||
| 	instead of empty value.
 | ||
| 	* intrinsics/c99_functions.c: Likewise.
 | ||
| 	* intrinsics/getXid.c: Define HAVE_GETPID with value 1 instead of
 | ||
| 	empty value.
 | ||
| 	* intrinsics/sleep.c: Define HAVE_SLEEP with value 1 instead of
 | ||
| 	empty value.
 | ||
| 
 | ||
| 2005-10-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/24432
 | ||
| 	* c99_protos.h: Define HAVE_ macros for all provided functions.
 | ||
| 
 | ||
| 2005-10-14  Uros Bizjak  <uros@kss-loka.si>
 | ||
| 
 | ||
| 	* config/fpu-387.h (set_fpu): Remove extra ":" in stmxcsr.
 | ||
| 	Change cw and cw_sse variables to unsigned.
 | ||
| 	(SSE): New definition.
 | ||
| 	(has_sse): Use it.
 | ||
| 
 | ||
| 2005-10-13  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	* io/unix.c(fd_alloc_r_at):  Use read() instead of do_read()
 | ||
| 	only in case of special files (e.g. terminals).
 | ||
| 
 | ||
| 2005-10-13  Uros Bizjak  <uros@kss-loka.si>
 | ||
| 
 | ||
| 	* config/fpu-387.h (set_fpu): Add "=m" for stmxcsr.
 | ||
| 
 | ||
| 2005-10-12  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* Makefile.am: Add fpu.c to the build process, and
 | ||
| 	target-dependent code as fpu-target.h.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* configure.ac: Add call to configure.host to set
 | ||
| 	FPU_HOST_HEADER.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* configure.host: New script to determine which host-dependent
 | ||
| 	code should go in.
 | ||
| 	* libgfortran.h: Add fpe option, remove previous fpu_ options.
 | ||
| 	Add bitmasks for different FPE traps. Add prototype for set_fpu.
 | ||
| 	* runtime/environ.c: Remove environment variables to control
 | ||
| 	fpu behaviour.
 | ||
| 	* runtime/fpu.c (set_fpe): New function for the front-end.
 | ||
| 	* runtime/main.c (init): Set FPU state.
 | ||
| 	* config: New directory to store host-dependent code.
 | ||
| 	* config/fpu-387.h: New file with code handling the i387 FPU.
 | ||
| 	* config/fpu-glibc.h: New file with code for glibc systems.
 | ||
| 	* config/fpu-generic.h: Fallback for the most generic host. Issue
 | ||
| 	warnings.
 | ||
| 
 | ||
| 2005-10-12  Janne Blomqvist <jblomqvi@cc.hut.fi>
 | ||
| 
 | ||
| 	* io/unix.c(fd_alloc_r_at): Remove parts of patch of 2005/10/07 that
 | ||
| 	cause input from the terminal to hang.
 | ||
| 
 | ||
| 2005-10-11  Steven G. Kargl  <kargls@comcast.net>
 | ||
| 
 | ||
| 	PR libfortran/24313
 | ||
| 	*  c99_functions.c (csqrtf, csqrt): Fix choice of branch cut.  Note
 | ||
| 	csqrt{f} were imported from glibc, and this bug is still present
 | ||
| 	there. glibc PR is 1146.
 | ||
| 
 | ||
| 2005-10-07  Janne Blomqvist <jblomqvi@cc.hut.fi>
 | ||
| 
 | ||
| 	PR fortran/16339
 | ||
| 	PR fortran/23363
 | ||
| 	* io/io.h: Add read and write members to stream, define access
 | ||
| 	macros.
 | ||
| 	* io/transfer.c (read_block_direct): New function.
 | ||
| 	(write_block_direct): New function.
 | ||
| 	(unformatted_read): Change to use read_block_direct.
 | ||
| 	(unformatted_write): Change to use write_block_direct.
 | ||
| 	* io/unix.c: Remove mmap includes and defines.
 | ||
| 	(writen): Remove.
 | ||
| 	(readn): Remove.
 | ||
| 	(reset_stream): New function.
 | ||
| 	(do_read): New function.
 | ||
| 	(do_write): New function.
 | ||
| 	(fd_flush): Change to use do_write() instead of writen().
 | ||
| 	(fd_alloc_r_at): Change to use do_read().
 | ||
| 	(fd_seek): Change return type to try, as the prototype. Add check
 | ||
| 	to avoid syscall overhead if possible.
 | ||
| 	(fd_read): New function.
 | ||
| 	(fd_write): New function.
 | ||
| 	(fd_open): Set pointers for new functions.
 | ||
| 	(mem_read): New function.
 | ||
| 	(mem_write): New function.
 | ||
| 	(open_internal): Set pointers for new functions.
 | ||
| 	(is_seekable): Clean up comment.
 | ||
| 
 | ||
| 2005-10-07  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
|         * io/transfer.c (write_block): Add test for end-of-file condition,
 | ||
|         removed from mem_alloc_w_at. (next_record_w): Clean up checks for
 | ||
|         NULL pointer returns from s_alloc_w.
 | ||
|         * io/unix.c (mem_alloc_w_at): Remove call to generate_error end-of-file.
 | ||
|         * io/write.c (write_float): Add checks for NULL pointer returns from
 | ||
|         write_block calls. (write_integer): Same.
 | ||
| 
 | ||
| 2005-10-03  Jakub Jelinek  <jakub@redhat.com>
 | ||
| 
 | ||
| 	* runtime/memory.c (allocate_size): Malloc 1 byte if size == 0.
 | ||
| 
 | ||
| 2005-10-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/19308
 | ||
| 	PR libfortran/22437
 | ||
| 	* Makefile.am: Add generated files for large real and integers
 | ||
| 	kinds. Add a rule to create the kinds.inc c99_protos.inc files.
 | ||
| 	Use kinds.inc to preprocess Fortran generated files.
 | ||
| 	* libgfortran.h: Add macro definitions for GFC_INTEGER_16_HUGE,
 | ||
| 	GFC_REAL_10_HUGE and GFC_REAL_16_HUGE. Add types gfc_array_i16,
 | ||
| 	gfc_array_r10, gfc_array_r16, gfc_array_c10, gfc_array_c16,
 | ||
| 	gfc_array_l16.
 | ||
| 	* mk-kinds-h.sh: Define macros HAVE_GFC_LOGICAL_* and
 | ||
| 	HAVE_GFC_COMPLEX_* when these types are available.
 | ||
| 	* intrinsics/ishftc.c (ishftc16): New function for GFC_INTEGER_16.
 | ||
| 	* m4/all.m4, m4/any.m4, m4/count.m4, m4/cshift1.m4, m4/dotprod.m4,
 | ||
| 	m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4, m4/eoshift3.m4,
 | ||
| 	m4/exponent.m4, m4/fraction.m4, m4/in_pack.m4, m4/in_unpack.m4,
 | ||
| 	m4/matmul.m4, m4/matmull.m4, m4/maxloc0.m4, m4/maxloc1.m4,
 | ||
| 	m4/maxval.m4, m4/minloc0.m4, m4/minloc1.m4, m4/minval.m4, m4/mtype.m4,
 | ||
| 	m4/nearest.m4, m4/pow.m4, m4/product.m4, m4/reshape.m4,
 | ||
| 	m4/set_exponent.m4, m4/shape.m4, m4/specific.m4, m4/specific2.m4,
 | ||
| 	m4/sum.m4, m4/transpose.m4: Protect generated functions with
 | ||
| 	appropriate "#if defined (HAVE_GFC_type_kind)" preprocessor directives.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* all files in generated/: Regenerate.
 | ||
| 
 | ||
| 2005-10-01  Jakub Jelinek  <jakub@redhat.com>
 | ||
| 
 | ||
| 	* runtime/memory.c (malloc_t): Remove.
 | ||
| 	(GFC_MALLOC_MAGIC, HEADER_SIZE, DATA_POINTER, DATA_HEADER): Remove.
 | ||
| 	(mem_root, runtime_cleanup, malloc_with_header): Remove.
 | ||
| 	(internal_malloc_size): Use just get_mem if size != 0, return NULL
 | ||
| 	otherwise.
 | ||
| 	(internal_free): Just free if non-NULL.
 | ||
| 	(internal_realloc_size): Remove debugging stuff.
 | ||
| 	(allocate_size): Use malloc directly, remove debugging stuff.
 | ||
| 	(deallocate): Use free directly, fix error message wording.
 | ||
| 
 | ||
| 	* libgfortran.h (GFC_ITOA_BUF_SIZE, GFC_XTOA_BUF_SIZE,
 | ||
| 	GFC_OTOA_BUF_SIZE, GFC_BTOA_BUF_SIZE): Define.
 | ||
| 	(gfc_itoa, xtoa): Add 2 extra arguments.
 | ||
| 	* runtime/environ.c: Include stdio.h.
 | ||
| 	(check_buffered): Use sprintf.
 | ||
| 	* runtime/error.c: Include assert.h.
 | ||
| 	(gfc_itoa, xtoa): Add 2 extra arguments, avoid using static
 | ||
| 	buffers.
 | ||
| 	(st_printf, st_sprintf): Adjust callers.
 | ||
| 	* io/write.c (otoa, btoa): Add 2 extra arguments, avoid using
 | ||
| 	static buffers.
 | ||
| 	(write_int, write_decimal): Add 2 extra arguments to conv
 | ||
| 	function pointer, adjust caller.
 | ||
| 	(write_integer): Adjust gfc_itoa caller.
 | ||
| 
 | ||
| 	* io/unit.c (get_array_unit_len): Return 0 rather than NULL.
 | ||
| 
 | ||
| 	* io/read.c (read_f): Remove spurious pointer dereference.
 | ||
| 
 | ||
| 2005-09-30  Janne Blomqvist <jblomqvi@cc.hut.fi>
 | ||
| 
 | ||
| 	PR 24112
 | ||
| 	* io/open.c (edit_modes): Check for correct flag.
 | ||
| 
 | ||
| 2005-09-29  Jakub Jelinek  <jakub@redhat.com>
 | ||
| 
 | ||
| 	* runtime/string.c (find_option): Change 3rd argument to
 | ||
| 	const st_option *.
 | ||
| 	* libgfortran.h (find_option): Likewise.
 | ||
| 	* runtime/environ.c (rounding, precision, signal_choices): Constify.
 | ||
| 	(init_choice, show_choice): Change 2nd argument to const choice *.
 | ||
| 	* io/open.c (access_opt, action_opt, blank_opt, delim_opt, form_opt,
 | ||
| 	position_opt, status_opt, pad_opt): Constify.
 | ||
| 	* io/transfer.c (advance_opt): Likewise.
 | ||
| 	* io/inquire.c (undefined): Likewise.
 | ||
| 	* io/close.c (status_opt): Likewise.
 | ||
| 	* io/format.c (posint_required, period_required, nonneg_required,
 | ||
| 	unexpected_element, unexpected_end, bad_string, bad_hollerith,
 | ||
| 	reversion_error): Likewise.
 | ||
| 	* io/unix.c (yes, no, unknown): Change from const char *
 | ||
| 	into const char [].
 | ||
| 
 | ||
| 2005-09-27  Steve Ellcey  <sje@cup.hp.com>
 | ||
| 
 | ||
| 	PR target/23552
 | ||
| 	* acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE): New.
 | ||
| 	(LIBGFOR_CHECK_FOR_BROKEN_ISNAN): New.
 | ||
| 	(LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY): New.
 | ||
| 	* configure.ac (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE): Add use.
 | ||
| 	(LIBGFOR_CHECK_FOR_BROKEN_ISNAN): Add use.
 | ||
| 	(LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY): Add use.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* libgfortan.h (isfinite): undef if broken, set if needed.
 | ||
| 	(isnan): undef if broken, set if needed.
 | ||
| 	(fpclassify): undef if broken, set if needed.
 | ||
| 	* io/write.c: Remove TODO comment about working isfinite.
 | ||
| 	* intrinsics/c99_functions.c (round): Use isfinite instead
 | ||
| 	of fpclassify.
 | ||
| 	* intrinsics/c99_functions.c (roundf): Ditto.
 | ||
| 
 | ||
| 2005-09-24  Janne Blomqvist <jblomqvi@cc.hut.fi>
 | ||
| 
 | ||
| 	* io.h: Changed prototypes of list_formatted_{read|write}.
 | ||
| 	* list_read.c (list_formatted_read): Renamed to
 | ||
| 	list_formatted_read_scalar and made static.
 | ||
| 	(list_formatted_read): New function.
 | ||
| 	* transfer.c: Prototype for transfer_array. Changed transfer
 | ||
| 	function pointer.
 | ||
| 	(unformatted_read): Add nelems argument, use it.
 | ||
| 	(unformatted_write): Likewise.
 | ||
| 	(formatted_transfer): Changed name to formatted_transfer_scalar.
 | ||
| 	(formatted_transfer): New function.
 | ||
| 	(transfer_integer): Add nelems argument to transfer call, move
 | ||
| 	updating item count to transfer functions.
 | ||
| 	(transfer_real): Likewise.
 | ||
| 	(transfer_logical): Likewise.
 | ||
| 	(transfer_character): Likewise.
 | ||
| 	(transfer_complex): Likewise.
 | ||
| 	(transfer_array): New function.
 | ||
| 	(data_transfer_init): Call formatted_transfer with new argument.
 | ||
| 	(iolength_transfer): New argument, use it.
 | ||
| 	* write.c (list_formatted_write): Renamed to
 | ||
| 	list_formatted_write_scalar, made static.
 | ||
| 	(list_formatted_write): New function.
 | ||
| 
 | ||
| 2005-09-26  David Edelsohn  <edelsohn@gnu.org>
 | ||
| 
 | ||
| 	* configure.ac: Add check for __clog.
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 2005-09-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* c99_protos.h: Add prototypes for C99 complex functions.
 | ||
| 	* libgfortran.h: Include complex.h before c99_protos.h.
 | ||
| 	* intrinsics/c99_functions.c: Define HAVE_ macros for the
 | ||
| 	fallback functions we provide.
 | ||
| 	(cabsf, cabs, cabsl, cargf, carg, cargl, cexpf, cexp, cexpl,
 | ||
| 	clogf, clog, clogl, clog10f, clog10, clog10l, cpowf, cpow, cpowl,
 | ||
| 	cqsrtf, csqrt, csqrtl, csinhf, csinh, csinhl, ccoshf, ccosh,
 | ||
| 	ccoshl, ctanhf, ctanh, ctanhl, csinf, csin, csinl, ccosf, ccos,
 | ||
| 	ccosl, ctanf, ctan, ctanl): New fallback functions.
 | ||
| 	* Makefile.am (gfor_math_trig_c, gfor_math_trig_obj,
 | ||
| 	gfor_specific_c, gfor_cmath_src, gfor_cmath_obj): Remove.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* configure.ac: Remove checks for csin. Add checks for all C99
 | ||
| 	complex functions.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* aclocal.m4: Regenerate.
 | ||
| 
 | ||
| 2005-09-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 	    Danny Smith  <dannysmith@users.sourceforge.net>
 | ||
| 
 | ||
| 	PR libfortran/23803
 | ||
| 	* intrinsics/getXid.c: Add getpid wrapper for MinGW.
 | ||
| 	* intrinsics/getlog.c: Add getlogin wrapper for MinGW.
 | ||
| 	* intrinsics/hostnm.c: Add gethostname wrapper for MinGW.
 | ||
| 
 | ||
| 2005-09-24  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/23802
 | ||
| 	* intrinsics/sleep.c: Add correct sleep macro for MinGW.
 | ||
| 
 | ||
| 2005-09-24  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/23380
 | ||
| 	* intrinsics/cpu_time.c (__cpu_time_1): Provide a MS Windows
 | ||
| 	version.
 | ||
| 
 | ||
| 2005-09-14  Jerry DeLisle  <jvdelisle@verizon.net
 | ||
| 
 | ||
| 	PR fortran/21875 Internal Unit Array I/O, NIST
 | ||
| 	* libgfortran.h: Add run time error code for array stride.
 | ||
| 	* runtime/error.c (translate_error): Add error message for
 | ||
| 	array stride.
 | ||
| 	* io/io.h: Add array descriptor pointer to IOPARM structure.
 | ||
| 	Add prtotypes for two new functions.
 | ||
| 	* io/transfer.c (data_transfer_init): Removed initialization and
 | ||
| 	moved to unit.c (get_unit)
 | ||
| 	* io/transfer.c (next_record_r): Include internal unit read
 | ||
| 	functionality.
 | ||
| 	* io/transfer.c (next_record_w): Include internal unit write
 | ||
| 	functionality, including padding of character array records.
 | ||
| 	* io/unit.c (get_array_unit_len): New function to return the number
 | ||
| 	of records in the character array 'file' from the array descriptor.
 | ||
| 	* io/unit.c (get_unit): Gathered initialization code from
 | ||
| 	init_data_transfer for internal units and added initialization of
 | ||
| 	character array unit.
 | ||
| 	* io/unit.c (is_array_io): New function to determine if internal unit
 | ||
| 	is an array.
 | ||
| 	* io/unix.c (mem_alloc_w_at): Add error checks for bad record length
 | ||
| 	and end of file.
 | ||
| 
 | ||
| 2005-09-13  Richard Sandiford  <richard@codesourcery.com>
 | ||
| 
 | ||
| 	PR target/19269
 | ||
| 	* intrinsics/cshift0.c (cshift0): Add an extra size argument.
 | ||
| 	(cshift0_1, cshift0_2, cshift0_4, cshift0_8): Replace explicit
 | ||
| 	implementations with...
 | ||
| 	(DEFINE_CSHIFT): ...this new macro.  Define character versions too.
 | ||
| 	* intrinsics/eoshift0.c (zeros): Delete.
 | ||
| 	(eoshift0): Add extra size and filler arguments.  Use memset if no
 | ||
| 	bound is provided.
 | ||
| 	(eoshift0_1, eoshift0_2, eoshift0_4, eoshift0_8): Replace explicit
 | ||
| 	implementations with...
 | ||
| 	(DEFINE_EOSHIFT): ...this new macro.  Define character versions too.
 | ||
| 	* intrinsics/eoshift2.c (zeros): Delete.
 | ||
| 	(eoshift2): Add extra size and filler arguments.  Use memset if no
 | ||
| 	bound is provided.
 | ||
| 	(eoshift2_1, eoshift2_2, eoshift2_4, eoshift2_8): Replace explicit
 | ||
| 	implementations with...
 | ||
| 	(DEFINE_EOSHIFT): ...this new macro.  Define character versions too.
 | ||
| 	* intrinsics/pack.c (pack_internal): New static function, reusing
 | ||
| 	the contents of pack and adding an extra size argument.  Change
 | ||
| 	"mptr" rather than "m" when calculating the array size.
 | ||
| 	(pack): Redefine as a forwarder to pack_internal.
 | ||
| 	(pack_s_internal): New static function, reusing the contents of
 | ||
| 	pack_s and adding an extra size argument.
 | ||
| 	(pack_s): Redefine as a forwarder to pack_s_internal.
 | ||
| 	(pack_char, pack_s_char): New functions.
 | ||
| 	* intrinsics/reshape.c (reshape_internal): New static function,
 | ||
| 	reusing the contents of reshape and adding an extra size argument.
 | ||
| 	(reshape): Redefine as a forwarder to reshape_internal.
 | ||
| 	(reshape_char): New function.
 | ||
| 	* intrinsics/spread.c (spread_internal): New static function,
 | ||
| 	reusing the contents of spread and adding an extra size argument.
 | ||
| 	(spread): Redefine as a forwarder to spread_internal.
 | ||
| 	(spread_char): New function.
 | ||
| 	* intrinsics/transpose.c (transpose_internal): New static function,
 | ||
| 	reusing the contents of transpose and adding an extra size argument.
 | ||
| 	(transpose): Redefine as a forwarder to transpose_internal.
 | ||
| 	(transpose_char): New function.
 | ||
| 	* intrinsics/unpack.c (unpack_internal): New static function, reusing
 | ||
| 	the contents of unpack1 and adding extra size and fsize arguments.
 | ||
| 	(unpack1): Redefine as a forwarder to unpack_internal.
 | ||
| 	(unpack0): Call unpack_internal instead of unpack1.
 | ||
| 	(unpack1_char, unpack0_char): New functions.
 | ||
| 	* m4/cshift1.m4 (cshift1): New static function, reusing the contents
 | ||
| 	of cshift1_<kind> and adding an extra size argument.
 | ||
| 	(cshift1_<kind>): Redefine as a forwarder to cshift1.
 | ||
| 	(cshift1_<kind>_char): New function.
 | ||
| 	* m4/eoshift1.m4 (zeros): Delete.
 | ||
| 	(eoshift1): New static function, reusing the contents of
 | ||
| 	eoshift1_<kind> and adding extra size and filler arguments.
 | ||
| 	Fix calculation of hstride.  Use memset if no bound is provided.
 | ||
| 	(eoshift1_<kind>): Redefine as a forwarder to eoshift1.
 | ||
| 	(eoshift1_<kind>_char): New function.
 | ||
| 	* m4/eoshift3.m4 (zeros): Delete.
 | ||
| 	(eoshift3): New static function, reusing the contents of
 | ||
| 	eoshift3_<kind> and adding extra size and filler arguments.
 | ||
| 	Use memset if no bound is provided.
 | ||
| 	(eoshift3_<kind>): Redefine as a forwarder to eoshift3.
 | ||
| 	(eoshift3_<kind>_char): New function.
 | ||
| 	* generated/cshift1_4.c, generated/cshift1_8.c,
 | ||
| 	* generated/eoshift1_4.c, generated/eoshift1_8.c,
 | ||
| 	* generated/eoshift3_4.c, generated/eoshift3_8.c: Regenerate.
 | ||
| 
 | ||
| 2005-09-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20179
 | ||
| 	* io/unix.c (is_preconnected): Add function to test if a stream
 | ||
| 	corresponds to a preconnected unit.
 | ||
| 	* io/io.h: Add prototype for is_preconnected.
 | ||
| 	* io/transfer.c (data_transfer_init): Do not truncate
 | ||
| 	preconnected units.
 | ||
| 
 | ||
| 2005-09-10  Janne Blomqvist  <jblomqvi@cc.hut.fi>
 | ||
| 
 | ||
| 	* io/unix.c: Remove mmap code.
 | ||
| 
 | ||
| 2005-09-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/23784
 | ||
| 	* io/close.c (st_close): Call library_end even in case of error.
 | ||
| 
 | ||
| 2005-09-09  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	* io/io.h:  Add iomsg as last field of st_parameter.
 | ||
| 	* runtime/error.c (generate_error):  If iomsg is present, copy
 | ||
| 	the message there.
 | ||
| 
 | ||
| 2005-09-09  Richard Sandiford  <richard@codesourcery.com>
 | ||
| 
 | ||
| 	PR fortran/12840
 | ||
| 	* runtime/memory.c (internal_malloc_size): Return a null pointer
 | ||
| 	if the size is zero.
 | ||
| 	(internal_free): Do nothing if the pointer is null.
 | ||
| 	(internal_realloc_size, internal_realloc, internal_realloc64): New.
 | ||
| 
 | ||
| 2005-09-07  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/23262
 | ||
| 	* acinclude.m4 (LIBGFOR_CHECK_CRLF): New check.
 | ||
| 	* configure.ac: Use new check.
 | ||
| 	* configure.in: Regenerate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* io/transfer.c (next_record_w): Add case for CRLF as line
 | ||
| 	terminator.
 | ||
| 	* io/unix.c (tempfile, regular_file): Open files with
 | ||
| 	O_BINARY on systems with CRLF.
 | ||
| 
 | ||
| 2005-09-07  Steve Ellcey  <sje@cup.hp.com>
 | ||
| 
 | ||
| 	PR libfortran/23419
 | ||
| 	* io/write.c (extract_int): Use memcpy to access buffer.
 | ||
| 	(extract_uint): Ditto.
 | ||
| 	(extract_real): Ditto.
 | ||
| 
 | ||
| 2005-09-05  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	* io/list_read.c:  Adjust size of of value to 32 (to hold
 | ||
| 	kind=16 complex values).
 | ||
| 
 | ||
| 2005-09-04  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/23321
 | ||
| 	* io/transfer.c(data_transfer_init):  Check for a too-large
 | ||
| 	record number.  Return if sseek failed.
 | ||
| 
 | ||
| 2005-09-03  Jakub Jelinek  <jakub@redhat.com>
 | ||
| 
 | ||
| 	* io/read.c (read_x): Take int argument instead of fnode * and
 | ||
| 	digging the N from F->u.n.
 | ||
| 	* io/io.h (read_x): Adjust prototype.
 | ||
| 	* io/transfer.c (formatted_transfer): Adjust callers.  Don't clobber
 | ||
| 	f->u.n for FMT_T.
 | ||
| 
 | ||
| 2005-09-02  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* io/unix.c (stream_ttyname): Protect use of ttyname by
 | ||
| 	HAVE_TTYNAME macro.
 | ||
| 	* configure.ac: Add check for ttyname.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 2005-09-02  Andreas Jaeger  <aj@suse.de>
 | ||
| 
 | ||
| 	* libgfortran.h: Add prototype for init_compile_options.
 | ||
| 
 | ||
| 	* io/io.h: Add prototype for notify_std.
 | ||
| 
 | ||
| 2005-08-31  Steve Ellcey  <sje@cup.hp.com>
 | ||
| 
 | ||
| 	* io/read.c (set_integer): Use memcpy to fill buffer.
 | ||
| 
 | ||
| 2005-08-31  Steve Ellcey  <sje@cup.hp.com>
 | ||
| 
 | ||
| 	PR target/23556
 | ||
| 	* io/read.c (convert_real): Use memcpy to fill buffer.
 | ||
| 
 | ||
| 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
 | ||
| 	if target can unlink open files.
 | ||
| 	* configure.ac: Use this new test.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* aclocal.ac: Regenerate.
 | ||
| 	* io/io.h: Add prototype for unpack_filename.
 | ||
| 	* io/close.c (st_close): Delete file after closing unit if
 | ||
| 	HAVE_UNLINK_OPEN_FILE is not defined.
 | ||
| 	* io/unix.c (unpack_filename): Unlink scratch file after opening
 | ||
| 	it only if HAVE_UNLINK_OPEN_FILE is defined.
 | ||
| 
 | ||
| 2005-08-17  Kelley Cook  <kcook@gcc.gnu.org>
 | ||
| 
 | ||
| 	* All files: Update FSF address.
 | ||
| 
 | ||
| 2005-08-16  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/23428
 | ||
| 	* io/transfer.c (iolength_transfer):  Remove __attribute__ ((unused))
 | ||
| 	from type.  Return correct length for inquire(iolength=)
 | ||
| 	for complex variables.
 | ||
| 
 | ||
| 2005-08-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 	    Steven Bosscher  <stevenb@suse.de>
 | ||
| 
 | ||
| 	PR libfortran/20006
 | ||
| 	* Makefile.am: Add file runtime/compile_options.c.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* libgfortran.h: Create structure compile_options_t. Define the
 | ||
| 	compile_options variable and GFC_STD_ macros.
 | ||
| 	* runtime/compile_options.c: New file.
 | ||
| 	* runtime/error.c (notify_std): New function.
 | ||
| 	* runtime/main.c (init): Call init_compile_options during
 | ||
| 	initialization.
 | ||
| 	* io/format.c: Use the new notify_std function for the $
 | ||
| 	descriptor extension.
 | ||
| 
 | ||
| 2005-08-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 	* Makefile.am: Add file intrinsics/tty.c to Makefile process.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* io/io.h: Prototypes for new functions stream_isatty and
 | ||
| 	stream_ttyname.
 | ||
| 	* io/unix (stream_isatty, stream_ttyname): New functions to call
 | ||
| 	isatty() and ttyname() on a given unit.
 | ||
| 	* intrinsics/tty.c: New file to implement g77 intrinsics TTYNAM
 | ||
| 	and ISATTY.
 | ||
| 
 | ||
| 2005-08-08  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/23154
 | ||
| 	* io/transfer.c (data_transfer_init): Initialize
 | ||
| 	current_unit->bytes_left for a read.
 | ||
| 
 | ||
| 2005-08-07  Janne Blomqvist  <jblomqvi@cc.hut.fi>
 | ||
| 
 | ||
| 	PR fortran/22390
 | ||
| 	* io/backspace.c: File removed, contents moved to ...
 | ||
| 	* io/endfile.c: Ditto.
 | ||
| 	* io/rewind.c: Ditto.
 | ||
| 	* io/file_pos.c: New file, ... here.
 | ||
| 	* Makefile.am: Add file_pos.c to list, remove obsolete files.
 | ||
| 	* Makefile.in: Regenerated.
 | ||
| 
 | ||
| 2005-08-07  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* io/io.h: Change DEFAULT_TEMPDIR to /tmp instead of /var/tmp.
 | ||
| 	* io/unix.c (tempfile): Look at the TEMP environment variable
 | ||
| 	to find the temporary files directory. Whitespace correction.
 | ||
| 
 | ||
| 2005-08-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* io/unix.c: Add O_RDWR to open() call.
 | ||
| 
 | ||
| 2005-08-04 Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	* transfer.c (data_transfer_init): Truncate file in
 | ||
| 	sequential WRITE when last_record == 0, rather than
 | ||
| 	current_record.  Cures problem on RH9.
 | ||
| 
 | ||
| 2005-08-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* libgfortran.h: When isfinite is not provided by the system,
 | ||
| 	define it as a macro, so that it can accept any floating point
 | ||
| 	type.
 | ||
| 
 | ||
| 2005-08-01  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/23178
 | ||
| 	* intrinsics/flush.c (flush_i8): Add function flush_i8. Update
 | ||
| 	copyright years.
 | ||
| 
 | ||
| 2005-07-31  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/21787
 | ||
| 	* intrinsics/abort.c (abort): Close units before aborting.
 | ||
| 	Updated copyright years.
 | ||
| 
 | ||
| 2005-07-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/22436
 | ||
| 	* io/write.c (write_real): Add default formats for real(10) and
 | ||
| 	real(16).
 | ||
| 
 | ||
| 2005-07-30 Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR fortran/22570 and related issues.
 | ||
| 	* transfer.c (formatted_transfer): Make sure that there
 | ||
| 	really is data present before X- or T- editing. Move all
 | ||
| 	treatment of tabbing during writes to start of next data
 | ||
| 	producing format. Suppress incorrect zeroing of bytes_left
 | ||
| 	in slash formating. Insert int cast for assignment of a
 | ||
| 	difference of two gfc_offsets.
 | ||
| 
 | ||
| 2005-07-23  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	* io/write.c (write_float): Revise output of IEEE exceptional
 | ||
| 	values to comply with F95 and F2003 standards.
 | ||
| 
 | ||
| 2005-07-22 Jerry DeLisle <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/22570
 | ||
| 	* io/unit.c (init_units): Replace BLANK_ZERO with
 | ||
| 	BLANK_UNSPECIFIED.
 | ||
| 
 | ||
| 2005-07-22 Jerry DeLisle <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/21875  (FM111.f)
 | ||
| 	* io/read.c (next_char): Return a ' ' character when BLANK_ZERO
 | ||
| 	or BLANK_NULL are active.
 | ||
| 	(read_decimal): Interpret ' ' character correctly for BZ or BN.
 | ||
| 	(read_radix): Interpret ' ' character correctly for BZ or BN.
 | ||
| 	(read_f): Interpret ' ' character correctly for BZ or BN.
 | ||
| 
 | ||
| 2005-07-22 Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/22570
 | ||
| 	* read.c (read_x): Correct the condition for doing the
 | ||
| 	x-editing during formatted input.
 | ||
| 	* transfer.c (formatted_transfer): Cast offset difference
 | ||
| 	as int, clean-up arithmetic with new variable, bytes_used,
 | ||
| 	zero counters for FMT_SLASH,
 | ||
| 	(data_transfer_init) Zero X- and T-editing counters
 | ||
| 	unconditionally.
 | ||
| 	(next_record_w) Zero X- and T-editing counters.
 | ||
| 	unconditionally.
 | ||
| 
 | ||
| 2005-07-17  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	* io/write.c (write_float): Fix field width checks for
 | ||
| 	printing 'Infinity' or 'Inf'.
 | ||
| 	(output_float): Fix typo in comment.
 | ||
| 
 | ||
| 2005-07-12 Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/16435
 | ||
| 	* transfer.c (formatted_transfer): Correct the problems
 | ||
| 	with X- and T-editting that caused TLs followed by TRs
 | ||
| 	to overwrite data, which caused NIST FM908.FOR to fail
 | ||
| 	on many tests.
 | ||
| 	(data_transfer_init): Zero X- and T-editting counters at
 | ||
| 	the start of formatted IO.
 | ||
| 	* write.c (write_x): Write specified number of skips with
 | ||
| 	specified number of spaces at the end.
 | ||
| 
 | ||
| 2005-07-13 Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	* io/read.c (read_complex): Prevent X formatting during reads
 | ||
| 	from going beyond EOR to fix NIST fm908.FOR failure.
 | ||
| 	* io/list_read.c (read_complex): Allow complex data in list-
 | ||
| 	directed reads to have eols either side of the comma to
 | ||
| 	fix NIST FM906.FOR failure.
 | ||
| 
 | ||
| 2005-07-12  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21593
 | ||
| 	* io/unix.c:  Add member special_file to type unix_stream.
 | ||
| 	(fd_truncate):  Don't call ftruncate or chsize if
 | ||
| 	s refers to a special file.
 | ||
| 	(fd_to_stream):  initialize s->special_file.
 | ||
| 
 | ||
| 2005-07-11  David Edelsohn  <edelsohn@gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/22412
 | ||
| 	* io/write.c (otoa): Bias p by SCRATCH_SIZE, not
 | ||
| 	sizeof (SCRATCH_SIZE).
 | ||
| 	(btoa): Same.
 | ||
| 
 | ||
| 2005-07-09  Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/21875  (FM111.f)
 | ||
| 	* io/read.c (next_char): Return a ' ' character when BLANK_ZERO or
 | ||
| 	BLANK_NULL are active.
 | ||
| 	(read_decimal): Interpret ' ' character correctly for BZ or BN.
 | ||
| 	(read_radix): Interpret ' ' character correctly for BZ or BN.
 | ||
| 	(read_f): Interpret ' ' character correctly for BZ or BN.
 | ||
| 	* gfortran.dg/test (fmt_read_bz_bn.f90): New test case.
 | ||
| 
 | ||
| 2005-07-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 	    Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/22217
 | ||
| 	* io/write.c (extract_unit):  New function; extract
 | ||
| 	ints as unsigned signed int of the correct size.
 | ||
| 	(write_int):  Use it.
 | ||
| 	* runtime/error.c:  Adjust copyright years.
 | ||
| 	Adjust size of buffer to maximum that can occur.
 | ||
| 
 | ||
| 2005-07-07  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 | ||
| 
 | ||
| 	* libgfortran.h (GFC_ARRAY_DESCRIPTOR): Replace 'type *base' by
 | ||
| 	'size_t offset'.
 | ||
| 	* intrinsics/cshift0.c, intrinsics/eoshift0.c,
 | ||
| 	intrinsics/eoshift2.c,intrinsics/pack_generic.c,
 | ||
| 	intrinsics/reshape_generic.c, intrinsics/spread_generic.c,
 | ||
| 	intrinsics/transpose_generic.c, intrinsics/unpack_generic,
 | ||
| 	m4/cshift1.m4, m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4,
 | ||
| 	m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/reshape.m4,
 | ||
| 	m4,transpose.m4: Set renamed field 'offset' to zero instead of
 | ||
| 	'base'.
 | ||
| 	* generated/all_l4.c, generated/all_l8.c,
 | ||
| 	generated/any_l4.c, generated/any_l8.c, generated/count_4_l4.c,
 | ||
| 	generated/count_4_l8.c, generated/count_8_l4.c,
 | ||
| 	generated/count_8_l8.c, generated/chift1_4.c,
 | ||
| 	generated/cshift1_8.c, generated/eoshift1_4.c,
 | ||
| 	generated/eoshift1_8.c, generated/eoshift3_4.c,
 | ||
| 	generated/eoshift3_8.c, generated/matmul_c4.c,
 | ||
| 	generated/matmul_c8.c, generated/matmul_i4.c, matmul_i8.c,
 | ||
| 	generated/matmul_l4.c, generated/matmul_l8.c,
 | ||
| 	generated/matmul_r4.c, generated/matmul_r8.c,
 | ||
| 	generated/maxloc0_4_i4.c, generated/maxloc0_4_i8.c,
 | ||
| 	generated/maxloc0_4_r4.c, generated/maxloc0_4_r8.c,
 | ||
| 	generated/maxloc0_8_i4.c, generated/maxloc0_8_i8.c,
 | ||
| 	generated/maxloc0_8_r4.c, generated/maxloc0_8_r8.c,
 | ||
| 	generated/maxloc1_4_i4.c, generated/maxloc1_4_i8.c,
 | ||
| 	generated/maxloc1_4_r4.c, generated/maxloc1_4_r8.c,
 | ||
| 	generated/maxloc1_8_i4.c, generated/maxloc1_8_i8.c,
 | ||
| 	generated/maxloc1_8_r4.c, generated/maxloc1_8_r8.c,
 | ||
| 	generated/maxval_i4.c, generated/maxval_i8.c,
 | ||
| 	generated/maxval_r4.c, generated/maxval_r8.c,
 | ||
| 	generated/minloc0_4_i4.c, generated/minloc0_4_i8.c,
 | ||
| 	generated/minloc0_4_r4.c, generated/minloc0_4_r8.c,
 | ||
| 	generated/minloc0_8_i4.c, generated/minloc0_8_i8.c,
 | ||
| 	generated/minloc0_8_r4.c, generated/minloc0_8_r8.c,
 | ||
| 	generated/minloc1_4_i4.c, generated/minloc1_4_i8.c,
 | ||
| 	generated/minloc1_4_r4.c, generated/minloc1_4_r8.c,
 | ||
| 	generated/minloc1_8_i4.c, generated/minloc1_8_i8.c,
 | ||
| 	generated/minloc1_8_r4.c, generated/minloc1_8_r8.c,
 | ||
| 	generated/minval_i4.c, generated/minval_i8.c,
 | ||
| 	generated/minval_r4.c, generated/minval_r8.c,
 | ||
| 	generated/product_c4.c, generated/product_c8.c,
 | ||
| 	generated/product_i4.c, generated/product_i8.c,
 | ||
| 	generated/product_r4.c, generated/product_r8.c,
 | ||
| 	generated/reshape_c4.c, generated/reshape_c8.c,
 | ||
| 	generated/reshape_i4.c, generated/reshape_i8.c,
 | ||
| 	generated/sum_c4.c, generated/sum_c8.c, generated/sum_i4.c,
 | ||
| 	generated/sum_i8.c, generated/sum_r4.c, generated/sum_r8.c,
 | ||
| 	generated/transpose_c4.c, generated/transpose_c8.c,
 | ||
| 	generated/transpose_i4.c, generated/transpose_i8.c: Regenerate:
 | ||
| 
 | ||
| 2005-07-07  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21594
 | ||
| 	* intrinsics/eoshift0.c:  If abs(shift) > len, fill the
 | ||
| 	the whole array with the boundary value, but don't overrun it.
 | ||
| 	* intrinsics/eoshift2.c:  Likewise.
 | ||
| 	* m4/eoshift1.m4:  Likewise.
 | ||
| 	* m4/eoshift3.m4:  Likewise.
 | ||
| 	* generated/eoshift1_4.c:  Regenerated.
 | ||
| 	* generated/eoshift1_8.c:  Regenerated.
 | ||
| 	* generated/eoshift3_4.c:  Regenerated.
 | ||
| 	* generated/eoshift3_8.c:  Regenerated.
 | ||
| 
 | ||
| 2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>
 | ||
| 
 | ||
| 	PR fortran/16531
 | ||
| 	* io/transfer.c (formatted_transfer): Enable FMT_A on other types to
 | ||
| 	support Hollerith constants.
 | ||
| 
 | ||
| 2005-07-01  Andreas Jaeger  <aj@suse.de>
 | ||
| 
 | ||
| 	* intrinsics/unpack_generic.c: Remove const from parameter.
 | ||
| 
 | ||
| 	* io/transfer.c (formatted_transfer): Remove unused variable.
 | ||
| 
 | ||
| 2005-06-28  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/22142
 | ||
| 	* m4/eoshift1.m4:  Correct bstride (it needs to be multiplied
 | ||
| 	by size since it's a char pointer).
 | ||
| 	* m4/eoshift1_4.c:  Regenerated.
 | ||
| 	* m4/eoshift1_8.c:  Regenerated.
 | ||
| 
 | ||
| 2005-06-28  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/22142
 | ||
| 	* m4/eoshift3.m4:  Correct bstride (it needs to be multiplied
 | ||
| 	by size since it's a char pointer).
 | ||
| 	* m4/eoshift3_4.c:  Regenerated.
 | ||
| 	* m4/eoshift3_8.c:  Regenerated.
 | ||
| 
 | ||
| 2005-06-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/22170
 | ||
| 	* io/transfer.c (formatted_transfer): Do not iterate on the
 | ||
| 	repeat count of a FMT_SLASH, since this is already done in
 | ||
| 	next_format().
 | ||
| 
 | ||
| 2005-06-25  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/22144
 | ||
| 	* m4/cshift1.m4: Remove const from argument ret.
 | ||
| 	Populate return array descriptor if ret->data is NULL.
 | ||
| 	* m4/eoshift1.m4: Likewise.
 | ||
| 	* m4/eoshift3.m4: Likewise.
 | ||
| 	* generated/cshift1_4.c:  Regenerated.
 | ||
| 	* generated/cshift1_8.c:  Regenerated.
 | ||
| 	* generated/eoshift1_4.c:  Regenerated.
 | ||
| 	* generated/eoshift1_8.c:  Regenerated.
 | ||
| 	* generated/eoshift3_4.c:  Regenerated.
 | ||
| 	* generated/eoshift3_8.c:  Regenerated.
 | ||
| 
 | ||
| 2005-06-24  Jerry DeLisle <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	PR libfortran/21915
 | ||
| 	* Makefile.am: Include intrinsics/hyper.c.
 | ||
| 	* c99_protos.h: Add prototypes for single precision versions of
 | ||
| 	acosh, asinh, and atanh for platforms that do not have these.
 | ||
| 	* config.h.in: Add #undef for wrappers.
 | ||
| 	* configure.ac: Add checks for single precision versions.
 | ||
| 	* aclocal.m4: Regenerated.
 | ||
| 	* Makefile.in: Regenerated.
 | ||
| 	* configure: Regenerated.
 | ||
| 	* intrinsics/hyper.c: New file, adds new wrapper functions.
 | ||
| 
 | ||
| 2005-06-23  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* intrinsics/c99_functions.c (log10l): New log10l function for
 | ||
| 	systems where this is not available.
 | ||
| 	* c99_protos.h: Prototype for log10l function.
 | ||
| 	* libgfortran.h: Use generated kinds.h to define GFC_INTEGER_*,
 | ||
| 	GFC_UINTEGER_*, GFC_LOGICAL_*, GFC_REAL_*, GFC_COMPLEX_*. Update
 | ||
| 	prototypes for gfc_itoa and xtoa.
 | ||
| 	* io/io.h: Update prototypes for set_integer and max_value.
 | ||
| 	* io/list_read.c (convert_integer): Use new
 | ||
| 	GFC_(INTEGER|REAL)_LARGEST type.
 | ||
| 	* io/read.c (set_integer): Likewise.
 | ||
| 	(max_value): Likewise.
 | ||
| 	(convert_real): Likewise.
 | ||
| 	(real_l): Likewise.
 | ||
| 	(next_char): Likewise.
 | ||
| 	(read_decimal): Likewise.
 | ||
| 	(read_radix): Likewise.
 | ||
| 	(read_f): Likewise.
 | ||
| 	* io/write.c (extract_int): Use new GFC_INTEGER_LARGEST type.
 | ||
| 	(extract_real): Use new GFC_REAL_LARGEST type.
 | ||
| 	(calculate_exp): Likewise.
 | ||
| 	(calculate_G_format): Likewise.
 | ||
| 	(output_float): Likewise. Use log10l for long double values.
 | ||
| 	Add comment for sprintf format. Use GFC_REAL_LARGEST_FORMAT.
 | ||
| 	(write_l): Use new GFC_INTEGER_LARGEST type.
 | ||
| 	(write_float): Use new GFC_REAL_LARGEST type.
 | ||
| 	(write_int): Remove useless special case for (len < 8).
 | ||
| 	(write_decimal): Use GFC_INTEGER_LARGEST.
 | ||
| 	(otoa): Use GFC_UINTEGER_LARGEST as argument.
 | ||
| 	(btoa): Use GFC_UINTEGER_LARGEST as argument.
 | ||
| 	* runtime/error.c (gfc_itoa): Use GFC_INTEGER_LARGEST as
 | ||
| 	argument.
 | ||
| 	(xtoa): Use GFC_UINTEGER_LARGEST as argument.
 | ||
| 	* Makefile.am: Use mk-kinds-h.sh to generate header kinds.h
 | ||
| 	with all Fortran kinds available.
 | ||
| 	* configure.ac: Check for strtold and log10l.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* aclocal.m4: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* mk-kinds-h.sh: Configuration script for available integer
 | ||
| 	and real kinds.
 | ||
| 
 | ||
| 
 | ||
| 2005-06-18  Janne Blomqvist  <jblomqvi@cc.hut.fi>
 | ||
| 
 | ||
| 	* unix.c (stream_at_bof): Don't assume that all non-mmapped files
 | ||
| 	are non-seekable.
 | ||
| 	(stream_at_eof): Likewise.
 | ||
| 
 | ||
| 2005-06-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/19155
 | ||
| 	* io/read.c (convert_real): strtod can set errno to EINVAL on an
 | ||
| 	empty string, but we shouldn't have an error in that case.
 | ||
| 
 | ||
| 2005-06-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/19216
 | ||
| 	* io/list_read.c (eat_separator): No need to call next_record,
 | ||
| 	even in non-namelist_mode.
 | ||
| 
 | ||
| 2005-06-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* io/transfer.c (formatted_transfer): Fix typo in error message.
 | ||
| 
 | ||
| 2005-06-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/16436
 | ||
| 	* io/transfer.c (read_sf): Correct updating of bytes_left field.
 | ||
| 	(formatted_transfer): Correct updating of bytes_left field and
 | ||
| 	reformatting code (comments and whitespace).
 | ||
| 	* io/unix.c (move_pos_offset): "active" field should not be
 | ||
| 	changed here. Whitespace corrections.
 | ||
| 
 | ||
| 2005-06-15  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/21950
 | ||
| 	* intrinsics/c99_functions.c (scalbn): Provide fallback
 | ||
| 	implementation for scalbn.
 | ||
| 	* c99_protos.h: Prototype for scalbn.
 | ||
| 	* configure.ac: Add check for scalbn.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 
 | ||
| 2005-06-14  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	* intrinsics/eoshift0.c:  Removed prototype for eoshift0.
 | ||
| 	* intrinsics/eoshift2.c:  Removed prototype for eoshift2.
 | ||
| 
 | ||
| 2005-06-14  Tom Tromey  <tromey@redhat.com>
 | ||
| 
 | ||
| 	PR libgcj/19877:
 | ||
| 	* configure, aclocal.m4, Makefile.in: Rebuilt.
 | ||
| 
 | ||
| 2005-06-12  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21594
 | ||
| 	* intrinsics/eoshift0.c:  Add prototype for eoshift0.
 | ||
| 	* intrinsics/eoshift2.c:  Add prototype for eoshift2.
 | ||
| 
 | ||
| 2005-06-12  Steven G. Kargl <kargls@comcast.net>
 | ||
| 	    Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/PR21797
 | ||
| 	* m4/cexp.m4 (csqrt`'q):  Add type qualifyer to
 | ||
| 	sqrt and fabs.
 | ||
| 	* generated/exp_c4.c:  Regenerated.
 | ||
| 
 | ||
| 2005-06-12  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/19155
 | ||
| 	* io/read.c (read_f): Take care of spaces after initial sign.
 | ||
| 
 | ||
| 2005-06-11  Thomas Koenig  <Thomas.Koenig@onlinde.de>
 | ||
| 
 | ||
| 	PR libfortran/21333
 | ||
| 	* Makefile.am: Add in_pack_c4.c, in_pack_c8.c, in_unpack_c4.c
 | ||
| 	and in_unpack_c8.c.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* libgfortran.h:  Declare internal_pack_c4, internal_pack_c8,
 | ||
| 	internal_unpack_c4 and internal_unpack_c8.
 | ||
| 	* m4/in_pack.m4: Use rtype_ccode insteald of rtype_kind
 | ||
| 	in function name.
 | ||
| 	Use sizeof (rtype_name) as size for memory allocation.
 | ||
| 	* m4/in_unpack.m4: Use rtype_ccode insteald of rtype_kind
 | ||
| 	in function name.
 | ||
| 	Use sizeof (rtype_name) for calculation of sizes for memcpy.
 | ||
| 	* runtime/in_pack_generic.c:  For real, integer and logical
 | ||
| 	call internal_pack_4 if size==4 and internal_pack_8 if
 | ||
| 	size==8.
 | ||
| 	For complex, call internal_pack_c4 if size==8 and
 | ||
| 	internal_pack_c8 if size==16.
 | ||
| 	* runtime/in_unpack_generic.c: For real, integer and logical
 | ||
| 	call internal_unpack_4 if size==4 and internal_unpack_8 if
 | ||
| 	size==8.
 | ||
| 	For complex, call internal_unpack_c4 if size==8 and
 | ||
| 	internal_unpack_c8 if size==16.
 | ||
| 	* generated/in_pack_i4.c:  Regenerated.
 | ||
| 	* generated/in_pack_i8.c:  Regenerated.
 | ||
| 	* generated/in_unpack_i4.c:  Regenerated.
 | ||
| 	* generated/in_unpack_i8.c:  Regenerated.
 | ||
| 	* generated/in_pack_c4.c:  New file.
 | ||
| 	* generated/in_pack_c8.c:  New file.
 | ||
| 	* generated/in_unpack_c4.c:  New file.
 | ||
| 	* generated/in_unpack_c8.c:  New file.
 | ||
| 
 | ||
| 2005-06-09  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21480
 | ||
| 	* m4/reshape.m4:  Use sizeof (rtype_name) for sizes to be passed
 | ||
| 	to reshape_packed.
 | ||
| 	* generated/reshape_c4.c:  Regenerated.
 | ||
| 	* generated/reshape_c8.c:  Regenerated.
 | ||
| 	* generated/reshape_i4.c:  Regenerated.
 | ||
| 	* generated/reshape_i8.c:  Regenerated.
 | ||
| 
 | ||
| 2005-06-07  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21926
 | ||
| 	* m4/matmul.m4:  Correct zeroing of result for non-packed
 | ||
| 	arrays with lowest stride is one.
 | ||
| 	* generated/matmul_c4.c:  Regenerated.
 | ||
| 	* generated/matmul_c8.c:  Regenerated.
 | ||
| 	* generated/matmul_i4.c:  Regenerated.
 | ||
| 	* generated/matmul_i8.c:  Regenerated.
 | ||
| 	* generated/matmul_r4.c:  Regenerated.
 | ||
| 	* generated/matmul_r8.c:  Regenerated.
 | ||
| 
 | ||
| 2005-05-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20179
 | ||
| 	* io/unix.c (fd_close): Add test so that we don't close()
 | ||
| 	stdout and stderr.
 | ||
| 
 | ||
| 2005-05-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20006
 | ||
| 	* io/format.c (parse_format_list): Set repeat count of $ format
 | ||
| 	node to 1.
 | ||
| 	* io/transfer.c (read_sf): Add g.seen_dollar to the test
 | ||
| 	concerning advancing I/O.
 | ||
| 	(data_transfer_init): Likewise.
 | ||
| 	(finalize_transfer): Likewise.
 | ||
| 
 | ||
| 2005-05-27  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	* runtime/in_pack_generic.c:  Adjust copyright years.
 | ||
| 	(in_pack_generic):  Change dimension of auxiliary arrays from
 | ||
| 	GFC_MAX_DIMENSION - 1 to GFC_MAX_DIMENSION.
 | ||
| 	* runtime/in_unpack_generic.c:  Adjust copyright years.
 | ||
| 	(in_unpack_generic):  Change dimension of auxiliary arrays from
 | ||
| 	GFC_MAX_DIMENSION - 1 to GFC_MAX_DIMENSION.
 | ||
| 
 | ||
| 2005-05-26  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/17283
 | ||
| 	* intrinsics/unpack_generic.c:  Fix name of routine
 | ||
| 	on top.  Update copyright years.
 | ||
| 	(unpack1):  Remove const from return array descriptor.
 | ||
| 	rs:  New variable, for calculating return sizes.
 | ||
| 	Populate return array descriptor if ret->data is NULL.
 | ||
| 
 | ||
| 2005-05-22  Peter Wainwright  <prw@ceiriog1.demon.co.uk>
 | ||
| 
 | ||
| 	PR libfortran/21376
 | ||
| 	* io/write.c (output_float): Rework logic to avoid call to log10
 | ||
| 	with argument equal to zero.
 | ||
| 
 | ||
| 2005-05-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
 | ||
| 
 | ||
| 	* configure.ac: Check for trunc and truncf in libm.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* config.h.in: Likewise.
 | ||
| 	* intrinsics/c99_functions.c (trunc, truncf): New functions.
 | ||
| 	* c99_protos.h (trunc, truncf): Declare them.
 | ||
| 
 | ||
| 2005-05-18  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21127
 | ||
| 	* Makefile.am:  Really commit.
 | ||
| 	* Makefile.in:  Really commit.
 | ||
| 
 | ||
| 2005-05-18  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21127
 | ||
| 	* Makefile.am:  Add generated/reshape_c4.c and
 | ||
| 	generated/reshape_c8.c.
 | ||
| 	* Makefile.in:  Regenerated.
 | ||
| 	* m4/iparm.m4:  Define rtype_ccode to be c4 or c8 for
 | ||
| 	complex types, 4 or 8 otherwise.
 | ||
| 	* m4/reshape.m4:  Use rtype_ccode instead of rtype_kind
 | ||
| 	in function name.
 | ||
| 	* generated/reshape_c4.c: New file.
 | ||
| 	* generated/reshape_c8.c: New file.
 | ||
| 
 | ||
| 2005-05-16  Andreas Jaeger  <aj@suse.de>
 | ||
| 
 | ||
| 	* configure.ac: Add additional warning flags.
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 	* io/write.c (calculate_G_format): Remove unused parameter.
 | ||
| 	(output_float): Remove unused parameter.
 | ||
| 	(write_float): Change callers.
 | ||
| 	(nml_write_obj): Avoid signed warning.
 | ||
| 	Make variable const to support -Wwrite-strings.
 | ||
| 
 | ||
| 	* io/unix.c (fd_alloc, mmap_open, mmap_sfree, mem_sfree,
 | ||
| 	mem_truncate): Mark argument as unused.
 | ||
| 
 | ||
| 	* io/unit.c (get_unit): Mark argument as unused.
 | ||
| 	(init_units): Avoid warning about signed comparision.
 | ||
| 
 | ||
| 	* io/transfer.c (next_record_r): Remove unused parameter.
 | ||
| 	(next_record_w): Remove unused parameter.
 | ||
| 	(next_record): Change callers.
 | ||
| 	(iolength_transfer): Mark arguments as unused.
 | ||
| 
 | ||
| 	* io/open.c: Add initializer.
 | ||
| 
 | ||
| 	* io/list_read.c (read_character): Mark argument as unused.
 | ||
| 	(nml_match_name): Add const to make compile with -Wwrite-strings.
 | ||
| 
 | ||
| 	* io/format.c: Add initializer.
 | ||
| 
 | ||
| 2005-05-15  Andreas Jaeger  <aj@suse.de>
 | ||
| 
 | ||
| 	* m4/eoshift1.m4: Initialize variables to avoid warnings.
 | ||
| 	* m4/eoshift3.m4: Initialize variables to avoid warnings.
 | ||
| 	* generated/eoshift1_4.c, generated/eoshift1_8.c,
 | ||
| 	generated/eoshift3_4.c, generated/eoshift3_8.c: Regenerated.
 | ||
| 
 | ||
| 	* intrinsics/spread_generic.c (spread): Initialize variables to
 | ||
| 	avoid warnings.
 | ||
| 
 | ||
| 	* intrinsics/eoshift0.c (eoshift0): Initialize variables to avoid
 | ||
| 	warnings.
 | ||
| 	* intrinsics/eoshift2.c (eoshift2): Initialize variables to avoid
 | ||
| 	warnings.
 | ||
| 
 | ||
| 	* io/list_read.c (nml_get_obj_data): Initialize variables to avoid
 | ||
| 	warnings.
 | ||
| 
 | ||
| 	* intrinsics/pack_generic.c (pack): Remove unneeded calculation.
 | ||
| 
 | ||
| 	* m4/matmull.m4 (matmul_): Remove unneeded calculations, fix
 | ||
| 	pointer cast to avoid warning.
 | ||
| 	* generated/matmul_l4.c: Regenerated.
 | ||
| 	* generated/matmul_l8.c: Regenerated.
 | ||
| 
 | ||
| 	* Makefile.am: Remove AM_CFLAGS here.
 | ||
| 	* configure.ac: Define AM_CFLAGS and AM_FCFLAGS so that warnings
 | ||
| 	are set.  Set additionally -Wstrict-prototypes for CFLAGS.
 | ||
| 	* Makefile.in: Regenerated.
 | ||
| 	* aclocal.m4: Regenerated.
 | ||
| 	* configure: Regenerated.
 | ||
| 
 | ||
| 	* intrinsics/system_clock.c (system_clock_4, system_clock_8): Add
 | ||
| 	missing returns, reformat a bit.
 | ||
| 
 | ||
| 	* io/write.c (nml_write_obj): Use %d again - and cast to int,
 | ||
| 	st_sprintf does not handle %ld.
 | ||
| 
 | ||
| 	* io/unit.c (is_internal_unit): Add void as parameter list.
 | ||
| 
 | ||
| 	* io/transfer.c: Move prototype declarations before the functions.
 | ||
| 
 | ||
| 	* runtime/normalize.c (almostone_r4, almostone_r8): Fix parameter
 | ||
| 	list.
 | ||
| 
 | ||
| 	* intrinsics/random.c (KISS_DEFAULT_SEED): Remove extra semicolon.
 | ||
| 
 | ||
| 	* io/transfer.c: Do not use empty initializers for global objects.
 | ||
| 	Add missing initializers.
 | ||
| 
 | ||
| 	* io/lock.c: Do not use empty initializers for global objects.
 | ||
| 
 | ||
| 	* io/close.c: Add missing initializers.
 | ||
| 
 | ||
| 	* runtime/environ.c: Add missing initializers. Do not use empty
 | ||
| 	initializers for global object.
 | ||
| 	(init_string): Mark argument as unused.
 | ||
| 
 | ||
| 	* runtime/main.c (cleanup): Fix parameter list.
 | ||
| 
 | ||
| 	* io/io.h: Fix parameter lists.
 | ||
| 
 | ||
| 	* m4/transpose.m4, m4/matmul.m4: Fix pointer cast to avoid
 | ||
| 	warning.
 | ||
| 
 | ||
| 	* generated/transpose_c4.c, generated/transpose_c8.c,
 | ||
| 	generated/transpose_i4.c, generated/transpose_i8.c,
 | ||
| 	generated/matmul_c4.c, generated/matmul_c8.c,
 | ||
| 	generated/matmul_i4.c, generated/matmul_i8.c,
 | ||
| 	generated/matmul_r4.c, generated/matmul_r8.c: Regenerated.
 | ||
| 
 | ||
| 	* io/write.c (nml_write_obj): Fix 64-bit problem.
 | ||
| 
 | ||
| 	* io/list_read.c (nml_get_obj_data): Add missing braces around
 | ||
| 	initializer to avoid warnings.
 | ||
| 
 | ||
| 	* intrinsics/etime.c (etime_sub): Remove unused variable.
 | ||
| 
 | ||
| 	* intrinsics/chdir.c, intrinsics/getlog.c, intrinsics/link.c,
 | ||
| 	intrinsics/symlnk.c, intrinsics/perror.c: Include <string.h> for
 | ||
| 	prototypes.
 | ||
| 
 | ||
| 	* runtime/string.c (compare0): Remove unused variable.
 | ||
| 	* io/unit.c (init_units): Remove unused variables.
 | ||
| 	* intrinsics/getcwd.c (getcwd_i4_sub): Remove unused variable.
 | ||
| 	* intrinsics/unlink.c (unlink_i4_sub): Remove unused variable.
 | ||
| 	* intrinsics/stat.c (stat_i4_sub, fstat_i8_sub, fstat_i4_sub,
 | ||
| 	stat_i8_sub): Remove unused variable.
 | ||
| 
 | ||
| 2005-05-12  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21324
 | ||
| 	* runtime/memory.c:  Don't define GFC_CLEAR_MEMORY (it's a
 | ||
| 	performance hog).
 | ||
| 	* io/open.c (new_unit): Zero freshly allocated memory for
 | ||
| 	unit structure.
 | ||
| 	* io/unit.c (init_units):  Zero freshly allocated memory for
 | ||
| 	STDIN, STDOUT and STDERR.
 | ||
| 	* io/unix.c (open_internal):  Zero freshly allocated memory
 | ||
| 	for unix_stream.
 | ||
| 	(fd_to_stream):  Likewise.
 | ||
| 
 | ||
| 2005-05-11  Bud Davis  <bdavis@gfortran.org>
 | ||
| 
 | ||
| 	PR fortran/19478
 | ||
| 	* io/unix.c (fd_truncate): update positions when ftruncate
 | ||
| 	fails (like writing to /dev/null).
 | ||
| 
 | ||
| 2005-05-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/21471
 | ||
| 	* open.c (new_unit): Take care of the case where POSITION_APPEND
 | ||
| 	is specified (sseek to the end, and set u>-endfile).
 | ||
| 
 | ||
| 2005-05-10  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 | ||
| 
 | ||
| 	PR fortran/20178
 | ||
| 	* Makefile.am (gfor_specific_src): Add 'intrinsics/f2c_intrinsics.F90'
 | ||
| 	to dependencies.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* intrinsics/f2c_specific.F90: New file.
 | ||
| 
 | ||
| 2005-05-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20788
 | ||
| 	* io/unix.c (fd_to_stream): Add an avoid_mmap argument indicating
 | ||
| 	we don't we to mmap this stream. Use fd_open instead of mmap_open
 | ||
| 	in that case.
 | ||
| 	(open_external): Call fd_to_stream with avoid_mmap = 0.
 | ||
| 	(input_stream): Call fd_to_stream with avoid_mmap = 1.
 | ||
| 	(output_stream): Likewise.
 | ||
| 	(error_stream): Likewise.
 | ||
| 
 | ||
| 2005-05-09  Mike Stump  <mrs@apple.com>
 | ||
| 
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 2005-05-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/19155
 | ||
| 	* io/read.c (read_f): Accept 'e', 'E', 'd' and 'D' as first
 | ||
| 	non-blank characters of a real number.
 | ||
| 
 | ||
| 2005-05-04  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21354
 | ||
| 	* m4/cshift1.m4: Change dimension of auxiliary arrays from
 | ||
| 	GFC_MAX_DIMENSION - 1 to GFC_MAX_DIMENSION.
 | ||
| 	* m4/eoshift1.m4: Likewise.
 | ||
| 	* m4/eoshift3.m4: Likewise.
 | ||
| 	* m4/ifunction.m4: Likewise.
 | ||
| 	* m4/in_pack.m4: Likewise.
 | ||
| 	* m4/in_unpack.m4: Likewise.
 | ||
| 	* intrinsics/cshift0.c: Likewise.
 | ||
| 	* intrinsics/eoshift0.c: Likewise.
 | ||
| 	* intrinsics/eoshift2.c: Likewise.
 | ||
| 	* intrinsics/random.c: Likewise.
 | ||
| 	* intrinsics/spread_generic.c: Likewise.
 | ||
| 	* intrinsics/stat.c: Likewise.
 | ||
| 	* generated/all_l4.c: Regenerated.
 | ||
| 	* generated/all_l8.c: Regenerated.
 | ||
| 	* generated/any_l4.c: Regenerated.
 | ||
| 	* generated/any_l8.c: Regenerated.
 | ||
| 	* generated/count_4_l4.c: Regenerated.
 | ||
| 	* generated/count_4_l8.c: Regenerated.
 | ||
| 	* generated/count_8_l4.c: Regenerated.
 | ||
| 	* generated/count_8_l8.c: Regenerated.
 | ||
| 	* generated/cshift1_4.c: Regenerated.
 | ||
| 	* generated/cshift1_8.c: Regenerated.
 | ||
| 	* generated/eoshift1_4.c: Regenerated.
 | ||
| 	* generated/eoshift1_8.c: Regenerated.
 | ||
| 	* generated/eoshift3_4.c: Regenerated.
 | ||
| 	* generated/eoshift3_8.c: Regenerated.
 | ||
| 	* generated/in_pack_i4.c: Regenerated.
 | ||
| 	* generated/in_pack_i8.c: Regenerated.
 | ||
| 	* generated/in_unpack_i4.c: Regenerated.
 | ||
| 	* generated/in_unpack_i8.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_i4.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_i8.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_r4.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_r8.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_i4.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_i8.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_r4.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_r8.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_i4.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_i8.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_r4.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_r8.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_i4.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_i8.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_r4.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_r8.c: Regenerated.
 | ||
| 	* generated/maxval_i4.c: Regenerated.
 | ||
| 	* generated/maxval_i8.c: Regenerated.
 | ||
| 	* generated/maxval_r4.c: Regenerated.
 | ||
| 	* generated/maxval_r8.c: Regenerated.
 | ||
| 	* generated/minloc0_4_i4.c: Regenerated.
 | ||
| 	* generated/minloc0_4_i8.c: Regenerated.
 | ||
| 	* generated/minloc0_4_r4.c: Regenerated.
 | ||
| 	* generated/minloc0_4_r8.c: Regenerated.
 | ||
| 	* generated/minloc0_8_i4.c: Regenerated.
 | ||
| 	* generated/minloc0_8_i8.c: Regenerated.
 | ||
| 	* generated/minloc0_8_r4.c: Regenerated.
 | ||
| 	* generated/minloc0_8_r8.c: Regenerated.
 | ||
| 	* generated/minloc1_4_i4.c: Regenerated.
 | ||
| 	* generated/minloc1_4_i8.c: Regenerated.
 | ||
| 	* generated/minloc1_4_r4.c: Regenerated.
 | ||
| 	* generated/minloc1_4_r8.c: Regenerated.
 | ||
| 	* generated/minloc1_8_i4.c: Regenerated.
 | ||
| 	* generated/minloc1_8_i8.c: Regenerated.
 | ||
| 	* generated/minloc1_8_r4.c: Regenerated.
 | ||
| 	* generated/minloc1_8_r8.c: Regenerated.
 | ||
| 	* generated/minval_i4.c: Regenerated.
 | ||
| 	* generated/minval_i8.c: Regenerated.
 | ||
| 	* generated/minval_r4.c: Regenerated.
 | ||
| 	* generated/minval_r8.c: Regenerated.
 | ||
| 	* generated/product_c4.c: Regenerated.
 | ||
| 	* generated/product_c8.c: Regenerated.
 | ||
| 	* generated/product_i4.c: Regenerated.
 | ||
| 	* generated/product_i8.c: Regenerated.
 | ||
| 	* generated/product_r4.c: Regenerated.
 | ||
| 	* generated/product_r8.c: Regenerated.
 | ||
| 	* generated/sum_c4.c: Regenerated.
 | ||
| 	* generated/sum_c8.c: Regenerated.
 | ||
| 	* generated/sum_i4.c: Regenerated.
 | ||
| 	* generated/sum_i8.c: Regenerated.
 | ||
| 	* generated/sum_r4.c: Regenerated.
 | ||
| 	* generated/sum_r8.c: Regenerated.
 | ||
| 
 | ||
| 2005-04-30  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/18958
 | ||
| 	libgfortran.h:  Change typedef of index_type from size_t
 | ||
| 	to ssize_t.
 | ||
| 
 | ||
| 2005-04-30  Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/18857
 | ||
| 	* generated/matmul_r8.c: Remove incorrect assertions.
 | ||
| 	* generated/matmul_c4.c: Regenerate
 | ||
| 	* generated/matmul_c8.c: Regenerate
 | ||
| 	* generated/matmul_i4.c: Regenerate
 | ||
| 	* generated/matmul_i8.c: Regenerate
 | ||
| 	* generated/matmul_r4.c: Regenerate
 | ||
| 	* generated/matmul_r8.c: Regenerate
 | ||
| 
 | ||
| 2005-04-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* configure.ac: Check for ftruncate and chsize.
 | ||
| 	* io/unix.c (fd_truncate): Provide chsize as alternative to
 | ||
| 	ftruncate.
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 2005-04-29  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 | ||
| 
 | ||
| 	* intrinsics/rename.c: Add missing #includes.
 | ||
| 
 | ||
| 2005-04-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 | ||
| 
 | ||
| 	* AUTHORS, COPYING, INSTALL, NEWS, README: Remove.
 | ||
| 
 | ||
| 2005-04-26  David Edelsohn  <edelsohn@gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/20930
 | ||
| 	* io/rewind.c (st_rewind): Flush the stream when resetting the mode
 | ||
| 	from WRITING to READING.
 | ||
| 
 | ||
| 2005-04-22  Paul Thomas  <pault@gcc.gnu.org>
 | ||
| 	    Jerry DeLisle  <jvdelisle@verizon.net>
 | ||
| 
 | ||
| 	* io/write.c (nml_write_obj): Provide 1 more byte for ext_name.
 | ||
| 	* io/list_read.c (nml_get_obj_data): Put extra brackets in get_mem
 | ||
| 	call for ext_name.  These fix the bug reported by Jerry DeLisle to
 | ||
| 	the fortran list and are based on his suggested fix.
 | ||
| 
 | ||
| 2005-04-22  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/20074
 | ||
| 	PR libfortran/20436
 | ||
| 	PR libfortran/21108
 | ||
| 	* m4/reshape.m4 (reshape_`'rtype_kind):  rs, rex:  New
 | ||
| 	variables, to be used in calculation of return array sizes.
 | ||
| 	Populate return array descriptor if ret->data is NULL.
 | ||
| 	Fix condition for early return (it used to test something
 | ||
| 	undefined if order was used).
 | ||
| 	Remove duplicate check wether pad is used.
 | ||
| 	* intrinsics/reshape_generic.c (reshape_generic): Likewise.
 | ||
| 	Fix a few places where the wrong variables were set.
 | ||
| 	* generated/reshape_i4.c: Regenerated.
 | ||
| 	* generated/reshape_i8.c: Regenerated.
 | ||
| 
 | ||
| 2005-04-18  Paul  Thomas <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	* io/list_read.c (nml_touch_nodes, nml_read_obj,
 | ||
| 	nml_get_obj_data): Fix memory leaks in code for derived types.
 | ||
| 
 | ||
| 2005-04-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20950
 | ||
| 	* io/inquire.c (inquire_via_unit): Check for the gfc_unit being
 | ||
| 	NULL when setting ioparm.sequential.
 | ||
| 
 | ||
| 2005-04-17  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/21075
 | ||
| 	* m4/reshape.m4 (reshape_`'rtype_kind):  Change dimension
 | ||
| 	of auxiliary arrays from GFC_MAX_DIMENSIONS - 1 to
 | ||
| 	GFC_MAX_DIMENSIONS.
 | ||
| 	* intrinsics/reshape_generic.c (reshape_generic):  Likewise.
 | ||
| 	* generated/reshape_i4.c:  Regenerated.
 | ||
| 	* generated/reshape_i8.c:  Regenerated.
 | ||
| 
 | ||
| 2005-04-17 Paul Thomas <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	* io/list_read.c (eat_separator): at_eol = 1 replaced
 | ||
| 	(zapped at some time?).
 | ||
| 
 | ||
| 2005-04-17 Paul Thomas <pault@gcc.gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/12884
 | ||
| 	PR libfortran/17285
 | ||
| 	PR libfortran/18122
 | ||
| 	PR libfortran/18210
 | ||
| 	PR libfortran/18392
 | ||
| 	PR libfortran/18591
 | ||
| 	PR libfortran/18879
 | ||
| 	* io/io.h (nml_ls): Declare.
 | ||
| 	(namelist_info): Modify for arrays.
 | ||
| 	* io/list_read.c (namelist_read): Reduced to call to new functions.
 | ||
| 	(match_namelist_name): Simplified.
 | ||
| 	(nml_query): Handles stdin queries ? and =?. New function.
 | ||
| 	(nml_get_obj_data): Parses object name. New function.
 | ||
| 	(touch_nml_nodes): Marks objects for read. New function.
 | ||
| 	(untouch_nml_nodes): Resets objects. New function.
 | ||
| 	(parse_qualifier): Parses and checks qualifiers. New function
 | ||
| 	(nml_read_object): Reads and stores object data. New function.
 | ||
| 	(eat_separator): No new_record on '/' in namelist.
 | ||
| 	(finish_separator): No new_record on '/' in namelist.
 | ||
| 	(read_logical): Error return for namelist.
 | ||
| 	(read_integer): Error return for namelist.
 | ||
| 	(read_complex): Error return for namelist.
 | ||
| 	(read_real): Error return for namelist.
 | ||
| 	* io/lock.c (library_end): Free extended namelist_info types.
 | ||
| 	* io/transfer.c (st_set_nml_var): Modified for arrays.
 | ||
| 	(st_set_nml_var_dim): Dimension descriptors. New function.
 | ||
| 	* io/write.c (namelist_write): Reduced to call to new functions.
 | ||
| 	(nml_write_obj): Writes output for object. New function.
 | ||
| 	(write_integer): Suppress leading blanks for repeat counts.
 | ||
| 	(write_int): Suppress leading blanks for repeat counts.
 | ||
| 	(write_float): Suppress leading blanks for repeat counts.
 | ||
| 	(output_float): Suppress leading blanks for repeat counts.
 | ||
| 
 | ||
| 2005-04-15  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/18495
 | ||
| 	* intrinsics/spread_generic.c (spread):  Remove const from
 | ||
| 	return array descriptor.
 | ||
| 	New variables: rrank (rank of return array),  rs (for
 | ||
| 	calculating the size of the return array), srank (rank
 | ||
| 	of the source array).
 | ||
| 	Generate runtime error if the dim= argument is larger than
 | ||
| 	the rank of the return array.
 | ||
| 	Generate runtime error if the needed rank of the return
 | ||
| 	array is larger than 7.
 | ||
| 	If ret->data is null, populate the return array descriptor
 | ||
| 	and initialize the variables for the actual operation.
 | ||
| 	Otherwise, set ret->dim[0].stride to one if it is zero.
 | ||
| 	Change second, independent use of variable dim to srank.
 | ||
| 
 | ||
| 2005-04-12  Mike Stump  <mrs@apple.com>
 | ||
| 
 | ||
| 	* configure: Regenerate.
 | ||
| 
 | ||
| 2005-04-13  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/19106
 | ||
| 	* m4/iforeach.c (name`'rtype_qual`_'atype_code):  Add TODO
 | ||
| 	that setting correct strides is a front end job.
 | ||
| 	(`m'name`'rtype_qual`_'atype_code):  Likewise.  If mask has
 | ||
| 	a lowest stride of 0, adjust to 1.
 | ||
| 	* m4/ifunction.c (name`'rtype_qual`_'atype_code):  Add TODO
 | ||
| 	that setting correct strides is a front end job.
 | ||
| 	(`m'name`'rtype_qual`_'atype_code):  Likewise.  If mask has
 | ||
| 	a lowest stride of 0, adjust to 1.
 | ||
| 	* maxloc0_4_i4.c: Regenerated
 | ||
| 	* maxloc0_4_i8.c: Regenerated
 | ||
| 	* maxloc0_4_r4.c: Regenerated
 | ||
| 	* maxloc0_4_r8.c: Regenerated
 | ||
| 	* maxloc0_8_i4.c: Regenerated
 | ||
| 	* maxloc0_8_i8.c: Regenerated
 | ||
| 	* maxloc0_8_r4.c: Regenerated
 | ||
| 	* maxloc0_8_r8.c: Regenerated
 | ||
| 	* maxloc1_4_i4.c: Regenerated
 | ||
| 	* maxloc1_4_i8.c: Regenerated
 | ||
| 	* maxloc1_4_r4.c: Regenerated
 | ||
| 	* maxloc1_4_r8.c: Regenerated
 | ||
| 	* maxloc1_8_i4.c: Regenerated
 | ||
| 	* maxloc1_8_i8.c: Regenerated
 | ||
| 	* maxloc1_8_r4.c: Regenerated
 | ||
| 	* maxloc1_8_r8.c: Regenerated
 | ||
| 	* maxval_i4.c: Regenerated
 | ||
| 	* maxval_i8.c: Regenerated
 | ||
| 	* maxval_r4.c: Regenerated
 | ||
| 	* maxval_r8.c: Regenerated
 | ||
| 	* minloc0_4_i4.c: Regenerated
 | ||
| 	* minloc0_4_i8.c: Regenerated
 | ||
| 	* minloc0_4_r4.c: Regenerated
 | ||
| 	* minloc0_4_r8.c: Regenerated
 | ||
| 	* minloc0_8_i4.c: Regenerated
 | ||
| 	* minloc0_8_i8.c: Regenerated
 | ||
| 	* minloc0_8_r4.c: Regenerated
 | ||
| 	* minloc0_8_r8.c: Regenerated
 | ||
| 	* minloc1_4_i4.c: Regenerated
 | ||
| 	* minloc1_4_i8.c: Regenerated
 | ||
| 	* minloc1_4_r4.c: Regenerated
 | ||
| 	* minloc1_4_r8.c: Regenerated
 | ||
| 	* minloc1_8_i4.c: Regenerated
 | ||
| 	* minloc1_8_i8.c: Regenerated
 | ||
| 	* minloc1_8_r4.c: Regenerated
 | ||
| 	* minloc1_8_r8.c: Regenerated
 | ||
| 	* minval_i4.c: Regenerated
 | ||
| 	* minval_i8.c: Regenerated
 | ||
| 	* minval_r4.c: Regenerated
 | ||
| 	* minval_r8.c: Regenerated
 | ||
| 	* product_c4.c: Regenerated
 | ||
| 	* product_c8.c: Regenerated
 | ||
| 	* product_i4.c: Regenerated
 | ||
| 	* product_i8.c: Regenerated
 | ||
| 	* product_r4.c: Regenerated
 | ||
| 	* product_r8.c: Regenerated
 | ||
| 	* sum_c4.c: Regenerated
 | ||
| 	* sum_c8.c: Regenerated
 | ||
| 	* sum_i4.c: Regenerated
 | ||
| 	* sum_i8.c: Regenerated
 | ||
| 	* sum_r4.c: Regenerated
 | ||
| 	* sum_r8.c: Regenerated
 | ||
| 
 | ||
| 2005-04-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20788
 | ||
| 	* runtime/environ.c (init_unsigned_integer): Function for
 | ||
| 	environment variables we want to be positive.
 | ||
| 	(init_integer): Function to allow negative environment
 | ||
| 	variables (e.g. for GFORTRAN_STDIN_UNIT).
 | ||
| 
 | ||
| 2005-04-10  Thomas Koenig <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/17992
 | ||
| 	PR libfortran/19568
 | ||
| 	PR libfortran/19595
 | ||
| 	PR libfortran/20005
 | ||
| 	PR libfortran/20092
 | ||
| 	PR libfortran/20131
 | ||
| 	PR libfortran/20661
 | ||
| 	PR libfortran/20744
 | ||
| 	* io/transfer.c (top level): eor_condition: New static variable.
 | ||
| 	(read_sf): Remove unnecessary zeroing of buffer (there is enough
 | ||
| 	information in its length).
 | ||
| 	Return a string of length 0 (to be padded by caller) if EOR was
 | ||
| 	seen previously.
 | ||
| 	Remove erroneous special casing of EOR for standard input.
 | ||
| 	Set eor_condition for non-advancing I/O if an end of line was
 | ||
| 	detected.
 | ||
| 	Increment ioparm.size if necessary.
 | ||
| 	(formatted_transfer):  Skip the function if there is an EOR condition.
 | ||
| 	(data_transfer_init):  Initialize eor_condition to zero (false).
 | ||
| 	(next_record_r):  Clear sf_seen_eor if a \n has been seen already.
 | ||
| 	(finalize_transfer):  If there is an EOR condition, raise the error.
 | ||
| 
 | ||
| 2005-04-09  Bud Davis  <bdavis@gfortran.org>
 | ||
| 	    Steven G. Kargl <kargls@comcast.net>
 | ||
| 
 | ||
| 	PR fortran/19872
 | ||
| 	* io/transfer.c (data_transfer_init): truncate an existing
 | ||
| 	file on the first write.
 | ||
| 
 | ||
| 2005-04-09  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/19106
 | ||
| 	PR libfortran/19014
 | ||
| 	* m4/ifunction.m4 (name`'rtype_qual`_'atype_code): ditto.
 | ||
| 	If retarray->data is NULL (i.e. the front end does not
 | ||
| 	know the rank and dimenson of the array), fill in its
 | ||
| 	properties and allocate memory.
 | ||
| 	Change the assertions about rank and dimension of retarray into
 | ||
| 	runtime errors and only check them for retarray->data != NULL.
 | ||
| 	Do the same for correcting the stride from 0 to 1 in retarray.
 | ||
| 	(`m'name`'rtype_qual`_'atype_code): Likewise.
 | ||
| 	* m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Likewise.
 | ||
| 	Change assertion about rank of array to runtime error.
 | ||
| 	(`m'name`'rtype_qual`_'atype_code): Likewise.
 | ||
| 	* generated/all_l4.c: Regenerated.
 | ||
| 	* generated/all_l8.c: Regenerated.
 | ||
| 	* generated/any_l4.c: Regenerated.
 | ||
| 	* generated/any_l8.c: Regenerated.
 | ||
| 	* generated/count_4_l4.c: Regenerated.
 | ||
| 	* generated/count_4_l8.c: Regenerated.
 | ||
| 	* generated/count_8_l4.c: Regenerated.
 | ||
| 	* generated/count_8_l8.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_i4.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_i8.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_r4.c: Regenerated.
 | ||
| 	* generated/maxloc0_4_r8.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_i4.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_i8.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_r4.c: Regenerated.
 | ||
| 	* generated/maxloc0_8_r8.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_i4.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_i8.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_r4.c: Regenerated.
 | ||
| 	* generated/maxloc1_4_r8.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_i4.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_i8.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_r4.c: Regenerated.
 | ||
| 	* generated/maxloc1_8_r8.c: Regenerated.
 | ||
| 	* generated/maxval_i4.c: Regenerated.
 | ||
| 	* generated/maxval_i8.c: Regenerated.
 | ||
| 	* generated/maxval_r4.c: Regenerated.
 | ||
| 	* generated/maxval_r8.c: Regenerated.
 | ||
| 	* generated/minloc0_4_i4.c: Regenerated.
 | ||
| 	* generated/minloc0_4_i8.c: Regenerated.
 | ||
| 	* generated/minloc0_4_r4.c: Regenerated.
 | ||
| 	* generated/minloc0_4_r8.c: Regenerated.
 | ||
| 	* generated/minloc0_8_i4.c: Regenerated.
 | ||
| 	* generated/minloc0_8_i8.c: Regenerated.
 | ||
| 	* generated/minloc0_8_r4.c: Regenerated.
 | ||
| 	* generated/minloc0_8_r8.c: Regenerated.
 | ||
| 	* generated/minloc1_4_i4.c: Regenerated.
 | ||
| 	* generated/minloc1_4_i8.c: Regenerated.
 | ||
| 	* generated/minloc1_4_r4.c: Regenerated.
 | ||
| 	* generated/minloc1_4_r8.c: Regenerated.
 | ||
| 	* generated/minloc1_8_i4.c: Regenerated.
 | ||
| 	* generated/minloc1_8_i8.c: Regenerated.
 | ||
| 	* generated/minloc1_8_r4.c: Regenerated.
 | ||
| 	* generated/minloc1_8_r8.c: Regenerated.
 | ||
| 	* generated/minval_i4.c: Regenerated.
 | ||
| 	* generated/minval_i8.c: Regenerated.
 | ||
| 	* generated/minval_r4.c: Regenerated.
 | ||
| 	* generated/minval_r8.c: Regenerated.
 | ||
| 	* generated/product_c4.c: Regenerated.
 | ||
| 	* generated/product_c8.c: Regenerated.
 | ||
| 	* generated/product_i4.c: Regenerated.
 | ||
| 	* generated/product_i8.c: Regenerated.
 | ||
| 	* generated/product_r4.c: Regenerated.
 | ||
| 	* generated/product_r8.c: Regenerated.
 | ||
| 	* generated/sum_c4.c: Regenerated.
 | ||
| 	* generated/sum_c8.c: Regenerated.
 | ||
| 	* generated/sum_i4.c: Regenerated.
 | ||
| 	* generated/sum_i8.c: Regenerated.
 | ||
| 	* generated/sum_r4.c: Regenerated.
 | ||
| 	* generated/sum_r8.c: Regenerated.
 | ||
| 
 | ||
| 2005-04-09  Thomas Koenig <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/20163
 | ||
| 	* runtime/string.c (compare0): Use fstrlen() to
 | ||
| 	strip trailing blanks from option string.
 | ||
| 
 | ||
| 2005-04-09  Andrew Pinski  <pinskia@physics.uc.edu>
 | ||
| 
 | ||
| 	PR fortran/13257
 | ||
| 	* format.c (parse_format_list): Allow an optional comma
 | ||
| 	between descriptors.
 | ||
| 
 | ||
| 2005-04-08  Eric Botcazou  <ebotcazou@libertysurf.fr>
 | ||
| 
 | ||
| 	* io/backspace.c (unformatted_backspace): Do not dereference
 | ||
| 	the pointer to the stream.
 | ||
| 
 | ||
| 2005-04-07  Andrew Pinski  <pinskia@physics.uc.edu>
 | ||
| 
 | ||
| 	PR libfortran/20766
 | ||
| 	* configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
 | ||
| 	"-Wl,-single_module".
 | ||
| 	* configure: Regenerate.
 | ||
| 	* Makefile.am (libgfortran_la_LDFLAGS): Add extra_ldflags_libgfortran.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 
 | ||
| 2005-04-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20755
 | ||
| 	* write.c (write_float): A G edit descriptor may locally change
 | ||
| 	the scale factor, but it needs to be restored afterwards.
 | ||
| 
 | ||
| 2005-04-03  Dale Ranta  <dir@lanl.gov>
 | ||
| 	    Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20068
 | ||
| 	PR libfortran/20125
 | ||
| 	PR libfortran/20156
 | ||
| 	PR libfortran/20471
 | ||
| 	* io/backspace.c (unformatted_backspace): Fix error in arithmetic.
 | ||
| 	(st_backspace): When in WRITING mode, we flush and falling back
 | ||
| 	into READING mode. In all cases, correctly position the stream.
 | ||
| 
 | ||
| 2005-03-31  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20660
 | ||
| 	* io/inquire.c (inquire_via_unit): Non-opened units should still be
 | ||
| 	reported by an INQUIRE statement as existing.
 | ||
| 	* io/transfer.c (data_transfer_init): Never accept negative units.
 | ||
| 
 | ||
| 2005-03-29  Dale Ranta  <dir@lanl.gov>
 | ||
| 	    Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20163
 | ||
| 	* io/open.c (st_open): call library_end() before returning even if
 | ||
| 	an error arises.
 | ||
| 
 | ||
| 2005-03-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/19678
 | ||
| 	* list_read.c (next_char, eat_separator, finish_separator, read_real)
 | ||
| 	(namelist_read): Add support for '\r' as well as '\n' as EOL
 | ||
| 	character.
 | ||
| 
 | ||
| 	PR libfortran/19679
 | ||
| 	* list_read.c (read_sf): Add a '\r' in a test to support DOS
 | ||
| 	line-endings when line length is exceeded.
 | ||
| 
 | ||
| 2005-03-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/15332
 | ||
| 	* io/format.c (parse_format_list): format node for colon edit
 | ||
| 	descriptor needs a repeat counter set to 1.
 | ||
| 
 | ||
| 2005-02-24  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* config.h.in: Regenerate.
 | ||
| 
 | ||
| 2005-02-23  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/18025
 | ||
| 	* write.c (output_float): Handling the "F0.d" format similarly as
 | ||
| 	commercial compilers.
 | ||
| 
 | ||
| 2005-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	* Makefile.am: Added new files.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* aclocal.m4: Regenerate.
 | ||
| 	* configure.ac: add checks for signal.h headers file, as well as
 | ||
| 	following functions: chdir, strerror, getlogin, gethostname, kill,
 | ||
| 	link, symlink, perror, sleep, time.
 | ||
| 	* configure: Regenerate.
 | ||
| 	* intrinsics/chdir.c, intrinsics/gerror.c, intrinsics/getlog.c,
 | ||
| 	intrinsics/hostnm.c, intrinsics/ierrno.c, intrinsics/kill.c,
 | ||
| 	intrinsics/link.c, intrinsics/perror.c, intrinsics/rename.c,
 | ||
| 	intrinsics/sleep.c, intrinsics/symlnk.c, intrinsics/time.c: Newly
 | ||
| 	implementend g77 intrinsics.
 | ||
| 
 | ||
| 2005-03-21  Zack Weinberg  <zack@codesourcery.com>
 | ||
| 
 | ||
| 	* configure.ac: Do not invoke TL_AC_GCC_VERSION.
 | ||
| 	In all substitutions, leave gcc_version to be expanded by the Makefile.
 | ||
| 	* aclocal.m4, configure: Regenerate.
 | ||
| 	* Makefile.am: Set gcc_version.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 
 | ||
| 2005-03-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20257
 | ||
| 	* open.c (new_unit): set record length to max_offset rather than
 | ||
| 	  using a hard-coded limit (which was too low).
 | ||
| 
 | ||
| 2005-03-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20480
 | ||
| 	* write.c (output_float): special check when writing 0.0 with
 | ||
| 	  EN and ES formats.
 | ||
| 
 | ||
| 2005-03-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20124
 | ||
| 	* write.c (output_float): Adds a nzero_real variable to store
 | ||
| 	the number of leading zeros whatever the format width is. Corrects
 | ||
| 	the rounding of numbers less than 10^(-width). Fixes typo in an
 | ||
| 	error message. Updates copyright years
 | ||
| 
 | ||
| 2005-02-27  Toon Moene  <toon@moene.indiv.nluug.nl>
 | ||
| 
 | ||
| 	* runtime/environ.c: Update copyright years.
 | ||
| 
 | ||
| 2005-02-27  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 | ||
| 
 | ||
| 	* io/write.c: Update copyright years.
 | ||
| 
 | ||
| 2005-02-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
 | ||
| 
 | ||
| 	PR libfortran/20101
 | ||
| 	* io/write.c (output_float): Added special check for value 0.0 in
 | ||
| 	PE format.
 | ||
| 
 | ||
| 2005-02-27  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 | ||
| 
 | ||
| 	* io/write.c (output_float): Fix typo in condition.
 | ||
| 
 | ||
| 2005-02-25  Peter O'Gorman  <peter@pogma.com>
 | ||
| 	    Toon Moene  <toon@moene.indiv.nluug.nl>
 | ||
| 
 | ||
| 	PR libfortran/17748
 | ||
| 	* runtime/environ.c: Remove references to environ.
 | ||
| 	(show_variables): remove GFORTRAN_UNBUFFERED_* and
 | ||
| 	GFORTRAN_NAME_* because they require environ.
 | ||
| 	(pattern_scan): Remove function.
 | ||
| 
 | ||
| 2005-02-22  Paul Thomas <paulthomas2@wannado.fr>
 | ||
| 	    Bud Davis  <bdavis@gfortran.org>
 | ||
| 
 | ||
| 	* io/list_read.c (read_real): Handle separators properly
 | ||
| 	in list directed read.
 | ||
| 
 | ||
| 2005-02-21  Bud Davis  <bdavis@gfortran.org>
 | ||
| 
 | ||
| 	PR fortran/20086
 | ||
| 	* io/transfer.c (write_constant_string): accept an 'h' as
 | ||
| 	the start of a hollerith format string.
 | ||
| 
 | ||
| 2005-02-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
 | ||
| 
 | ||
| 	PR libfortran/19302
 | ||
| 	* intrinsics/c99_functions.c (nextafterf): Special-case infinite
 | ||
| 	numbers.
 | ||
| 
 | ||
| 2005-02-21  Steven G. Kargl  <kargls@comcast.net>
 | ||
| 
 | ||
| 	* io/write.c (output_float):  Typo in error meesage.
 | ||
| 
 | ||
| 2005-02-20  Steven G. Kargl  <kargls@comcast.net>
 | ||
| 
 | ||
| 	PR 20085
 | ||
| 	* intrinsic/args.c (iargc): Off by 1.
 | ||
| 
 | ||
| 2005-02-19  Steven G. Kargl  <kargls@comcast.net>
 | ||
| 
 | ||
| 	*  intrinsic/date_and_time.c: Fix conformance problems.
 | ||
| 
 | ||
| 2005-02-01  Paul Thomas <paulthomas2@wanadoo.fr>
 | ||
| 
 | ||
| 	PR libfortran/19363
 | ||
| 	PR libfortran/19691
 | ||
| 	* libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.
 | ||
| 
 | ||
| 2005-01-30  Bud Davis  <bdavis@gfortran.org>
 | ||
| 
 | ||
| 	PR fortran/19647
 | ||
| 	* io/inquire.c (inquire_via_unit): Use correct variable for
 | ||
| 	pad.
 | ||
| 
 | ||
| 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
 | ||
| 	* io/read.c (read_f): Don't free uninitialized pointer.
 | ||
| 
 | ||
| 2005-01-23  James A. Morrison  <phython@gcc.gnu.org>
 | ||
| 	Paul Brook  <paul@codesourcery.com>
 | ||
| 
 | ||
| 	PR fortran/19294
 | ||
| 	* Makefile.am: Add transpose_c4.c and transpose_c8.c.
 | ||
| 	* intrinsics/cshift0.c: Use separate optimized loops for complex types.
 | ||
| 	* m4/transpose.m4: Include type letter in function name.
 | ||
| 	* Makefile.in: Regenerate.
 | ||
| 	* generated/transpose_*.c: Regenerate.
 | ||
| 
 | ||
| 2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/19451
 | ||
| 	* io/transfer.c (finalize_transfer):  Don't do anything if
 | ||
| 	there is an error condition.
 | ||
| 
 | ||
| 2005-01-22  David Edelsohn  <edelsohn@gnu.org>
 | ||
| 
 | ||
| 	PR libfortran/19052
 | ||
| 	* libgfortran.h (options_t): Add stderr_unit.
 | ||
| 	* io/io.h (error_stream): Declare.
 | ||
| 	* io/open.c (new_unit): Do not terminate abnormally if opening
 | ||
| 	file preconnected to stdin, stdout, or stderr.
 | ||
| 	* io/unit.c (init_units): Initialize stderr_unit.
 | ||
| 	* io/unix.c (error_stream): New function.
 | ||
| 	* runtime/environ.c (GFORTRAN_STDERR_UNIT): New environment variable.
 | ||
| 
 | ||
| 2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>
 | ||
| 
 | ||
| 	PR libfortran/18982
 | ||
| 	* io/unix.c (regular_file):  No need to change flags->action
 | ||
| 	if an error occurs.  Document this.
 | ||
| 	No need to call stat() for STATUS_OLD, open() will
 | ||
| 	fail anyway.
 | ||
| 	For ACTION_UNSPECIFIED, try open for read-write, then for
 | ||
| 	read-only if open fails with EACCES, then for write-only
 | ||
| 	if that fails with EACCES again.
 | ||
| 	* io/unix.c (open_external): Document changed behavior of
 | ||
| 	regular_file.
 | ||
| 
 | ||
| 2005-01-22  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 | ||
| 
 | ||
| 	PR fortran/19194
 | ||
| 	* io/io.h (st_parameter): Use 'GFC_INTEGER_4' instead of 'int',
 | ||
| 	use CHARACTER macro for definition of string valued paramters.
 | ||
| 
 | ||
| 2005-01-22  Bud Davis  <bdavis9659@comcast.net>
 | ||
| 
 | ||
| 	PR fortran/19314
 | ||
| 	* io/inquire.c(inquire_via_unit): implement POSITION=.
 | ||
| 	* io/transfer.c(next_record): update position for
 | ||
| 	INQUIRE.
 | ||
| 	* io/rewind.c(st_rewind): update position for
 | ||
| 	INQUIRE.
 | ||
| 
 | ||
| 2005-01-16  Bud Davis  <bdavis9659@comcast.net>
 | ||
| 
 | ||
| 	PR fortran/18778
 | ||
| 	* io/transfer.c (us_read): no bytes available is not a
 | ||
| 	runtime error.
 | ||
| 
 | ||
| 2005-01-15  Bud Davis  <bdavis9659@comcast.net>
 | ||
| 
 | ||
| 	PR fortran/18983
 | ||
| 	* io/transfer.c (st_write_done): only truncate when it
 | ||
| 	is required.
 | ||
| 
 | ||
| 2005-01-12  Toon Moene  <toon@moene.indiv.nluug.nl>
 | ||
| 
 | ||
| 	PR libfortran/19280
 | ||
| 	c99_protos.h: License changed to GPL+exception.
 | ||
| 	libgfortran.h: Ditto.
 | ||
| 	intrinsics/abort.c: Ditto.
 | ||
| 	intrinsics/args.c: Ditto.
 | ||
| 	intrinsics/associated.c: Ditto.
 | ||
| 	intrinsics/bessel.c: Ditto.
 | ||
| 	intrinsics/c99_functions.c: Ditto.
 | ||
| 	intrinsics/cpu_time.c: Ditto.
 | ||
| 	intrinsics/cshift0.c: Ditto.
 | ||
| 	intrinsics/date_and_time.c: Ditto.
 | ||
| 	intrinsics/env.c: Ditto.
 | ||
| 	intrinsics/eoshift0.c: Ditto.
 | ||
| 	intrinsics/eoshift2.c: Ditto.
 | ||
| 	intrinsics/erf.c: Ditto.
 | ||
| 	intrinsics/etime.c: Ditto.
 | ||
| 	intrinsics/exit.c: Ditto.
 | ||
| 	intrinsics/flush.c: Ditto.
 | ||
| 	intrinsics/fnum.c: Ditto.
 | ||
| 	intrinsics/getXid.c: Ditto.
 | ||
| 	intrinsics/getcwd.c: Ditto.
 | ||
| 	intrinsics/ishftc.c: Ditto.
 | ||
| 	intrinsics/mvbits.c: Ditto.
 | ||
| 	intrinsics/pack_generic.c: Ditto.
 | ||
| 	intrinsics/rand.c: Ditto.
 | ||
| 	intrinsics/random.c: Ditto.
 | ||
| 	intrinsics/reshape_generic.c: Ditto.
 | ||
| 	intrinsics/reshape_packed.c: Ditto.
 | ||
| 	intrinsics/size.c: Ditto.
 | ||
| 	intrinsics/spread_generic.c: Ditto.
 | ||
| 	intrinsics/stat.c: Ditto.
 | ||
| 	intrinsics/string_intrinsics.c: Ditto.
 | ||
| 	intrinsics/system.c: Ditto.
 | ||
| 	intrinsics/system_clock.c: Ditto.
 | ||
| 	intrinsics/transpose_generic.c: Ditto.
 | ||
| 	intrinsics/umask.c: Ditto.
 | ||
| 	intrinsics/unlink.c: Ditto.
 | ||
| 	intrinsics/unpack_generic.c: Ditto.
 | ||
| 	io/backspace.c: Ditto.
 | ||
| 	io/close.c: Ditto.
 | ||
| 	io/endfile.c: Ditto.
 | ||
| 	io/format.c: Ditto.
 | ||
| 	io/inquire.c: Ditto.
 | ||
| 	io/io.h: Ditto.
 | ||
| 	io/list_read.c: Ditto.
 | ||
| 	io/lock.c: Ditto.
 | ||
| 	io/open.c: Ditto.
 | ||
| 	io/read.c: Ditto.
 | ||
| 	io/rewind.c: Ditto.
 | ||
| 	io/transfer.c: Ditto.
 | ||
| 	io/unit.c: Ditto.
 | ||
| 	io/unix.c: Ditto.
 | ||
| 	io/write.c: Ditto.
 | ||
| 	m4/all.m4: Ditto.
 | ||
| 	m4/any.m4: Ditto.
 | ||
| 	m4/cexp.m4: Ditto.
 | ||
| 	m4/chyp.m4: Ditto.
 | ||
| 	m4/count.m4: Ditto.
 | ||
| 	m4/cshift1.m4: Ditto.
 | ||
| 	m4/ctrig.m4: Ditto.
 | ||
| 	m4/dotprod.m4: Ditto.
 | ||
| 	m4/dotprodc.m4: Ditto.
 | ||
| 	m4/dotprodl.m4: Ditto.
 | ||
| 	m4/eoshift1.m4: Ditto.
 | ||
| 	m4/eoshift3.m4: Ditto.
 | ||
| 	m4/exponent.m4: Ditto.
 | ||
| 	m4/fraction.m4: Ditto.
 | ||
| 	m4/head.m4: Ditto.
 | ||
| 	m4/iforeach.m4: Ditto.
 | ||
| 	m4/ifunction.m4: Ditto.
 | ||
| 	m4/in_pack.m4: Ditto.
 | ||
| 	m4/in_unpack.m4: Ditto.
 | ||
| 	m4/iparm.m4: Ditto.
 | ||
| 	m4/matmul.m4: Ditto.
 | ||
| 	m4/matmull.m4: Ditto.
 | ||
| 	m4/maxloc0.m4: Ditto.
 | ||
| 	m4/maxloc1.m4: Ditto.
 | ||
| 	m4/maxval.m4: Ditto.
 | ||
| 	m4/minloc0.m4: Ditto.
 | ||
| 	m4/minloc1.m4: Ditto.
 | ||
| 	m4/minval.m4: Ditto.
 | ||
| 	m4/mtype.m4: Ditto.
 | ||
| 	m4/nearest.m4: Ditto.
 | ||
| 	m4/pow.m4: Ditto.
 | ||
| 	m4/product.m4: Ditto.
 | ||
| 	m4/reshape.m4: Ditto.
 | ||
| 	m4/set_exponent.m4: Ditto.
 | ||
| 	m4/shape.m4: Ditto.
 | ||
| 	m4/specific.m4: Ditto.
 | ||
| 	m4/specific2.m4: Ditto.
 | ||
| 	m4/sum.m4: Ditto.
 | ||
| 	m4/transpose.m4: Ditto.
 | ||
| 	m4/types.m4: Ditto.
 | ||
| 	runtime/environ.c: Ditto.
 | ||
| 	runtime/error.c: Ditto.
 | ||
| 	runtime/in_pack_generic.c: Ditto.
 | ||
| 	runtime/in_unpack_generic.c: Ditto.
 | ||
| 	runtime/main.c: Ditto.
 | ||
| 	runtime/memory.c: Ditto.
 | ||
| 	runtime/normalize.c: Ditto.
 | ||
| 	runtime/pause.c: Ditto.
 | ||
| 	runtime/select.c: Ditto.
 | ||
| 	runtime/stop.c: Ditto.
 | ||
| 	runtime/string.c: Ditto.
 | ||
| 	generated/_abs_c4.f90: Regenerated.
 | ||
| 	generated/_abs_c8.f90: Regenerated.
 | ||
| 	generated/_abs_i4.f90: Regenerated.
 | ||
| 	generated/_abs_i8.f90: Regenerated.
 | ||
| 	generated/_abs_r4.f90: Regenerated.
 | ||
| 	generated/_abs_r8.f90: Regenerated.
 | ||
| 	generated/_acos_r4.f90: Regenerated.
 | ||
| 	generated/_acos_r8.f90: Regenerated.
 | ||
| 	generated/_aint_r4.f90: Regenerated.
 | ||
| 	generated/_aint_r8.f90: Regenerated.
 | ||
| 	generated/_anint_r4.f90: Regenerated.
 | ||
| 	generated/_anint_r8.f90: Regenerated.
 | ||
| 	generated/_asin_r4.f90: Regenerated.
 | ||
| 	generated/_asin_r8.f90: Regenerated.
 | ||
| 	generated/_atan2_r4.f90: Regenerated.
 | ||
| 	generated/_atan2_r8.f90: Regenerated.
 | ||
| 	generated/_atan_r4.f90: Regenerated.
 | ||
| 	generated/_atan_r8.f90: Regenerated.
 | ||
| 	generated/_conjg_c4.f90: Regenerated.
 | ||
| 	generated/_conjg_c8.f90: Regenerated.
 | ||
| 	generated/_cos_c4.f90: Regenerated.
 | ||
| 	generated/_cos_c8.f90: Regenerated.
 | ||
| 	generated/_cos_r4.f90: Regenerated.
 | ||
| 	generated/_cos_r8.f90: Regenerated.
 | ||
| 	generated/_cosh_r4.f90: Regenerated.
 | ||
| 	generated/_cosh_r8.f90: Regenerated.
 | ||
| 	generated/_dim_i4.f90: Regenerated.
 | ||
| 	generated/_dim_i8.f90: Regenerated.
 | ||
| 	generated/_dim_r4.f90: Regenerated.
 | ||
| 	generated/_dim_r8.f90: Regenerated.
 | ||
| 	generated/_exp_c4.f90: Regenerated.
 | ||
| 	generated/_exp_c8.f90: Regenerated.
 | ||
| 	generated/_exp_r4.f90: Regenerated.
 | ||
| 	generated/_exp_r8.f90: Regenerated.
 | ||
| 	generated/_log10_r4.f90: Regenerated.
 | ||
| 	generated/_log10_r8.f90: Regenerated.
 | ||
| 	generated/_log_c4.f90: Regenerated.
 | ||
| 	generated/_log_c8.f90: Regenerated.
 | ||
| 	generated/_log_r4.f90: Regenerated.
 | ||
| 	generated/_log_r8.f90: Regenerated.
 | ||
| 	generated/_mod_i4.f90: Regenerated.
 | ||
| 	generated/_mod_i8.f90: Regenerated.
 | ||
| 	generated/_mod_r4.f90: Regenerated.
 | ||
| 	generated/_mod_r8.f90: Regenerated.
 | ||
| 	generated/_sign_i4.f90: Regenerated.
 | ||
| 	generated/_sign_i8.f90: Regenerated.
 | ||
| 	generated/_sign_r4.f90: Regenerated.
 | ||
| 	generated/_sign_r8.f90: Regenerated.
 | ||
| 	generated/_sin_c4.f90: Regenerated.
 | ||
| 	generated/_sin_c8.f90: Regenerated.
 | ||
| 	generated/_sin_r4.f90: Regenerated.
 | ||
| 	generated/_sin_r8.f90: Regenerated.
 | ||
| 	generated/_sinh_r4.f90: Regenerated.
 | ||
| 	generated/_sinh_r8.f90: Regenerated.
 | ||
| 	generated/_sqrt_c4.f90: Regenerated.
 | ||
| 	generated/_sqrt_c8.f90: Regenerated.
 | ||
| 	generated/_sqrt_r4.f90: Regenerated.
 | ||
| 	generated/_sqrt_r8.f90: Regenerated.
 | ||
| 	generated/_tan_r4.f90: Regenerated.
 | ||
| 	generated/_tan_r8.f90: Regenerated.
 | ||
| 	generated/_tanh_r4.f90: Regenerated.
 | ||
| 	generated/_tanh_r8.f90: Regenerated.
 | ||
| 	generated/all_l4.c: Regenerated.
 | ||
| 	generated/all_l8.c: Regenerated.
 | ||
| 	generated/any_l4.c: Regenerated.
 | ||
| 	generated/any_l8.c: Regenerated.
 | ||
| 	generated/count_4_l4.c: Regenerated.
 | ||
| 	generated/count_4_l8.c: Regenerated.
 | ||
| 	generated/count_8_l4.c: Regenerated.
 | ||
| 	generated/count_8_l8.c: Regenerated.
 | ||
| 	generated/cshift1_4.c: Regenerated.
 | ||
| 	generated/cshift1_8.c: Regenerated.
 | ||
| 	generated/dotprod_c4.c: Regenerated.
 | ||
| 	generated/dotprod_c8.c: Regenerated.
 | ||
| 	generated/dotprod_i4.c: Regenerated.
 | ||
| 	generated/dotprod_i8.c: Regenerated.
 | ||
| 	generated/dotprod_l4.c: Regenerated.
 | ||
| 	generated/dotprod_l8.c: Regenerated.
 | ||
| 	generated/dotprod_r4.c: Regenerated.
 | ||
| 	generated/dotprod_r8.c: Regenerated.
 | ||
| 	generated/eoshift1_4.c: Regenerated.
 | ||
| 	generated/eoshift1_8.c: Regenerated.
 | ||
| 	generated/eoshift3_4.c: Regenerated.
 | ||
| 	generated/eoshift3_8.c: Regenerated.
 | ||
| 	generated/exp_c4.c: Regenerated.
 | ||
| 	generated/exp_c8.c: Regenerated.
 | ||
| 	generated/exponent_r4.c: Regenerated.
 | ||
| 	generated/exponent_r8.c: Regenerated.
 | ||
| 	generated/fraction_r4.c: Regenerated.
 | ||
| 	generated/fraction_r8.c: Regenerated.
 | ||
| 	generated/hyp_c4.c: Regenerated.
 | ||
| 	generated/hyp_c8.c: Regenerated.
 | ||
| 	generated/in_pack_i4.c: Regenerated.
 | ||
| 	generated/in_pack_i8.c: Regenerated.
 | ||
| 	generated/in_unpack_i4.c: Regenerated.
 | ||
| 	generated/in_unpack_i8.c: Regenerated.
 | ||
| 	generated/matmul_c4.c: Regenerated.
 | ||
| 	generated/matmul_c8.c: Regenerated.
 | ||
| 	generated/matmul_i4.c: Regenerated.
 | ||
| 	generated/matmul_i8.c: Regenerated.
 | ||
| 	generated/matmul_l4.c: Regenerated.
 | ||
| 	generated/matmul_l8.c: Regenerated.
 | ||
| 	generated/matmul_r4.c: Regenerated.
 | ||
| 	generated/matmul_r8.c: Regenerated.
 | ||
| 	generated/maxloc0_4_i4.c: Regenerated.
 | ||
| 	generated/maxloc0_4_i8.c: Regenerated.
 | ||
| 	generated/maxloc0_4_r4.c: Regenerated.
 | ||
| 	generated/maxloc0_4_r8.c: Regenerated.
 | ||
| 	generated/maxloc0_8_i4.c: Regenerated.
 | ||
| 	generated/maxloc0_8_i8.c: Regenerated.
 | ||
| 	generated/maxloc0_8_r4.c: Regenerated.
 | ||
| 	generated/maxloc0_8_r8.c: Regenerated.
 | ||
| 	generated/maxloc1_4_i4.c: Regenerated.
 | ||
| 	generated/maxloc1_4_i8.c: Regenerated.
 | ||
| 	generated/maxloc1_4_r4.c: Regenerated.
 | ||
| 	generated/maxloc1_4_r8.c: Regenerated.
 | ||
| 	generated/maxloc1_8_i4.c: Regenerated.
 | ||
| 	generated/maxloc1_8_i8.c: Regenerated.
 | ||
| 	generated/maxloc1_8_r4.c: Regenerated.
 | ||
| 	generated/maxloc1_8_r8.c: Regenerated.
 | ||
| 	generated/maxval_i4.c: Regenerated.
 | ||
| 	generated/maxval_i8.c: Regenerated.
 | ||
| 	generated/maxval_r4.c: Regenerated.
 | ||
| 	generated/maxval_r8.c: Regenerated.
 | ||
| 	generated/minloc0_4_i4.c: Regenerated.
 | ||
| 	generated/minloc0_4_i8.c: Regenerated.
 | ||
| 	generated/minloc0_4_r4.c: Regenerated.
 | ||
| 	generated/minloc0_4_r8.c: Regenerated.
 | ||
| 	generated/minloc0_8_i4.c: Regenerated.
 | ||
| 	generated/minloc0_8_i8.c: Regenerated.
 | ||
| 	generated/minloc0_8_r4.c: Regenerated.
 | ||
| 	generated/minloc0_8_r8.c: Regenerated.
 | ||
| 	generated/minloc1_4_i4.c: Regenerated.
 | ||
| 	generated/minloc1_4_i8.c: Regenerated.
 | ||
| 	generated/minloc1_4_r4.c: Regenerated.
 | ||
| 	generated/minloc1_4_r8.c: Regenerated.
 | ||
| 	generated/minloc1_8_i4.c: Regenerated.
 | ||
| 	generated/minloc1_8_i8.c: Regenerated.
 | ||
| 	generated/minloc1_8_r4.c: Regenerated.
 | ||
| 	generated/minloc1_8_r8.c: Regenerated.
 | ||
| 	generated/minval_i4.c: Regenerated.
 | ||
| 	generated/minval_i8.c: Regenerated.
 | ||
| 	generated/minval_r4.c: Regenerated.
 | ||
| 	generated/minval_r8.c: Regenerated.
 | ||
| 	generated/nearest_r4.c: Regenerated.
 | ||
| 	generated/nearest_r8.c: Regenerated.
 | ||
| 	generated/pow_c4_i4.c: Regenerated.
 | ||
| 	generated/pow_c4_i8.c: Regenerated.
 | ||
| 	generated/pow_c8_i4.c: Regenerated.
 | ||
| 	generated/pow_c8_i8.c: Regenerated.
 | ||
| 	generated/pow_i4_i4.c: Regenerated.
 | ||
| 	generated/pow_i4_i8.c: Regenerated.
 | ||
| 	generated/pow_i8_i4.c: Regenerated.
 | ||
| 	generated/pow_i8_i8.c: Regenerated.
 | ||
| 	generated/pow_r4_i4.c: Regenerated.
 | ||
| 	generated/pow_r4_i8.c: Regenerated.
 | ||
| 	generated/pow_r8_i4.c: Regenerated.
 | ||
| 	generated/pow_r8_i8.c: Regenerated.
 | ||
| 	generated/product_c4.c: Regenerated.
 | ||
| 	generated/product_c8.c: Regenerated.
 | ||
| 	generated/product_i4.c: Regenerated.
 | ||
| 	generated/product_i8.c: Regenerated.
 | ||
| 	generated/product_r4.c: Regenerated.
 | ||
| 	generated/product_r8.c: Regenerated.
 | ||
| 	generated/reshape_i4.c: Regenerated.
 | ||
| 	generated/reshape_i8.c: Regenerated.
 | ||
| 	generated/set_exponent_r4.c: Regenerated.
 | ||
| 	generated/set_exponent_r8.c: Regenerated.
 | ||
| 	generated/shape_i4.c: Regenerated.
 | ||
| 	generated/shape_i8.c: Regenerated.
 | ||
| 	generated/sum_c4.c: Regenerated.
 | ||
| 	generated/sum_c8.c: Regenerated.
 | ||
| 	generated/sum_i4.c: Regenerated.
 | ||
| 	generated/sum_i8.c: Regenerated.
 | ||
| 	generated/sum_r4.c: Regenerated.
 | ||
| 	generated/sum_r8.c: Regenerated.
 | ||
| 	generated/transpose_i4.c: Regenerated.
 | ||
| 	generated/transpose_i8.c: Regenerated.
 | ||
| 	generated/trig_c4.c: Regenerated.
 | ||
| 	generated/trig_c8.c: Regenerated.
 | ||
| 
 | ||
| 2005-01-07  Bud Davis  <bdavis9659@comcast.net>
 | ||
| 
 | ||
| 	PR fortran/18398
 | ||
| 	* transfer.c (next_record_r): always skip the
 | ||
| 	eol search if it was found during sf_read.
 | ||
| 
 | ||
| 
 | ||
| Copyright (C) 2005 Free Software Foundation, Inc.
 | ||
| 
 | ||
| Copying and distribution of this file, with or without modification,
 | ||
| are permitted in any medium without royalty provided the copyright
 | ||
| notice and this notice are preserved.
 |