re PR libfortran/31286 (cshift uses uninitialized variables)

	PR libfortran/31286
	PR libfortran/31296

	* intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
	* intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
	array structures we pass to unpack_internal.

From-SVN: r123944
parent 8cf81ddf
2007-04-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR libfortran/31286
PR libfortran/31296
* intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
* intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
array structures we pass to unpack_internal.
2007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* io/open.c (test_endfile): Revert changes for 31052, restoring this * io/open.c (test_endfile): Revert changes for 31052, restoring this
...@@ -201,7 +209,7 @@ ...@@ -201,7 +209,7 @@
2007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31395 PR libfortran/31395
* io/format.c (parse_format_list): Fix parsing. * io/format.c (parse_format_list): Fix parsing.
2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> 2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
...@@ -211,7 +219,7 @@ ...@@ -211,7 +219,7 @@
2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052 PR libfortran/31052
* io/open.c (test_endfile): Delete this function. * io/open.c (test_endfile): Delete this function.
(edit_modes): Delete call to test_endfile. (edit_modes): Delete call to test_endfile.
(new_unit): Likewise. (new_unit): Likewise.
...@@ -221,13 +229,13 @@ ...@@ -221,13 +229,13 @@
2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31366 PR libfortran/31366
* io/transfer.c (read_block_direct): Do not generate error when reading * io/transfer.c (read_block_direct): Do not generate error when reading
past EOF on a short record that is less than the RECL= specified. past EOF on a short record that is less than the RECL= specified.
2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31207 PR libfortran/31207
* io/unit.c (close_unit_1): If there are bytes previously written from * io/unit.c (close_unit_1): If there are bytes previously written from
ADVANCE="no", move to the end before closing. ADVANCE="no", move to the end before closing.
...@@ -243,13 +251,13 @@ ...@@ -243,13 +251,13 @@
2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052 PR libfortran/31052
* io/transfer.c (next_record_r): Do not call test_endfile if in namelist * io/transfer.c (next_record_r): Do not call test_endfile if in namelist
mode. mode.
2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31199 PR libfortran/31199
* io/io.h: Add saved_pos to gfc_unit structure. * io/io.h: Add saved_pos to gfc_unit structure.
* io/open.c (new_unit): Initialize saved_pos. * io/open.c (new_unit): Initialize saved_pos.
* io/transfer.c (data_transfer_init): Set max_pos to value in saved_pos. * io/transfer.c (data_transfer_init): Set max_pos to value in saved_pos.
...@@ -265,7 +273,7 @@ ...@@ -265,7 +273,7 @@
2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052 PR libfortran/31052
* file_pos.c: Update Copyright year. * file_pos.c: Update Copyright year.
* io/open.c (test_endfile): Restore test_endfile to fix SPEC regression. * io/open.c (test_endfile): Restore test_endfile to fix SPEC regression.
Update Copyright year. Update Copyright year.
...@@ -283,7 +291,7 @@ ...@@ -283,7 +291,7 @@
2007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052 PR libfortran/31052
* io/file_position (st_rewind): Fix comments. Remove use of * io/file_position (st_rewind): Fix comments. Remove use of
test_endfile. Don't seek if already at 0 position. Use new is_special test_endfile. Don't seek if already at 0 position. Use new is_special
function to set endfile state. function to set endfile state.
...@@ -299,7 +307,7 @@ ...@@ -299,7 +307,7 @@
2007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31099 PR libfortran/31099
* io/file_pos.c (st_rewind): Don't set bytes_left to zero. * io/file_pos.c (st_rewind): Don't set bytes_left to zero.
2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr> 2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
...@@ -323,7 +331,7 @@ ...@@ -323,7 +331,7 @@
2007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31051 PR libfortran/31051
* io/transfer.c (formatted_transfer_scalar): Adjust position for pending * io/transfer.c (formatted_transfer_scalar): Adjust position for pending
spaces when in writing mode. Clean up some formatting. spaces when in writing mode. Clean up some formatting.
...@@ -359,7 +367,7 @@ ...@@ -359,7 +367,7 @@
2007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31099 PR libfortran/31099
* io/open.c (new_unit): Initialize bytes_left and recl_subrecord. * io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
* io/transfer.c (next_record_w): Set bytes left to record length for * io/transfer.c (next_record_w): Set bytes left to record length for
sequential unformatted I/O. sequential unformatted I/O.
...@@ -423,12 +431,12 @@ ...@@ -423,12 +431,12 @@
2007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/30918 PR libfortran/30918
* io/listread.c (namelist_read): Eat comment line. * io/listread.c (namelist_read): Eat comment line.
2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/30910 PR libfortran/30910
* io/write.c (output_float): Add condition of format F only for * io/write.c (output_float): Add condition of format F only for
special case rounding with zero precision. special case rounding with zero precision.
...@@ -753,7 +761,7 @@ ...@@ -753,7 +761,7 @@
2007-01-17 Tom Tromey <tromey@redhat.com> 2007-01-17 Tom Tromey <tromey@redhat.com>
PR libgfortran/27107: PR libfortran/27107:
* aclocal.m4, configure, Makefile.in: Rebuilt. * aclocal.m4, configure, Makefile.in: Rebuilt.
* configure.ac: Enable automake dependency tracking. Update * configure.ac: Enable automake dependency tracking. Update
minimum automake version. minimum automake version.
...@@ -789,14 +797,14 @@ ...@@ -789,14 +797,14 @@
2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/30435 PR libfortran/30435
* io/list_read.c (finish_separator): Don't call next_record. * io/list_read.c (finish_separator): Don't call next_record.
(list_formatted_read_scalar): Clean up some comments and whitespace. (list_formatted_read_scalar): Clean up some comments and whitespace.
(nml_read_obj): Whitespace fix. (nml_read_obj): Whitespace fix.
2007-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2007-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/30162 PR libfortran/30162
* io/unix.c (fd_flush): Don't seek if file is not seekable, defined as * io/unix.c (fd_flush): Don't seek if file is not seekable, defined as
s->file_length == -1. s->file_length == -1.
(fd_alloc_w_at): Do not adjust file_length if file is not seekable. (fd_alloc_w_at): Do not adjust file_length if file is not seekable.
......
...@@ -590,7 +590,7 @@ ...@@ -590,7 +590,7 @@
2004-08-05 Victor Leikehman <lei@il.ibm.com> 2004-08-05 Victor Leikehman <lei@il.ibm.com>
PR libgfortran/16704 PR libfortran/16704
* io/read.c (read_radix): Understand letters f and F as hex digits. * io/read.c (read_radix): Understand letters f and F as hex digits.
2004-08-04 Victor Leikehman <lei@il.ibm.com> 2004-08-04 Victor Leikehman <lei@il.ibm.com>
...@@ -605,7 +605,7 @@ ...@@ -605,7 +605,7 @@
2004-08-03 Roger Sayle <roger@eyesopen.com> 2004-08-03 Roger Sayle <roger@eyesopen.com>
PR libgfortran/16137 PR libfortran/16137
* configure.ac: Add tests for acosf, asinf, atan2f, atanf, ceilf, * configure.ac: Add tests for acosf, asinf, atan2f, atanf, ceilf,
copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f, copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
scalbnf, sinf, sinhf, sqrtf, tanf and tanhf in libm. scalbnf, sinf, sinhf, sqrtf, tanf and tanhf in libm.
......
2005-12-31 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-31 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25594 PR libfortran/25594
PR libgfortran/25419 PR libfortran/25419
* io/list_read.c (list_formatted_read_scalar): Test for comma to return * 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. a null value (default). Revert patch of 25419 on 2005-12-28.
2005-12-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25139 PR libfortran/25139
* io/unix.c (fd_truncate): Set s->active to zero. * io/unix.c (fd_truncate): Set s->active to zero.
PR libgfortran/25510 PR libfortran/25510
* libgfortran.h: Add ERROR_INTERNAL and ERROR_INTERNAL_UNIT. * libgfortran.h: Add ERROR_INTERNAL and ERROR_INTERNAL_UNIT.
* runtime/error.c (translate_error): Add messages for new errors. * runtime/error.c (translate_error): Add messages for new errors.
* io/list_read.c (next_char): Use new errors. * io/list_read.c (next_char): Use new errors.
...@@ -17,32 +17,32 @@ ...@@ -17,32 +17,32 @@
2005-12-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25550 PR libfortran/25550
* io/file_pos.c (st_rewind): Reset bytes left so no error occurs in * io/file_pos.c (st_rewind): Reset bytes left so no error occurs in
next_record_r. next_record_r.
2005-12-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25419 PR libfortran/25419
* io/list_read.c (list_formatted_read_scalar): Allow comma to return a * io/list_read.c (list_formatted_read_scalar): Allow comma to return a
null value (default). null value (default).
2005-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25307 PR libfortran/25307
* io/list_read.c (next_char): Handle end-of-file conditions for * io/list_read.c (next_char): Handle end-of-file conditions for
internal units and add support for internal character array units. internal units and add support for internal character array units.
2005-12-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25463 PR libfortran/25463
* io/transfer.c (finalize_transfer): Fix execution order so that * io/transfer.c (finalize_transfer): Fix execution order so that
next_record is set to zero in all cases. next_record is set to zero in all cases.
2005-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25264 PR libfortran/25264
PR libgfortran/25349 PR libfortran/25349
* io/unit.c (get_unit): Delete code that cleared the string when the * io/unit.c (get_unit): Delete code that cleared the string when the
unit was opened, which is too soon. unit was opened, which is too soon.
* io/transfer.c (next_record_w): Pass done flag in. Change logic for * io/transfer.c (next_record_w): Pass done flag in. Change logic for
...@@ -104,7 +104,7 @@ ...@@ -104,7 +104,7 @@
2005-12-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-12-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25039 PR libfortran/25039
* io/io.h: Create a new flag sf_read_comma to control comma * io/io.h: Create a new flag sf_read_comma to control comma
separators in numeric reads. separators in numeric reads.
* io/transfer.c (formatted_transfer_scalar): Initialize the flag. * io/transfer.c (formatted_transfer_scalar): Initialize the flag.
...@@ -131,7 +131,7 @@ ...@@ -131,7 +131,7 @@
2005-11-28 Steven G. Kargl <kargls@comcast.net> 2005-11-28 Steven G. Kargl <kargls@comcast.net>
PR libgfortran/25149 PR libfortran/25149
* intrinsics/abort.c: Add external abort_ to allow linking when * intrinsics/abort.c: Add external abort_ to allow linking when
invoking -std=f95 in testsuite. invoking -std=f95 in testsuite.
...@@ -154,7 +154,7 @@ ...@@ -154,7 +154,7 @@
2005-11-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-11-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25109 PR libfortran/25109
* io/unit.c (init_units): Set default flag to BLANK_NULL per * io/unit.c (init_units): Set default flag to BLANK_NULL per
requirement of F95 standard. Set PAD_YES for stdin. requirement of F95 standard. Set PAD_YES for stdin.
...@@ -214,7 +214,7 @@ ...@@ -214,7 +214,7 @@
2005-11-26 Janne Blomqvist <jb@gcc.gnu.org> 2005-11-26 Janne Blomqvist <jb@gcc.gnu.org>
PR libgfortran/24945 PR libfortran/24945
* io/open.c (edit_modes): Check for STATUS_UNKNOWN flag. * io/open.c (edit_modes): Check for STATUS_UNKNOWN flag.
2005-11-25 Richard Henderson <rth@redhat.com> 2005-11-25 Richard Henderson <rth@redhat.com>
...@@ -234,7 +234,7 @@ ...@@ -234,7 +234,7 @@
2005-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2005-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/24794 PR libfortran/24794
* io/list_read.c (read_character): Add auto completion on short * io/list_read.c (read_character): Add auto completion on short
namelist reads. namelist reads.
...@@ -522,7 +522,7 @@ ...@@ -522,7 +522,7 @@
2005-11-12 Steven G. Kargl <kargls@comcast.net> 2005-11-12 Steven G. Kargl <kargls@comcast.net>
PR libgfortran/24787 PR libfortran/24787
* intrinsics/string_intrinsics.c (string_scan): Off by one; Fix typos * intrinsics/string_intrinsics.c (string_scan): Off by one; Fix typos
in nearby comment. in nearby comment.
...@@ -611,7 +611,7 @@ ...@@ -611,7 +611,7 @@
2005-10-31 Jerry DeLisle <jvdelisle@verizon.net> 2005-10-31 Jerry DeLisle <jvdelisle@verizon.net>
PR libgfortran/24584 PR libfortran/24584
* io/list_read.c (free_saved): Set saved_used to zero. * io/list_read.c (free_saved): Set saved_used to zero.
2005-10-30 Francois-Xavier Coudert <coudert@clipper.ens.fr> 2005-10-30 Francois-Xavier Coudert <coudert@clipper.ens.fr>
...@@ -663,7 +663,7 @@ ...@@ -663,7 +663,7 @@
2005-10-24 Jerry DeLisle <jvdelisle@verizon.net> 2005-10-24 Jerry DeLisle <jvdelisle@verizon.net>
PR libgfortran/24224 PR libfortran/24224
* libgfortran.h: Remove array stride error code. * libgfortran.h: Remove array stride error code.
* runtime/error.c: Remove array stride error. * runtime/error.c: Remove array stride error.
* io/io.h: Change name of 'nml_loop_spec' to 'array_loop_spec' to be * io/io.h: Change name of 'nml_loop_spec' to 'array_loop_spec' to be
...@@ -688,7 +688,7 @@ ...@@ -688,7 +688,7 @@
2005-10-23 Jerry DeLisle <jvdelisle@verizon.net> 2005-10-23 Jerry DeLisle <jvdelisle@verizon.net>
PR libgfortran/24489 PR libfortran/24489
* io/transfer.c (read_block): Change the order of execution to not read * io/transfer.c (read_block): Change the order of execution to not read
past end-of-record. past end-of-record.
(read_block_direct): Same change. (read_block_direct): Same change.
...@@ -787,7 +787,7 @@ ...@@ -787,7 +787,7 @@
2005-10-11 Steven G. Kargl <kargls@comcast.net> 2005-10-11 Steven G. Kargl <kargls@comcast.net>
PR libgfortran/24313 PR libfortran/24313
* c99_functions.c (csqrtf, csqrt): Fix choice of branch cut. Note * c99_functions.c (csqrtf, csqrt): Fix choice of branch cut. Note
csqrt{f} were imported from glibc, and this bug is still present csqrt{f} were imported from glibc, and this bug is still present
there. glibc PR is 1146. there. glibc PR is 1146.
...@@ -1375,7 +1375,7 @@ ...@@ -1375,7 +1375,7 @@
2005-07-11 David Edelsohn <edelsohn@gnu.org> 2005-07-11 David Edelsohn <edelsohn@gnu.org>
PR libgfortran/22412 PR libfortran/22412
* io/write.c (otoa): Bias p by SCRATCH_SIZE, not * io/write.c (otoa): Bias p by SCRATCH_SIZE, not
sizeof (SCRATCH_SIZE). sizeof (SCRATCH_SIZE).
(btoa): Same. (btoa): Same.
...@@ -2114,13 +2114,13 @@ ...@@ -2114,13 +2114,13 @@
2005-04-17 Paul Thomas <pault@gcc.gnu.org> 2005-04-17 Paul Thomas <pault@gcc.gnu.org>
PR libgfortran/12884 PR libfortran/12884
PR libgfortran/17285 PR libfortran/17285
PR libgfortran/18122 PR libfortran/18122
PR libgfortran/18210 PR libfortran/18210
PR libgfortran/18392 PR libfortran/18392
PR libgfortran/18591 PR libfortran/18591
PR libgfortran/18879 PR libfortran/18879
* io/io.h (nml_ls): Declare. * io/io.h (nml_ls): Declare.
(namelist_info): Modify for arrays. (namelist_info): Modify for arrays.
* io/list_read.c (namelist_read): Reduced to call to new functions. * io/list_read.c (namelist_read): Reduced to call to new functions.
...@@ -2495,7 +2495,7 @@ ...@@ -2495,7 +2495,7 @@
2005-02-25 Peter O'Gorman <peter@pogma.com> 2005-02-25 Peter O'Gorman <peter@pogma.com>
Toon Moene <toon@moene.indiv.nluug.nl> Toon Moene <toon@moene.indiv.nluug.nl>
PR libgfortran/17748 PR libfortran/17748
* runtime/environ.c: Remove references to environ. * runtime/environ.c: Remove references to environ.
(show_variables): remove GFORTRAN_UNBUFFERED_* and (show_variables): remove GFORTRAN_UNBUFFERED_* and
GFORTRAN_NAME_* because they require environ. GFORTRAN_NAME_* because they require environ.
...@@ -2534,8 +2534,8 @@ ...@@ -2534,8 +2534,8 @@
2005-02-01 Paul Thomas <paulthomas2@wanadoo.fr> 2005-02-01 Paul Thomas <paulthomas2@wanadoo.fr>
PR libgfortran/19363 PR libfortran/19363
PR libgfortran/19691 PR libfortran/19691
* libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin. * libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.
2005-01-30 Bud Davis <bdavis@gfortran.org> 2005-01-30 Bud Davis <bdavis@gfortran.org>
...@@ -2572,7 +2572,7 @@ ...@@ -2572,7 +2572,7 @@
2005-01-22 David Edelsohn <edelsohn@gnu.org> 2005-01-22 David Edelsohn <edelsohn@gnu.org>
PR libgfortran/19052 PR libfortran/19052
* libgfortran.h (options_t): Add stderr_unit. * libgfortran.h (options_t): Add stderr_unit.
* io/io.h (error_stream): Declare. * io/io.h (error_stream): Declare.
* io/open.c (new_unit): Do not terminate abnormally if opening * io/open.c (new_unit): Do not terminate abnormally if opening
......
...@@ -105,7 +105,7 @@ ...@@ -105,7 +105,7 @@
2006-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/30014 PR libfortran/30014
*io/io.h (st_parameter_dt): Change *size and *iolength type to *io/io.h (st_parameter_dt): Change *size and *iolength type to
GFC_IO_INT. GFC_IO_INT.
*io/transfer.c (finalize_transfer): Cast dtp->u.p.size_used to *io/transfer.c (finalize_transfer): Cast dtp->u.p.size_used to
...@@ -237,7 +237,7 @@ ...@@ -237,7 +237,7 @@
2006-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29752 PR libfortran/29752
* io/transfer.c (finalize_transfer): Flush on ADVANCE_NO. * io/transfer.c (finalize_transfer): Flush on ADVANCE_NO.
2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-11-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
...@@ -246,7 +246,7 @@ ...@@ -246,7 +246,7 @@
2006-11-04 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-11-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25545 PR libfortran/25545
* io/transfer.c (write_block): Cleanup code paths between * io/transfer.c (write_block): Cleanup code paths between
stream and non-stream I/O. stream and non-stream I/O.
(write_buf): Cleanup. (write_buf): Cleanup.
...@@ -304,12 +304,12 @@ ...@@ -304,12 +304,12 @@
2006-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29563 PR libfortran/29563
* io/list_read.c (next_char): Fix an error in previous commit. * io/list_read.c (next_char): Fix an error in previous commit.
2006-10-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-10-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29563 PR libfortran/29563
* io/io.h (st_parameter_dt): Add new flag at_eof. * io/io.h (st_parameter_dt): Add new flag at_eof.
* io/list_read.c (next_char): Set flag when EOF and return '\n' to * io/list_read.c (next_char): Set flag when EOF and return '\n' to
signal EOR. Check flag on next call and jump out. signal EOR. Check flag on next call and jump out.
...@@ -518,7 +518,7 @@ ...@@ -518,7 +518,7 @@
2006-10-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-10-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29277 PR libfortran/29277
* io/write.c (write_a): Add conversion of LF to CR-LF for systems with * io/write.c (write_a): Add conversion of LF to CR-LF for systems with
#define HAVE_CRLF. #define HAVE_CRLF.
...@@ -551,7 +551,7 @@ ...@@ -551,7 +551,7 @@
2006-10-17 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-10-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29277 PR libfortran/29277
* io/list_read.c (next_char): Update strm_pos. * io/list_read.c (next_char): Update strm_pos.
(eat_separator): Delete extra call to unget_char. (eat_separator): Delete extra call to unget_char.
* io/transfer.c (read_block): Use read_sf for formatted stream I/O. * io/transfer.c (read_block): Use read_sf for formatted stream I/O.
...@@ -610,7 +610,7 @@ ...@@ -610,7 +610,7 @@
2006-10-08 Paul Thomas <pault@gcc.gnu.org> 2006-10-08 Paul Thomas <pault@gcc.gnu.org>
Erik Edelmann <edelmann@gcc.gnu.org> Erik Edelmann <edelmann@gcc.gnu.org>
PR libgfortran/20541 PR libfortran/20541
* Makefile.in : Add move_alloc. * Makefile.in : Add move_alloc.
* intrinsics/move_alloc.c: New function. * intrinsics/move_alloc.c: New function.
* Makefile.am : Add move_alloc. * Makefile.am : Add move_alloc.
...@@ -712,12 +712,12 @@ D ...@@ -712,12 +712,12 @@ D
2006-09-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-09-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29099 PR libfortran/29099
* intrinsics/date_and_time.c (secnds): Fix case of zero time. * intrinsics/date_and_time.c (secnds): Fix case of zero time.
2006-09-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-09-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29053 PR libfortran/29053
* io.h (gfc_unit): Add variable, strm_pos, to track * io.h (gfc_unit): Add variable, strm_pos, to track
STREAM I/O file position. STREAM I/O file position.
* file_pos.c (st_rewind): Set strm_pos to beginning. * file_pos.c (st_rewind): Set strm_pos to beginning.
...@@ -750,13 +750,13 @@ D ...@@ -750,13 +750,13 @@ D
2006-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/28354 PR libfortran/28354
* io/write.c: Check for special case of zero precision in format * io/write.c: Check for special case of zero precision in format
and pre-round the real value. and pre-round the real value.
2006-08-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-08-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25828 PR libfortran/25828
* libgfortran.h: Rename GFC_LARGE_IO_INT to GFC_IO_INT. * libgfortran.h: Rename GFC_LARGE_IO_INT to GFC_IO_INT.
* io/file_pos.c (st_backspace): Ignore if access=STREAM. * io/file_pos.c (st_backspace): Ignore if access=STREAM.
(st_rewind): Handle case of access=STREAM. (st_rewind): Handle case of access=STREAM.
...@@ -834,13 +834,13 @@ D ...@@ -834,13 +834,13 @@ D
2006-07-30 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-07-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/28335 PR libfortran/28335
* file_position.c (st_flush): Add clearer error when UNIT does not * file_position.c (st_flush): Add clearer error when UNIT does not
exist. Add reference to standard in comment. exist. Add reference to standard in comment.
2006-07-30 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-07-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/28335 PR libfortran/28335
* close.c (st_close): Revert previous patch and add comment. * close.c (st_close): Revert previous patch and add comment.
* file_position.c (st_flush): Revert previous patch and add comment. * file_position.c (st_flush): Revert previous patch and add comment.
...@@ -875,7 +875,7 @@ D ...@@ -875,7 +875,7 @@ D
2006-07-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-07-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/28335 PR libfortran/28335
* close.c (st_close): Add error when UNIT does not exist. * close.c (st_close): Add error when UNIT does not exist.
* file_position.c (st_flush): Add error when UNIT does not exist. * file_position.c (st_flush): Add error when UNIT does not exist.
...@@ -886,13 +886,13 @@ D ...@@ -886,13 +886,13 @@ D
2006-07-23 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-07-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25289 PR libfortran/25289
* libgfortran.h: Add conditional definition of GFC_LARGE_IO_INT type. * libgfortran.h: Add conditional definition of GFC_LARGE_IO_INT type.
* io/io.h (st_parameter_dt): Define rec as type GFC_LARGE_IO_INT. * io/io.h (st_parameter_dt): Define rec as type GFC_LARGE_IO_INT.
2006-07-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-07-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/28339 PR libfortran/28339
* io/transfer.c (next_record_w): Use next_array_record result to set * io/transfer.c (next_record_w): Use next_array_record result to set
END_FILE. (write_block): Test for END_FILE before the next write occurs. END_FILE. (write_block): Test for END_FILE before the next write occurs.
* io/unit.c (get_internal_unit): Initialize iunit->endfile for internal * io/unit.c (get_internal_unit): Initialize iunit->endfile for internal
...@@ -930,7 +930,7 @@ D ...@@ -930,7 +930,7 @@ D
2006-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27704 PR libfortran/27704
* runtime/error.c (notify_std): Pass common flags into function. Use * runtime/error.c (notify_std): Pass common flags into function. Use
flags to show locus of error or warning. flags to show locus of error or warning.
* libgfortran.h: Add enum try. Add prototype for notify_std. * libgfortran.h: Add enum try. Add prototype for notify_std.
...@@ -1028,12 +1028,12 @@ D ...@@ -1028,12 +1028,12 @@ D
2006-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27757 PR libfortran/27757
* io/unix.c (fd_seek): Set active to zero. * io/unix.c (fd_seek): Set active to zero.
2006-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27634 PR libfortran/27634
* io/format.c (parse_format_list): Allow missing period in format only * io/format.c (parse_format_list): Allow missing period in format only
if -std=legacy. if -std=legacy.
...@@ -1072,7 +1072,7 @@ D ...@@ -1072,7 +1072,7 @@ D
2006-05-20 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-05-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/24459 PR libfortran/24459
* io/list_read.c (nml_parse_qualifier): Leave loop spec end value * io/list_read.c (nml_parse_qualifier): Leave loop spec end value
at default value unless -std=f95 or if an array section at default value unless -std=f95 or if an array section
is specified in namelist input. Warn if -pedantic. is specified in namelist input. Warn if -pedantic.
...@@ -1080,12 +1080,12 @@ D ...@@ -1080,12 +1080,12 @@ D
2006-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/22423 PR libfortran/22423
* io/transfer.c (read_block): Return NULL instead of nothing. * io/transfer.c (read_block): Return NULL instead of nothing.
2006-05-16 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-05-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27575 PR libfortran/27575
* io/transfer.c (read_block): Add check for end file condition. * io/transfer.c (read_block): Add check for end file condition.
(read_block_direct): Add check for end file condition. (read_block_direct): Add check for end file condition.
...@@ -1108,19 +1108,19 @@ D ...@@ -1108,19 +1108,19 @@ D
2006-04-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-04-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27360 PR libfortran/27360
* io/list_read.c (read_logical): Free line_buffer and free saved. * io/list_read.c (read_logical): Free line_buffer and free saved.
2006-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27304 PR libfortran/27304
* io/transfer.c (formatted_transfer_scalar): Generate error if data * io/transfer.c (formatted_transfer_scalar): Generate error if data
descriptors are exhausted. descriptors are exhausted.
* io/format.c (next_format0): Fix comment. * io/format.c (next_format0): Fix comment.
2006-04-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-04-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/20257 PR libfortran/20257
* io/io.h: Add prototypes for get_internal_unit and free_internal_unit. * io/io.h: Add prototypes for get_internal_unit and free_internal_unit.
* io/unit.c (get_internal_unit): Initialize unit number, not zero. * io/unit.c (get_internal_unit): Initialize unit number, not zero.
(free_internal_unit): New function to consolidate freeing memory. (free_internal_unit): New function to consolidate freeing memory.
...@@ -1149,7 +1149,7 @@ D ...@@ -1149,7 +1149,7 @@ D
2006-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27138 PR libfortran/27138
* io/list_read.c (eat_line): New function. * io/list_read.c (eat_line): New function.
(parse_repeat): Use new function and free_saved. (parse_repeat): Use new function and free_saved.
(read_logical): Same. (read_logical): Same.
...@@ -1160,7 +1160,7 @@ D ...@@ -1160,7 +1160,7 @@ D
2006-04-12 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-04-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26766 PR libfortran/26766
* io/io.h: Add bit to identify associated unit as internal. * io/io.h: Add bit to identify associated unit as internal.
* io/unit.c (get_external_unit): Renamed the find_unit_1 function to * io/unit.c (get_external_unit): Renamed the find_unit_1 function to
reflect the external unit functionality vs internal unit. reflect the external unit functionality vs internal unit.
...@@ -1181,7 +1181,7 @@ D ...@@ -1181,7 +1181,7 @@ D
2006-04-10 Jakub Jelinek <jakub@redhat.com> 2006-04-10 Jakub Jelinek <jakub@redhat.com>
PR libgfortran/24685 PR libfortran/24685
* io/write.c (MIN_FIELD_WIDTH, STR, STR1): Define. * io/write.c (MIN_FIELD_WIDTH, STR, STR1): Define.
(output_float): Increase buffer sizes for IEEE quad and IBM extended (output_float): Increase buffer sizes for IEEE quad and IBM extended
long double. long double.
...@@ -1189,7 +1189,7 @@ D ...@@ -1189,7 +1189,7 @@ D
2006-04-07 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-04-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26890 PR libfortran/26890
* io/io.h: Revert change to pad size made on 2006-03-30. * io/io.h: Revert change to pad size made on 2006-03-30.
Add comment explaining dependency with fortran/trans-io.c. Add comment explaining dependency with fortran/trans-io.c.
...@@ -1205,7 +1205,7 @@ D ...@@ -1205,7 +1205,7 @@ D
2006-03-30 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-03-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26890 PR libfortran/26890
* io/io.h: Add size_used to st_parameter_dt, adjust pad size. * io/io.h: Add size_used to st_parameter_dt, adjust pad size.
*io/transfer.c (data_transfer_init): Initialize size_used to zero. *io/transfer.c (data_transfer_init): Initialize size_used to zero.
(read_sf): Use size_used. (read_sf): Use size_used.
...@@ -1231,12 +1231,12 @@ D ...@@ -1231,12 +1231,12 @@ D
2006-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26880 PR libfortran/26880
* io/file_pos.c (st_rewind): Clear read_bad flag. * io/file_pos.c (st_rewind): Clear read_bad flag.
2006-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26661 PR libfortran/26661
* io/io.h: Add read_sf so it can be used by read_x. * io/io.h: Add read_sf so it can be used by read_x.
* io/transfer.c (read_sf): Pass no_error flag to read_sf. Use it to * io/transfer.c (read_sf): Pass no_error flag to read_sf. Use it to
break out rather than error on EOF or EOR conditions. break out rather than error on EOF or EOR conditions.
...@@ -1414,7 +1414,7 @@ D ...@@ -1414,7 +1414,7 @@ D
2006-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26509 PR libfortran/26509
* libgfortran.h: Add ERROR_DIRECT_EOR. * libgfortran.h: Add ERROR_DIRECT_EOR.
* runtime/error.c (translate_error): Add translation for new error. * runtime/error.c (translate_error): Add translation for new error.
* io/transfer.c (write_buf): Add check for EOR when mode is * io/transfer.c (write_buf): Add check for EOR when mode is
...@@ -1437,7 +1437,7 @@ D ...@@ -1437,7 +1437,7 @@ D
2006-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26499 PR libfortran/26499
* io/file_pos (st_rewind): Flush always. * io/file_pos (st_rewind): Flush always.
* io/unix.c (fd_truncate): Return SUCCESS rather than FAILURE for * io/unix.c (fd_truncate): Return SUCCESS rather than FAILURE for
special files like /dev/null. special files like /dev/null.
...@@ -1446,7 +1446,7 @@ D ...@@ -1446,7 +1446,7 @@ D
2006-03-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-03-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26554 PR libfortran/26554
* io/list_read.c (read_logical): Return the value if not in namelist * io/list_read.c (read_logical): Return the value if not in namelist
mode. mode.
...@@ -1460,7 +1460,7 @@ D ...@@ -1460,7 +1460,7 @@ D
2006-02-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-02-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26136 PR libfortran/26136
* io/io.h: Add flag for reading from line_buffer. * io/io.h: Add flag for reading from line_buffer.
* io/list_read.c (l_push_char): New function to save namelist * io/list_read.c (l_push_char): New function to save namelist
input when reading logicals. input when reading logicals.
...@@ -1472,14 +1472,14 @@ D ...@@ -1472,14 +1472,14 @@ D
2006-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26464 PR libfortran/26464
* io/file_pos.c (st_backspace): Flush and truncate file * io/file_pos.c (st_backspace): Flush and truncate file
when in AFTER_ENDFILE condition. when in AFTER_ENDFILE condition.
* io/transfer.c (st_read_done): Remove flush, no longer needed. * io/transfer.c (st_read_done): Remove flush, no longer needed.
2006-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26423 PR libfortran/26423
* io/unix.c (fd_seek): Revert change from 25949. * io/unix.c (fd_seek): Revert change from 25949.
(fd_read): Same. (fd_read): Same.
(fd_write): Same. (fd_write): Same.
...@@ -1500,7 +1500,7 @@ D ...@@ -1500,7 +1500,7 @@ D
2006-02-12 Janne Blomqvist <jb@gcc.gnu.org> 2006-02-12 Janne Blomqvist <jb@gcc.gnu.org>
PR libgfortran/25949 PR libfortran/25949
* io/io.h: Add set function pointer to struct stream. * io/io.h: Add set function pointer to struct stream.
* io/unix.c (fd_seek): Only update offset, don't seek. * io/unix.c (fd_seek): Only update offset, don't seek.
(fd_sset): New function. (fd_sset): New function.
...@@ -1572,18 +1572,18 @@ D ...@@ -1572,18 +1572,18 @@ D
2006-01-24 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-01-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25835 PR libfortran/25835
* io/transfer.c (st_read_done): Flush buffers when read is done. * io/transfer.c (st_read_done): Flush buffers when read is done.
2006-01-17 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-01-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25697 PR libfortran/25697
* io/transfer.c (us_read): Detect end of file condition from previous * io/transfer.c (us_read): Detect end of file condition from previous
operations and bail out (no need to pre-position). operations and bail out (no need to pre-position).
2006-01-17 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-01-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25631 PR libfortran/25631
* io/transfer.c (formatted_transfer_scalar): Adjust pending_spaces and * io/transfer.c (formatted_transfer_scalar): Adjust pending_spaces and
skips so that TL works correctly when no bytes_used yet. skips so that TL works correctly when no bytes_used yet.
...@@ -1611,7 +1611,7 @@ D ...@@ -1611,7 +1611,7 @@ D
2006-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> 2006-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/25598 PR libfortran/25598
* io/file_pos.c (unformatted_backspace): Assure the new file position * io/file_pos.c (unformatted_backspace): Assure the new file position
to seek is not less than zero. to seek is not less than zero.
(st_backspace): Set unit bytes_left to zero. (st_backspace): Set unit bytes_left to zero.
......
...@@ -103,6 +103,8 @@ cshift0 (gfc_array_char * ret, const gfc_array_char * array, ...@@ -103,6 +103,8 @@ cshift0 (gfc_array_char * ret, const gfc_array_char * array,
runtime_error ("Argument 'DIM' is out of range in call to 'CSHIFT'"); runtime_error ("Argument 'DIM' is out of range in call to 'CSHIFT'");
which = which - 1; which = which - 1;
sstride[0] = 0;
rstride[0] = 0;
extent[0] = 1; extent[0] = 1;
count[0] = 0; count[0] = 0;
......
...@@ -209,6 +209,7 @@ unpack0 (gfc_array_char *ret, const gfc_array_char *vector, ...@@ -209,6 +209,7 @@ unpack0 (gfc_array_char *ret, const gfc_array_char *vector,
{ {
gfc_array_char tmp; gfc_array_char tmp;
memset (&tmp, 0, sizeof (tmp));
tmp.dtype = 0; tmp.dtype = 0;
tmp.data = field; tmp.data = field;
unpack_internal (ret, vector, mask, &tmp, GFC_DESCRIPTOR_SIZE (vector), 0); unpack_internal (ret, vector, mask, &tmp, GFC_DESCRIPTOR_SIZE (vector), 0);
...@@ -228,6 +229,7 @@ unpack0_char (gfc_array_char *ret, ...@@ -228,6 +229,7 @@ unpack0_char (gfc_array_char *ret,
{ {
gfc_array_char tmp; gfc_array_char tmp;
memset (&tmp, 0, sizeof (tmp));
tmp.dtype = 0; tmp.dtype = 0;
tmp.data = field; tmp.data = field;
unpack_internal (ret, vector, mask, &tmp, vector_length, 0); unpack_internal (ret, vector, mask, &tmp, vector_length, 0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment