-2010-04-24 Kai Tietz <kai.tietz@onevision.com>
+2011-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- PR/43844
- * io/unix.c (tempfile): Correct logic for mktemp case.
+ PR libgfortran/47567
+ * io/write_float.def (output_float): Remove special case handling of
+ zero with width 1.
-2010-04-06 Tobias Burnus <burnus@net-b.de>
+2011-02-23 Janne Blomqvist <jb@gcc.gnu.org>
+ Jerry DeLisle <jvdelisle@gcc.gnu.org>
- PR fortran/39997
- * runtime/stop.c (error_stop_string): New function.
- * gfortran.map (_gfortran_error_stop_string): Add.
+ PR libfortran/47694
+ * io/fbuf.h (fbuf_getptr): New inline function.
+ * io/transfer.c (read_sf): Use fbuf_getptr and fbuf_getc to scan
+ through the string instead of fbuf_read.
-2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+2011-02-22 Tobias Burnus <burnus@net-b.de>
+ Kai-Uwe Eckhardt <kuehro@gmx.de>
- * Makefile.in: Regenerate.
- * aclocal.m4: Regenerate.
-
-2010-04-01 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/43605
- * io/intrinsics.c (gf_ftell): New function, seek to correct offset.
- (ftell): Call gf_ftell.
- (FTELL_SUB): Likewise.
-
-2010-04-01 Paul Thomas <pault@gcc.gnu.org>
-
- * io/transfer.c : Update copyright.
- * io/unix.c : ditto
- * io/read.c : ditto
- * io/io.h : ditto
- * io/unix.h : ditto
- * io/inquire.c : ditto
- * io/format.c : ditto
- * io/list_read.c : ditto
- * runtime/error.c : ditto
- * libgfortran.h : ditto
- * intrinsics/date_and_time.c: ditto
- * intrinsics/args.c : ditto
-
-2010-04-01 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/43605
- * io/intrinsics.c (ftell): Reset fbuf, correct offset.
- (FTELL_SUB): Likewise.
-
-2010-03-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/43265
- * io/transfer.c (next_record_r): Only call hit_eof for specific
- conditions when an EOF is encountered.
-
-2010-03-29 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/43551
- * io/unix.c (buf_write): Set physical_offset after lseek.
-
-2010-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/43517
- * io/read.c (read_x): Return if seen EOR condition.
-
-2010-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/43409
- * io/io.h: Fix type of size in st_parameter_inquire structure.
-
-2010-03-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ PR libfortran/47830
+ * intrinsics/c99_functions.c (roundl): Make C valid for
+ HAVE_NEXTAFTERL.
- PR fortran/43409
- * io/unix.h: Add prototype for new function to return file size.
- * io/unix.c (file_size): New function.
- * io/inquire.c (inquire_via_unit): Use new function.
- (inquire_via_filename): Use new function.
+2011-02-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-2010-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ PR libgfortran/47567
+ * io/write_float.def (output_float): Adjust width for F0.d to
+ allow space for negative signs on zero.
- * io/transfer.c (read_sf_internal): Remove stray function declaration
- used during debugging.
+2011-02-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-2010-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ PR libgfortran/47667
+ * io/list_read.c (read_logical): Check for end of line before calling
+ eat_line. (read_integer): Likewise. (parse_real): Don't unget the
+ separator. Check for end of line before calling eat_line.
+ (read_complex): Allow line-end before and after parenthesis and comma.
+ Check for end of line before calling eat_line. (read_real): Check for
+ end of line before calling eat_line.
- PR libfortran/43265
- * io/io.h: Delete prototype for read_sf, making it static.
- * io/read.c (read_x): Modify to call hit_eof if PAD="no".
- * io/transfer.c (read_sf_internal): New static function extracted from
- read_sf for use on internal units only. Handle empty string case.
- (read_sf): New factoring of this function, make it static. Add special
- conditions for EOF based on ADVANCE="no", PAD="no", and whether any
- bytes have been previously read from the record.
- (read_block_form): Modify to call read_sf or read_sf_internal.
- (next_record_r): Add a done flag similar to next_record_w. Call hit_eof
- if internal array unit next record returns finished, meaning an EOF was
- found and not done, ie not the last record expected. For external
- units call hit_eof if item_count is 1 or there are no pending spaces.
- (next_record): Update call to next_record_r.
+2011-02-16 Jakub Jelinek <jakub@redhat.com>
-2010-03-12 Kai Tietz <kai.tietz@onevision.com>
+ PR libfortran/47757
+ * gfortran.map (GFORTRAN_1.4): Export
+ _gfortran_{m,s}i{all,any,parity}_i{1,2,4,8,16} and
+ _gfortran_{cshift0,eoshift{0,2}}_16_char4.
- PR/42950
- * io/format.c (parse_format_list): Add to ERROR, WARNING,
- SILENT enumerators NOTIFICATION_ prefix.
- * runtime/error.c (notification_std): Likewise.
- * libgfortran.h (notification): Likewise.
- (GFC_LARGEST_BUF): Check for HAVE_GFC_INTEGER_16.
+2011-02-15 Tobias Burnus <burnus@net-b.de>
-2010-03-11 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/43228
- * io/list_read.c (nml_parse_qualifier): Disable expanded_read
- for array sections.
-
-2010-03-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/43320
- * io/transfer.c (next_record_r): Add hit_eof based on item_count
- condition.
-
-2010-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/43265
- * io/read.c: Include fbuf.h and unix.h to enable lower level I/O for
- read_x. (read_x): Replace the use of read_sf with equivalent lower level
- I/O, eliminating unneeded code and handling EOF and EOR conditions.
- * io/io.h: Revise prototype for read_sf.
- * io/transfer.c (read_sf): Delete no_error parameter and all uses of it.
- (read_block_form): Likewise.
- (next_record_r): Delete wrong code call to hit_eof.
+ PR fortran/47716
+ PR fortran/47648
+ * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Use check from
+ libquadmath, which uses more features.
+ * configure: Regenerate.
-2010-03-08 Kai TIetz <kai.tietz@onevision.com>
+2011-02-14 Jakub Jelinek <jakub@redhat.com>
- PR/42950
- * libgfortran.h (_POSIX): Define if __MINGW32__ is defined.
- (gfc_printf): Define to gnu_printf for __MINGW32__ case,
- otherwise to __printf__.
- (gfc_strtof,gfc_strtod,gfc_strtold): Define for mingw case
- to POSIX compatible converter functions.
- (runtime_error): Use instead gfc_printf as formatter
- attribute name.
- (runtime_error_at): Likewise.
- (runtime_warning_at): Likewise.
- (st_printf): Likewise.
- * intrinsics/date_and_time.c (localtime_r): Undefine
- possible defined macro.
- (gmtime_r): Likewise.
- * io/read.c (convert_real): Use gfc_strtof, gfc_strtod,
- and gfc_strtold.
+ PR fortran/47642
+ * io/write_float.def (DTOAQ): Use quadmath_snprintf instead of
+ quadmath_flt128tostr.
+ * io/transfer128.c (tmp2): Initialize to quadmath_snprintf instead
+ of quadmath_flt128tostr.
-2010-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
- PR libfortran/43155
- * io/transfer.c (require_type): Subtract one from item_count for output
- of error message. Add comment before formatted_transfer function
- explaining why the item_count is off by one.
+ * Makefile.in: Regenerate.
+ * aclocal.m4: Likewise.
+ * configure: Likewise.
+
+2011-02-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/47567
+ * io/write_float.def (output_float): Eliminate some redundant code.
+ Adjust width for case of F0.X for values of zero and all other values.
+ Expand cases where '*' is set to give cleaner results.
+
+2011-02-05 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/47571
+ * intrinsics/time_1.h (GF_CLOCK_MONOTONIC): Move to system_clock.c.
+ (weak_gettime): Likewise.
+ (gf_gettime): Change API, move weak_gettime() usage to
+ system_clock.c
+ * intrinsics/system_clock.c (GTHREAD_USE_WEAK): Define.
+ (gf_gettime_mono): New function.
+ (system_clock_4): Use gf_gettime_mono().
+ (system_clock_8): Likewise.
+ * intrinsics/date_and_time.c (date_and_time): Update gf_gettime()
+ usage.
+
+2011-02-02 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/47571
+ * configure: Regenerated.
+ * configure.ac: Don't add librt to LIBS.
+ * intrinsics/time_1.h (weak_gettime): Weakref trickery for
+ clock_gettime().
+ (gf_gettime): Use weak_gettime() instead of clock_gettime().
+
+2011-02-01 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * intrinsics/time_1.h: Include errno.h needed by fallbacks.
+
+2011-01-31 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * intrinsics/time_1.h: Fix definition of GF_CLOCK_MONOTONIC macro.
+
+2011-01-31 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * configure.ac: Check for clock_gettime().
+ * configure: Regenerated.
+ * config.h.in: Regenerated.
+ * intrinsics/time_1.h (__time_1): Rename to gf_cputime, add
+ times() fallback.
+ (gf_gettime): New function.
+ * intrinsics/cpu_time.c (__cpu_time_1): Update to call gf_cputime.
+ * intrinsics/date_and_time.c (date_and_time): Use gf_gettime.
+ * intrinsics/dtime.c (dtime_sub): Use gf_cputime.
+ * intrinsics/etime.c (etime_sub): Use gf_cputime.
+ * intrinsics/system_clock.c (system_clock_4): Use gf_gettime.
+ (system_clock_8): Use gf_gettime, increase count rate to allow
+ nanosecond precision, remove overflow prone branch.
+
+2011-01-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/47434
+ * io/write_float.def (write_infnan): Use calculate_sign to determine
+ if the sign should be given and check field widths accordingly.
+
+2011-01-29 Kai Tietz <kai.tietz@onevision.com>
+
+ * intrinsics/ctime.c (ctime_r): Improve implementation.
+
+2011-01-27 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/47431
+ * config.h.in: Regenerated.
+ * configure: Regenerated.
+ * configure.ac: Add check for ctime_r().
+ * intrinsics/ctime.c (ctime_r): Fallback implementation.
+ (fdate): Use ctime_r() instead of ctime().
+ (fdate_sub): Likewise.
+ (ctime): Likewise.
+ (ctime_sub): Likewise.
+
+2011-01-27 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/47432
+ * config.h.in: Regenerated.
+ * configure: Regenerated.
+ * configure.ac: Add check for ttyname_r.
+ * io/unix.h: Add TTY_NAME_MAX, change stream_ttyname prototype.
+ * io/unix.c (stream_ttyname): Use ttyname_r if available, conform
+ to new prototype.
+ * io/inquire.c (inquire_via_unit): Use changed stream_ttyname.
+ * io/intrinsics.c (ttynam_sub): Likewise.
+ (ttynam): Likewise.
+
+2011-01-27 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/47491
+ * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS to enable common
+ extensions.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
-2010-02-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+2011-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- * io/write_float.def (WRITE_FLOAT): Use __builtin_signbit.
+ PR libgfortran/47285
+ * io/write_float.def (write_infnan): Adjust processor selected width
+ to 3 if NaN.
-2010-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+2011-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- * io/list_read.c (list_formatted_read_scalar): Remove duplicate code.
+ PR libgfortran/47285
+ * io/write_float.def (output_float): Return SUCCESS or FAILURE and use
+ the result to set the padding.
-2010-02-09 Tobias Burnus <burnus@net-b.de>
+2011-01-26 Kai Tietz <kai.tietz@onevision.com>
- PR fortran/42996
- * intrinsics/args.c (get_command_argument_i4): Always return
- commandline-argument length for length parameter.
+ * intrinsics/getlog.c (getlog): Fix label/statement issue.
-2010-02-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+2011-01-25 Janne Blomqvist <jb@gcc.gnu.org>
- PR libfortran/42742
- * io/format.c (reset_fnode_counters): Use the correct pointer to the
- head of the fnode list. (parse_format): Remove previous hack that set
- limit on size of format string for caching.
+ PR libfortran/47375
+ * config.h.in: Regenerated.
+ * configure: Regenerated.
+ * configure.ac: Add check for getpwuid_r.
+ * intrinsics/getlog.c (getlog): Use getpwuid_r() if available.
-2010-02-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+2011-01-22 Janne Blomqvist <jb@gcc.gnu.org>
- PR libfortran
- * io/transfer.c (read_sf): Handle EOR and EOF conditions for
- ADVANCE="no" with PAD="yes" or PAD="no".
+ PR libfortran/46267
+ * config.h.in: Regenerated.
+ * configure: Regenerated.
+ * configure.ac: Check presence of strerror_r.
+ * intrinsics/gerror.c (gerror): Use gf_strerror, modify logic.
+ * io/unix.c (get_oserror): Remove.
+ * libgfortran.h (gf_strerror): Add prototype.
+ (get_oserror): Remove prototype.
+ * runtime/error.c (gf_strerror): New function.
+ (os_error): Use gf_strerror instead of get_oserror.
+ (generate_errror): Likewise.
-2010-02-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+2011-01-17 Janne Blomqvist <jb@gcc.gnu.org>
- PR libfortran/42901
- * io/list_read.c (nml_get_obj_data): Add new qualifier flag, clean up
- code, and adjust logic to set namelist info pointer correctly for array
- qualifiers of derived type components.
+ PR libfortran/47296
+ * io/unix.c (tempfile): Set opp->file and opp->file_len also if an
+ error occurs.
-2010-01-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+2011-01-16 Jakub Jelinek <jakub@redhat.com>
- PR libfortran/42742
- * io/format.c (parse_format): Set limit on size of format strings that
- will be cached.
+ PR fortran/46625
+ * io/write_float.def (DTOAQ): Use quadmath_flt128tostr
+ instead of quadmath_dtoa.
+ * io/transfer128.c (tmp1, tmp2): New variables, bring in
+ strtoflt128 and quadmath_flt128tostr.
+ (transfer_real128, transfer_real128_write, transfer_complex128,
+ transfer_complex128_write): Remove tmp1/tmp2 variables.
+ * io/read.c (convert_real): Use strtoflt128 instead of
+ quadmath_strtopQ, adjust for the changed arguments and return
+ value.
-2010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+2011-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- * configure: Regenerate.
+ PR libgfortran/47296
+ * io/unix.c (unpack_filename): Return non-zero if the filename passed
+ in is NULL.
-2010-01-03 Janne Blomqvist <jb@gcc.gnu.org>
+2011-01-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- PR libfortran/42420
- * io/unix.c: Defines for MINGW stat and fstat.
- (gfstat_t): New typedef.
- (id_from_fd): Use gfstat_t instead of struct stat.
- (fd_to_stream): Likewise.
- (compare_file_filename): Likewise.
- (find_file): Likewise.
- (file_exists): Likewise.
- (inquire_sequential): Likewise.
- (inquire_direct): Likewise.
- (inquire_formatted): Likewise.
+ PR libgfortran/47154
+ * io/list_read.c (namelist_read): Remove calls to hit_eof to avoid the
+ duplicate calls via next_record.
\f
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2011 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright