+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 libgfortran/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.
(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>
+ Steven G. Kargl <kargls@comcast.net>
PR fortran/19872
* io/transfer.c (data_transfer_init): truncate an existing
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>
+ Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20068
PR libfortran/20125
2005-02-19 Steven G. Kargl <kargls@comcast.net>
- * intrinsic/date_and_time.c: Fix conformance problems.
+ * intrinsic/date_and_time.c: Fix conformance problems.
2005-02-01 Paul Thomas <paulthomas2@wanadoo.fr>
(random_r8): fix infinite loop.
2004-06-12 Bud Davis <bdavis9659@comcast.net>
- Steve Kargl <sgk@troutmask.apl.washington.edu>
+ Steve Kargl <sgk@troutmask.apl.washington.edu>
PR gfortran/15292
* intrinsics/c99_functions.c: New file.