OSDN Git Service

2011-05-22 Tobias Burnus <burnus@net-b.de>
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
index b6fa20f..5c1144f 100644 (file)
-2010-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * m4/mtype.m4 (upcase, hasmathfunc, mathfunc_macro): New macros.
-       * m4/fraction.m4: Use new macros to support quad-float types.
-       * m4/set_exponent.m4: Likewise.
-       * m4/spacing.m4: Likewise.
-       * m4/exponent.m4: Likewise.
-       * m4/nearest.m4: Likewise.
-       * m4/norm2.m4: Likewise.
-       * m4/bessel.m4: Likewise.
-       * m4/rrspacing.m4: Likewise.
-       * generated/bessel_r4.c:Regenerated.
-       * generated/bessel_r8.c: Regenerated.
-       * generated/bessel_r10.c: Regenerated.
-       * generated/bessel_r16.c: Regenerated.
-       * generated/exponent_r4.c: Regenerated.
-       * generated/exponent_r8.c: Regenerated.
-       * generated/exponent_r10.c: Regenerated.
-       * generated/exponent_r16.c: Regenerated.
-       * generated/fraction_r4.c: Regenerated.
-       * generated/fraction_r8.c: Regenerated.
-       * generated/fraction_r10.c: Regenerated.
-       * generated/fraction_r16.c: Regenerated.
-       * generated/nearest_r4.c: Regenerated.
-       * generated/nearest_r8.c: Regenerated.
-       * generated/nearest_r10.c: Regenerated.
-       * generated/nearest_r16.c: Regenerated.
-       * generated/norm2_r4.c: Regenerated.
-       * generated/norm2_r8.c: Regenerated.
-       * generated/norm2_r10.c: Regenerated.
-       * generated/norm2_r16.c: Regenerated.
-       * generated/rrspacing_r4.c: Regenerated.
-       * generated/rrspacing_r8.c: Regenerated.
-       * generated/rrspacing_r10.c: Regenerated.
-       * generated/rrspacing_r16.c: Regenerated.
-       * generated/set_exponent_r4.c: Regenerated.
-       * generated/set_exponent_r8.c: Regenerated.
-       * generated/set_exponent_r10.c: Regenerated.
-       * generated/set_exponent_r16.c: Regenerated.
-       * generated/spacing_r4.c: Regenerated.
-       * generated/spacing_r8.c: Regenerated.
-       * generated/spacing_r10.c: Regenerated.
-       * generated/spacing_r16.c: Regenerated.
-
-2010-08-28  Tobias Burnus  <burnus@net-b.de>
-
-       * mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available.
-
-2010-08-27  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33197
-       * libgfortran/m4/ifunction.m4 (FINISH_ARRAY_FUNCTION,
-       ARRAY_FUNCTION): Allow expression after loop.
-       * libgfortran/m4/norm2.m4: New for _gfortran_norm2_r{4,8,10,16}.
-       * libgfortran/m4/parity.m4: New for _gfortran_parity_l{1,2,4,8,16}.
-       * libgfortran/gfortran.map: Add new functions.
-       * libgfortran/Makefile.am: Ditto.
-       * libgfortran/m4/minloc1.m4: Add empty argument for ARRAY_FUNCTION.
-       * libgfortran/m4/maxloc1.m4: Ditto.
-       * libgfortran/m4/all.m4: Ditto.
-       * libgfortran/m4/minval.m4: Ditto.
-       * libgfortran/m4/maxval.m4: Ditto.
-       * libgfortran/m4/count.m4: Ditto.
-       * libgfortran/m4/product.m4: Ditto.
-       * libgfortran/m4/any.m4: Ditto.
-       * Makefile.in: Regenerated.
-       * generated/minval_r8.c: Regenerated.
-       * generated/maxloc1_4_r8.c: Regenerated.
-       * generated/minloc1_16_r16.c: Regenerated.
-       * generated/norm2_r4.c: Regenerated.
-       * generated/sum_i8.c: Regenerated.
-       * generated/parity_l2.c: Regenerated.
-       * generated/any_l16.c: Regenerated.
-       * generated/maxval_i2.c: Regenerated.
-       * generated/any_l2.c: Regenerated.
-       * generated/product_r4.c: Regenerated.
-       * generated/maxloc1_8_i4.c: Regenerated.
-       * generated/parity_l16.c: Regenerated.
-       * generated/all_l1.c: Regenerated.
-       * generated/product_i2.c: Regenerated.
-       * generated/minloc1_8_r16.c: Regenerated.
-       * generated/maxloc1_8_r16.c: Regenerated.
-       * generated/sum_r16.c: Regenerated.
-       * generated/sum_i1.c: Regenerated.
-       * generated/minloc1_4_r8.c: Regenerated.
-       * generated/maxloc1_16_r16.c: Regenerated.
-       * generated/minloc1_16_i4.c: Regenerated.
-       * generated/maxloc1_16_i4.c: Regenerated.
-       * generated/maxval_r16.c: Regenerated.
-       * generated/product_c10.c: Regenerated.
-       * generated/minloc1_8_i4.c: Regenerated.
-       * generated/all_l2.c: Regenerated.
-       * generated/product_c4.c: Regenerated.
-       * generated/sum_r4.c: Regenerated.
-       * generated/all_l16.c: Regenerated.
-       * generated/minloc1_16_r10.c: Regenerated.
-       * generated/sum_i2.c: Regenerated.
-       * generated/maxloc1_8_r8.c: Regenerated.
-       * generated/minval_i16.c: Regenerated.
-       * generated/parity_l4.c: Regenerated.
-       * generated/maxval_i4.c: Regenerated.
-       * generated/any_l4.c: Regenerated.
-       * generated/minval_i8.c: Regenerated.
-       * generated/maxloc1_4_i8.c: Regenerated.
-       * generated/minloc1_4_i16.c: Regenerated.
-       * generated/maxloc1_4_i16.c: Regenerated.
-       * generated/minloc1_8_r10.c: Regenerated.
-       * generated/product_i4.c: Regenerated.
-       * generated/maxloc1_8_r10.c: Regenerated.
-       * generated/sum_c16.c: Regenerated.
-       * generated/minloc1_16_r8.c: Regenerated.
-       * generated/maxloc1_16_r8.c: Regenerated.
-       * generated/count_4_l.c: Regenerated.
-       * generated/sum_r10.c: Regenerated.
-       * generated/count_8_l.c: Regenerated.
-       * generated/sum_c4.c: Regenerated.
-       * generated/maxloc1_16_r10.c: Regenerated.
-       * generated/minloc1_8_r8.c: Regenerated.
-       * generated/maxval_r10.c: Regenerated.
-       * generated/minval_i1.c: Regenerated.
-       * generated/maxloc1_4_i1.c: Regenerated.
-       * generated/minloc1_4_i8.c: Regenerated.
-       * generated/product_i16.c: Regenerated.
-       * generated/all_l4.c: Regenerated.
-       * generated/norm2_r16.c: Regenerated.
-       * generated/minval_r4.c: Regenerated.
-       * generated/maxloc1_4_r4.c: Regenerated.
-       * generated/sum_i4.c: Regenerated.
-       * generated/maxval_r8.c: Regenerated.
-       * generated/norm2_r8.c: Regenerated.
-       * generated/minloc1_4_i1.c: Regenerated.
-       * generated/minval_r16.c: Regenerated.
-       * generated/minval_i2.c: Regenerated.
-       * generated/maxloc1_4_i2.c: Regenerated.
-       * generated/product_r8.c: Regenerated.
-       * generated/maxloc1_8_i8.c: Regenerated.
-       * generated/sum_c10.c: Regenerated.
-       * generated/minloc1_4_r16.c: Regenerated.
-       * generated/maxloc1_4_r16.c: Regenerated.
-       * generated/count_1_l.c: Regenerated.
-       * generated/minloc1_4_r4.c: Regenerated.
-       * generated/minloc1_16_i8.c: Regenerated.
-       * generated/maxloc1_16_i8.c: Regenerated.
-       * generated/minloc1_4_i2.c: Regenerated.
-       * generated/maxloc1_8_i1.c: Regenerated.
-       * generated/minloc1_8_i8.c: Regenerated.
-       * generated/product_r16.c: Regenerated.
-       * generated/product_c8.c: Regenerated.
-       * generated/sum_r8.c: Regenerated.
-       * generated/norm2_r10.c: Regenerated.
-       * generated/minloc1_16_i16.c: Regenerated.
-       * generated/maxloc1_8_r4.c: Regenerated.
-       * generated/minloc1_16_i1.c: Regenerated.
-       * generated/maxloc1_16_i1.c: Regenerated.
-       * generated/minval_r10.c: Regenerated.
-       * generated/count_16_l.c: Regenerated.
-       * generated/parity_l8.c: Regenerated.
-       * generated/minloc1_8_i1.c: Regenerated.
-       * generated/minval_i4.c: Regenerated.
-       * generated/maxloc1_4_i4.c: Regenerated.
-       * generated/maxloc1_8_i2.c: Regenerated.
-       * generated/maxval_i8.c: Regenerated.
-       * generated/any_l8.c: Regenerated.
-       * generated/minloc1_4_r10.c: Regenerated.
-       * generated/minloc1_8_i16.c: Regenerated.
-       * generated/maxloc1_4_r10.c: Regenerated.
-       * generated/maxloc1_8_i16.c: Regenerated.
-       * generated/minloc1_16_r4.c: Regenerated.
-       * generated/maxloc1_16_r4.c: Regenerated.
-       * generated/product_i8.c: Regenerated.
-       * generated/sum_i16.c: Regenerated.
-       * generated/count_2_l.c: Regenerated.
-       * generated/maxloc1_16_i16.c: Regenerated.
-       * generated/minloc1_8_r4.c: Regenerated.
-       * generated/sum_c8.c: Regenerated.
-       * generated/minloc1_16_i2.c: Regenerated.
-       * generated/maxloc1_16_i2.c: Regenerated.
-       * generated/parity_l1.c: Regenerated.
-       * generated/maxval_i16.c: Regenerated.
-       * generated/maxval_i1.c: Regenerated.
-       * generated/minloc1_4_i4.c: Regenerated.
-       * generated/any_l1.c: Regenerated.
-       * generated/minloc1_8_i2.c: Regenerated.
-       * generated/product_c16.c: Regenerated.
-       * generated/product_r10.c: Regenerated.
-       * generated/product_i1.c: Regenerated.
-       * generated/all_l8.c: Regenerated.
-       * generated/maxval_r4.c: Regenerated.
-
-2010-08-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * config/fpu-387.h (has_sse): Remove cw_sse, unused.
-       Use fixed-length asm.
-
-2010-08-23  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/45323
-       * io/write.c (nml_write_obj, namelist_write): Cast argument
-       of toupper to int.
-
-2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
-
-       * configure: Regenerate.
-
-2010-08-19  Tobias Burnus  <burnus@net-b.de>
+2011-05-22  Tobias Burnus  <burnus@net-b.de>
+
+       * runtime/stop.c (stop_string,error_stop_string): Minor cleanup.
+
+2011-05-22  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/48931
+       * configure.ac: Check for backtrace_symbols_fd instead of
+       backtrace_symbols, check for readlink.
+       * config.h.in: Regenerated.
+       * configure: Regenerated.
+       * runtime/backtrace.c (local_strcasestr): Remove.
+       (bt_header): New function.
+       (dump_glibc_backtrace): Remove.
+       (fd_gets): New function.
+       (show_backtrace): Rework to use backtrace_symbols_fd and pipes
+       avoiding functions that are not async-signal-safe, reformat
+       output.
+       * runtime/main.c (store_exe_path): Try to check /proc/self/exe
+       first.
+
+2011-05-20  Janne Blomqvist  <jb@gcc.gnu.org>
+           Uros Bizjak  <ubizjak@gmail.com>
+
+       PR libfortran/48977
+       * configure.host: Swap order of glibc and x86 tests.
+
+2011-05-20  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * config/fpu-387.h (set_fpu): Use renamed inexact macro.
+       * config/fpu-aix.h (set_fpu): Clarify error messages, use renamed
+       inexact macro, set TRP_INEXACT for inexact exception instead of
+       TRP_UNDERFLOW.
+       * config/fpu-generic.h (set_fpu): Clarify error messages, use
+       renamed inexact macro.
+       * config/fpu-glibc.h (set_fpu): Likewise.
+       * config/fpu-sysv.h (set_fpu): Likewise.
+
+2011-05-14  Tobias Burnus  <burnus@net-b.de>
+
+       * runtime/stop.c (error_stop_string, error_stop_numeric):
+       Do not backtrace for ERROR STOP.
+
+2011-05-14  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/48915
+       * intrinsics/abort.c (abort): Call sys_abort().
+       * io/unix.c (st_vprintf): Call sys_abort().
+       * libgfortran.h (options_t): Remove dump_core member.
+       (handler): Rename to backtrace_handler.
+       (compile_options_t): Remove dump_core member.
+       (sys_exit): Remove.
+       (sys_abort): New function.
+       * runtime/backtrace.c (show_backtrace): Print a message if
+       backtrace is not available on target, update filter symbol name
+       due to backtrace_handler renaming.
+       * runtime/compile_options.c (backtrace_handler): New
+       implementation based on example in Glibc manual.
+       (set_options): Remove dump_core handling, make signal handler
+       handle more signals.
+       (init_compile_options): Remove dump_core.
+       * runtime/environ.c (variable_table[]): Remove
+       GFORTRAN_ERROR_DUMPCORE element.
+       (show_variables): Update name, call exit().
+       * runtime/error.c (sys_exit): Remove.
+       (sys_abort): New function.
+       (recursion_check): Call sys_abort().
+       (os_error): Call exit().
+       (runtime_error): Likewise.
+       (runtime_error_at): Likewise.
+       (internal_error): Likewise.
+       (generate_error): Likewise.
+       (notify_std): Likewise.
+       * runtime/stop.c (stop_numeric): Call exit().
+       (stop_numeric_f08): Likewise.
+       (stop_string): Likewise.
+       (error_stop_string): Call sys_abort().
+       (error_stop_numeric): Print backtrace, exit with provided code.
+
+2011-05-14  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * io/unix.c (st_vprintf,st_printf): Move to runtime/error.c.
+       * libgfortran.h (struct options_t): Remove use_stderr field.
+       (st_vprintf,st_printf): Move prototypes.
+       (estr_write): New prototype.
+       * runtime/error.c (sys_exit): Use estr_write instead of st_printf.
+       (estr_write): New function.
+       (st_vprintf): Move from io/unix.c, use stack allocated buffer,
+       always output to stderr.
+       (st_printf): Move from io/unix.c.
+       (show_locus): Use a local variable instead of static.
+       (os_error): Use estr_write instead of st_printf.
+       (runtime_error): Likewise.
+       (runtime_error_at): Likewise.
+       (runtime_warning_at): Likewise.
+       (internal_error): Likewise.
+       (generate_error): Likewise.
+       (generate_warning): Likewise.
+       (notify_std): Likewise.
+       * runtime/pause.c (do_pause): Likewise.
+       (pause_string): Likewise.
+       * runtime/stop.c (stop_string): Likewise.
+       (error_stop_string): Likewise.
+       * config/fpu_aix.h (set_fpu): Likewise.
+       * config/fpu_generic.h (set_fpu): Likewise.
+       * config/fpu_glibc.h (set_fpu): Likewise.
+       * config/fpu-sysv.h (set_fpu): Likewise.
+       * runtime/backtrace.c (dump_glibc_backtrace): Likewise.
+       (show_backtrace): Likewise.
+       * runtime/environ.c (print_spaces): Likewise.
+       (show_string): Likewise.
+       (show_variables): Likewise.
+       (variable_table[]): Remove GFORTRAN_USE_STDERR entry.
+
+2011-05-14  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/48961
+       * intrinsics/execute_command_line.c (set_cmdstat): Don't abort if
+       synchronously executing with WAIT=.false.
+       (execute_command_line): Fix setting of cmdstat and exitstat.
+
+2011-05-06  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/18918
+       * caf/libcaf.h: Cleanup headers.
+       (_gfortran_caf_critical, _gfortran_caf_end_critical): Make stub.
+       (caf_register_t): New enum.
+       (_gfortran_caf_register, _gfortran_caf_deregister): New prototype.
+       * caf/single.c (_gfortran_caf_critical,
+       _gfortran_caf_end_critical): Remove.
+       (_gfortran_caf_register, _gfortran_caf_deregister): New functions.
+       * caf/mpi.c (_gfortran_caf_critical,
+       _gfortran_caf_end_critical): Remove.
+       (_gfortran_caf_register, _gfortran_caf_deregister): New functions.
+       (caf_world_window): Remove global variable.
+       (_gfortran_caf_init): Fix off-by-one error of this_image.
+
+2011-05-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/48787
+       * io/write_float.def (output_float): Adjust up and down rounding for
+       cases where 'd' = 0. Gather common code to one location.
+
+2011-05-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/48787
+       * io/write_float.def (output_float): Gather up integer declarations and
+       add new 'p' for scale factor. Use 'p' in place of the 'dtp' reference
+       everywhere. For ROUND_UP scan the digit string and only perform
+       rounding if something other than '0' is found.
+
+2011-04-29  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * io/unix.c (min): New macro.
+       (unpack_filename): Return errno number for errors.
+       (regular_file): Use appropriately sized buffer for path.
+       (compare_file_filename): Likewise.
+       (find_file): Likewise.
+       (delete_file): Likewise.
+       (file_exists): Likewise.
+       (file_size): Likewise.
+       (inquire_sequential): Likewise.
+       (inquire_direct): Likewise.
+       (inquire_formatted): Likewise.
+       (inquire_access): Likewise.
+
+2011-04-29  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/48488
+       * io/write.c (write_real, write_real_g0): Update comments.
+
+2011-04-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+           Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libgfortran/48488
+       PR libgfortran/48602
+       PR libgfortran/48615
+       PR libgfortran/48684
+       PR libgfortran/48787
+       * io/write.c (write_d, write_e, write_f, write_en,
+       write_es): Add precision compemsation parameter to call.
+       (set_fnode_default): Adjust default widths to assure
+       round trip on write and read. (write_real): Adjust call to write_float.
+       (write_real_g0): Calculate compensation for extra precision and adjust
+       call to write_float.
+       * io/write_float.def (output_float_FMT_G_): Use volatile rather than
+       asm volatile to avoid optimization issue. Correctly calculate the
+       number of blanks (nb) to be appended and simplify calculation logic.
+       (write_float): Increase MIN_FIELD_WIDTH by one to accomodate the new
+       default widths. Eliminate the code that attempted to reduce the
+       the precision used in later sprintf functions.  Add call parameter to
+       compensate for extra precision.
+
+2011-04-20  Jim Meyering  <meyering@redhat.com>
+
+       * intrinsics/move_alloc.c (move_alloc): Remove useless
+       if-before-free test.
+       * io/fbuf.c (fbuf_destroy): Likewise.
+       * io/format.c (save_parsed_format): Likewise.
+       * io/open.c (already_open): Likewise.
+       * io/unit.c (free_internal_unit, close_unit_1): Likewise.
+       * io/unix.c (mem_close): Likewise.
+
+2011-04-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/48602
+       * io/write_float.def (output_float_FMT_G): Fix reversal in conditional.
+       Use asm volatile to mark temp variable, avoiding optimization errors.
+
+2011-04-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/48602
+       * io/write_float.def (output_float_FMT_G): Use current rounding mode
+       to set the rounding parameters. (output_float): Skip rounding
+       if value is zero.
+
+2011-04-16  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * intrinsics/date_and_time.c (date_and_time): Remove sprintf CPP
+       branch.
+       * io/format.c (format_error): Use snprintf instead of sprintf.
+       * io/list_read.c: Move snprintf fallback macro to libgfortran.h.
+       (convert_integer): Use snprintf instead of sprintf.
+       (parse_repeat): Likewise.
+       (read_logical): Likewise.
+       (read_integer): Likewise.
+       (read_character): Likewise.
+       (parse_real): Likewise.
+       (read_complex): Likewise.
+       (read_real): Likewise.
+       (check_type): Likewise.
+       (nml_parse_qualifier): Add string length argument, use snprintf
+       instead of sprintf.
+       (nml_get_obj_data): Use snprintf instead of sprintf.
+       * io/open.c (new_unit): Remove sprintf CPP branch, use snprintf
+       instead of sprintf.
+       * io/transfer.c (require_type): Use snprintf instead of sprintf.
+       * io/unix.c (tempfile): Likewise.
+       * io/write.c (nml_write_obj): Likewise.
+       * io/write_float.def (output_float): Remove sprintf CPP branch,
+       use snprintf instead of sprintf.
+       * libgfortran.h: Add fallback snprintf macro from io/list_read.c.
+       * runtime/backtrace.c (show_backtrace): Remove sprintf CPP branch.
+       * runtime/main.c (store_exe_path): Use snprintf instead of
+       sprintf.
 
-       PR fortran/36158
-       PR fortran/33197
-       * m4/bessel.m4: Implement bessel_jn and bessel_yn.
-       * gfortran.map: Add the generated bessel_jn_r{4,8,10,16}
-       and bessel_yn_r{4,8,10,16}.
-       * Makefile.am: Add bessel.m4.
-       * Makefile.in: Regenerated.
-       * generated/bessel_r4.c: Generated.
-       * generated/bessel_r16.c: Generated.
-       * generated/bessel_r8.c: Generated.
-       * generated/bessel_r10.c: Generated.
-
-2010-08-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/45108
-       * io/list_read.c (namelist_read): If namelist reading fails, use
-       generate_error and then continue the read loop.
-
-2010-08-17  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/45308
-       * intrinsics/date_and_time.c (date_and_time): Pass __{zone,time,date}_len
-       instead of {ZONE,TIME,DATE}_LEN as second argument to fstrcpy.  Drop
-       asserts.  Adjust comment to the F2003 wording from the F95 wording.
-
-2010-08-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/44931
-       * io/inquire.c (inquire_via_unit): Add special case for __MINGW32__ to
-       return special file names CONIN$, CONOUT$, and CONERR$.
-
-2010-08-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/45143
-       * io/format.c: Remove fnode storage structure definitions, moving these
-       to format.h. (parse_format_list): Add check for data descriptors,
-       taking care of nested formats. Adjust calling parameters to pass a
-       check flag. (parse_format): Likewise.
-       * io/format.h: Add structures moved from format.c.
-       
-2010-08-02  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * io/unit.c (update_position): Don't update the position flag for
-       non-seekable files, check for stell() error.
-
-2010-08-01  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * io/unix.c (file_exists): Use access(2) instead of stat(2) to
-       test file existence.
-       (fallback_access): Move up in file, implement F_OK.
-
-2010-07-31  David Edelsohn  <edelsohn@gnu.org>
-
-       * io/inquire.c: Include io.h before string.h.
-
-2010-07-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/44931
-       * io/inquire.c (inquire_via_unit): Use ttyname to return actual device
-       file name for stdin, stdout, and stderr.  If ttyname does not succeed
-       fall back to default names for these units. Include string.h to allow
-       using strlen function.
-       * unix.c: Remove typedef of unix_stream structure, move to unix.h.
-       * unix.h: Add typedef of unix_stream structure so that it is
-       accessible to inquire.c.
-
-2010-07-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/44953
-       * io/unix.c (mem_alloc_w4): Return gfc_char4_t instead of char type
-       pointer. (mem_write4): Remove cast to gfc_char4_t.
-       * io/transfer.c (write_block): Use a gfc_char4_t pointer.
-       (memset4): New helper function. (next_record_w): Use new helper
-       function rather than sset for internal units.  Don't attempt to pad
-       with spaces if it is not needed.
-       * io/unix.h: Update prototype for mem_alloc_w4.
-       * io/write.c (memset4): Use gfc_char4_t pointer and chracter type.
-       Don't use multiply by 4 to compute offset. (memcpy4): Likewise.
-       (write_default_char4): Use a gfc_char4_t pointer and update memset4
-       and memcpy calls. (write_a): Likewise. (write_l): Likewise.
-       (write_boz): Likewise. (write_decimal): Likewise. (write_x): Likewise.
-       (write_char): Add support for character(kind=4) internal units that
-       was previously missed. (write_integer): Use a gfc_char4_t pointer and
-       update memset4 and memcpy calls. (write_character): Likewise.
-       (write_separator): Add support for character(kind=4) internal units
-       that was previously missed.
-       * write_float.def (output_float): Use a gfc_char4_t pointer and
-       update memset4 and memcpy calls. (write_infnan): Likewise.
-       (output_float_FMT_G_): Likewise.
-
-2010-07-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/37077
-       * io/read.c (read_default_char4): Add support for reading into a
-       kind-4 character variable from a character(kind=4) internal unit.
-       * io/io.h (read_block_form4): Add prototype.
-       * io/unit.c (get_internal_unit): Add call to fbuf_init.
-       (free_internal_unit): Add call to fbuf_destroy. (get_unit): Fix
-       whitespace.
-       * io/transfer.c (read_sf_internal): Use fbuf_alloc to allocate a string
-       to recieve the wide characters translated to single byte chracters.
-       (read_block_form): Fix whitespace. (read_block_form4): New function to
-       read from a character(kind=4) internal unit into a character(kind=4)
-       variable. (read_block_direct): Fix whitespace. (write_block): Fix
-       whitespace. (formatted_transfer_scalar_read): Likewise.
-       (formatted_transfer_scalar_write): Likewise.
-       * io/write.c (write_character): Add support for list directed write of
-       a kind=1 character string to a character(kind=4) internal unit.
-
-2010-07-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/44934
-       * io/file_pos.c (st_endfile): Correctly set unit flags for form.
-       * io/transfer.c (data_transfer_init): Fix indentation of whitespace.
-
-2010-07-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/37077
-       * io/read.c: Fix comment.
-       * io/io.h (is_char4_unit): New macro.
-       * io/unit.c (get_internal_unit): Call new function open_internal4.
-       * io/unix.c (mem_alloc_r4): New function. (mem_alloc_w4): New function.
-       (mem_read4): New function, temporary stub. (mem_write4): New function.
-       (open_internal4): New function to set stream pointers to use the new
-       mem functions.
-       * io/transfer.c (write_block): Use new mem_alloc_w4 to access internal
-       units of kind=4.
-       * io/unix.h: Add prototypes for open_internal4, mem_alloc_w4, and
-       mem_alloc_r4.
-       * io/write.c (memset4): New helper function. (memcpy4): New helper
-       function. (write_default_char4): Use new helper functions.
-       (write_a): Likewise. (write_l): Likewise. (write_boz): Likewise.
-       (write_decimal): Likewise. (write_x): Likewise.
-       (write_integer): Likewise.
-       * io/write_float.def (output_float): Add code blocks to handle internal
-       unit kind=4 output utilizing gfc_char4_t pointers. (write_infnan): Use
-       new helper functions. (OUTPUT_FLOAT_FMT_G): Update this macro likewise.
-
-2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * config/fpu-387.h [__sun__ && __svr4__] Include <signal.h>,
-       <ucontext.h>.
-       (sigill_caught): New.
-       (sigill_hdlr): New function
-       (has_sse) [__sun__ && __svr4__]: Check if SSE instruction causes
-       SIGILL.
-
-2010-07-11  Kai Tietz  <kai.tietz@onevision.com>
-
-       PR libfortran/44698
-       * io/unix.c (flush_buf): Add _commit for WIN32.
-
-2010-06-28  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/43298
-       * list_read.c (parse_real): Do not pass (..) on for NAN(..).
-       * read.c (convert_real): Fix comment about NAN/INF.
-
-2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * configure.ac (gfortran_use_symver): Only check for Sun-style symbol
-       versioning on Solaris 2.
-       * configure: Regenerate.
+2011-04-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
-2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+       PR libgfortran/48589
+       * io/write_float.def (write_infnan): Set width properly for G0.
 
-       * configure.ac: Check for Sun symbol versioning.
-       * configure: Regenerate.
+2011-04-15  Tobias Burnus  <burnus@net-b.de>
 
-       * Makefile.am [LIBGFOR_USE_SYMVER]: Protect version_arg with
-       LIBGFOR_USE_SYMVER_GNU.
-       Add version_dep.
-       [LIBGFOR_USE_SYMVER_SUN]: Handle Sun symbol versioning.
-       [!LIBGFOR_USE_SYMVER]: Add version_dep.
-       (libgfortran_la_DEPENDENCIES): Set to $(version_dep).
+       PR fortran/18918
+       * Makefile.am: Build and install caf/single.c as
+       libcaf_single.a.
        * Makefile.in: Regenerate.
 
-2010-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/43298
-       * io/read.c: Add code to parse and read Inf, Infinity, NaN, and Nan with
-       optional parenthesis.
-
-2010-06-28  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/43298
-       * list_read.c (parse_real, read_real): Support NAN(alphanum).
-
-2010-06-25  Tobias Burnus  <burnus@net-b.de>
-
-       * intrinsics/selected_real_kind.f90
-       (_gfortran_selected_real_kind2008): Add function.
-       (_gfortran_selected_real_kind): Stub which calls
-       _gfortran_selected_real_kind2008.
-       * gfortran.map (GFORTRAN_1.4): Add
-       _gfortran_selected_real_kind2008.
-       * mk-srk-inc.sh: Save also RADIX.
-
-2010-06-25  Tobias Burnus  <burnus@net-b.de>
-
-       * runtime/compile_options.c (init_compile_options): Update
-       compile_options.allow_std for GFC_STD_F2008_OBS.
-       * io/transfer.c (formatted_transfer_scalar_read,
-       formatted_transfer_scalar_write): Fix allow_std check.
-       * io/list_read.c (nml_parse_qualifier): Ditto.
-
-2010-06-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/44477
-       * io/file_pos.c (st_endfile): Add check for ENDFILE when file is
-       already positioned after the EOF marker. Use find_or_create_unit
-       instead of find_unit. If unit is not connected, connect it and create 
-       the file with default settings.
-       * io/transfer.c (data_transfer_init):  Add check for attempted READ or
-       WRITE when file is already positioned after the EOF marker.
-
-2010-06-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * intrinsics/selected_char_kind.c (selected_char_kind): Fix
-       return value for ISO_10646.
-
-2010-06-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * mk-kinds-h.sh: Define GFC_REAL_*_LITERAL_SUFFIX and
-       GFC_REAL_*_LITERAL macros for each kind.
-       * intrinsics/cpu_time.c (cpu_time_4, cpu_time_8, cpu_time_10,
-       cpu_time_16): Use them.
-       * intrinsics/random.c (rnumber_4, rnumber_8, rnumber_10,
-       rnumber_16): Likewise.
-
-2010-06-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * intrinsics/system_clock.c (system_clock_4, system_clock_8):
-       Undefine TCK.
-
-2010-06-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR libfortran/34670
-       * intrinsics/date_and_time.c:  Replace assert with runtime_error
-       when VALUE is too small.
-
-2010-05-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
-       PR fortran/43851
-       * runtime/stop.c (stop_string): Make sure nothing is emitted for
-       blank stop.
-
-2010-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
-       PR fortran/43851
-       * runtime/stop.c (error_stop_numeric): New function and updated comment.
-       Add declaration for stop_numeric and remove declaration for stop_string.
-       (stop_string): Use for blank STOP.
-       (stop_numeric): Remove use of special -1 stop code.
-       * runtime/pause.c (do_pause): Use stop_string for blank stop.
-       (pause_numeric): Remove use of special -1 pause code.
-       * gfortran.map: Add new symbol to run-time library.
-       * libgfortran.h: Move declaration for stop_string to here to make
-       function visible for do_pause. Remove declaration for stop_numeric.
-
-2010-05-08  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * io/unix.h (mem_alloc_r): Fix typo to reduce visibility.
-
-2010-05-07  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * libgfortran.h (free_mem): Remove prototype.
-       * runtime/memory.c (free_mem): Remove function.
-       * intrinsics/date_and_time.c (secnds): Replace free_mem() with
-       free().
-       * io/fbuf.c (fbuf_destroy): Likewise.
-       * io/format.c (free_format_hash_table): Likewise.
-       (save_parsed_format): Likewise.
-       (free_format_data): Likewise.
-       * io/list_read.c (free_saved): Likewise.
-       (free_line): Likewise.
-       (nml_touch_nodes): Likewise.
-       (nml_read_obj): Likewise
-       * io/lock.c (free_ionml): Likewise.
-       * io/open.c (new_unit): Likewise.
-       (already_open): Likewise.
-       * io/unit.c (destroy_unit_mutex): Likewise.
-       (free_internal_unit): Likewise.
-       (close_unit_1): Likewise.
-       * io/unix.c (raw_close): Likewise.
-       (buf_close): Likewise.
-       (mem_close): Likewise.
-       (tempfile): Likewise.
+2011-04-15  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/47571
+       * configure: Regenerated.
+       * config.h.in: Regenerated.
+       * acinclude.m4: Add alpha*-dec-osf* to gthread blacklist.
+       * configure.ac: Use separate symbol for clock_gettime in librt.
+       * intrinsics/system_clock.c: Use weakrefs only when needed and
+       supported.
+
+2011-04-12  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * configure.ac: Use AC_TYPE_* to make sure we have (u)intptr_t,
+       check for ptrdiff_t.
+       * libgfortran.h: Remove (u)intptr_t definitions, use ptrdiff_t for
+       index_type, change cshift0* prototypes.
+       * config.h.in: Regenerated.
+       * configure: Regenerated.
+       * intrinsics/cshift0.c (cshift0): Use ptrdiff_t instead of ssize_t.
+       * io/io.h (array_loop_spec): Use index_type instead of ssize_t.
+       * io/list_read.c (nml_parse_qualifier): Likewise.
        * io/write.c (nml_write_obj): Likewise.
-       * io/write_float.def (output_float_FMT_G_##): Likewise.
-       * runtime/error.c (show_locus): Likewise.
+       * m4/cshift0.c (cshift0_'rtype_code`): Likewise.
+       * generated/cshift0_*.c: Regenerated.
 
-2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+2011-04-12  Janne Blomqvist  <jb@gcc.gnu.org>
 
-       PR other/43620
-       * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
-       * configure: Regenerate.
-       * Makefile.in: Regenerate.
+       * Makefile.am: Remove _GNU_SOURCE from AM_CPPFLAGS.
+       * Makefile.in: Regenerated.
 
-2010-04-30  Kai Tietz  <kai.tietz@onevision.com>
+2011-04-06  Tobias Burnus  <burnus@net-b.de>
 
-       PR/43844
-       * io/unix.c (raw_truncate): Explicit cast from integer-scalar
-       to pointer.
-       (tempfile): Use for mingw GetTempPath and avoid double slash
-       for path.
+       PR fortran/18918
+       * caf/mpi.c (_gfortran_caf_init, _gfortran_caf_finalize):
+       Add global variable caf_mpi_initialized and use it for when
+       finalizing.
 
-2010-04-24  Kai Tietz  <kai.tietz@onevision.com>
+2011-04-04  Tobias Burnus  <burnus@net-b.de>
 
-       PR/43844
-       * io/unix.c (tempfile): Correct logic for mktemp case.
+       * unix.c: Adapt stat DEFINEs since MinGW64 supports LFS.
+       (fallback_access, open_internal4, compare_file_filename,
+       find_file, file_size, inquire_sequential, inquire_direct,
+       inquire_formatted): Use "struct stat" instead of gfstat_t.
 
-2010-04-06  Tobias Burnus  <burnus@net-b.de>
+2011-03-27  Tobias Burnus  <burnus@net-b.de>
 
-       PR fortran/39997
-       * runtime/stop.c (error_stop_string): New function.
-       * gfortran.map (_gfortran_error_stop_string): Add.
+       PR fortran/18918
+       * caf/libcaf.h: New - coarray communication library.
+       * caf/mpi.c: New.
+       * caf/single.c: New.
 
-2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+2011-03-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
-       * Makefile.in: Regenerate.
-       * aclocal.m4: Regenerate.
+       PR libgfortran/48030
+       * io/read.c (read_x): Re-implement using fbuf_getc.
 
-2010-04-01  Janne Blomqvist  <jb@gcc.gnu.org>
+2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
 
-       PR libfortran/43605
-       * io/intrinsics.c (gf_ftell): New function, seek to correct offset.
-       (ftell): Call gf_ftell.
-       (FTELL_SUB): Likewise.
+       PR bootstrap/48135
+       * configure.ac (gfortran_use_symver): Handle --disable-symvers.
+       * configure: Regenerate.
 
-2010-04-01  Paul Thomas  <pault@gcc.gnu.org>
+2011-03-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 
-       * 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
+       PR fortran/35667
+       * io/io.h (convert_infnan): Declare.
+       * io/read.c (convert_infnan): New.
+       (read_f): Use convert_infnan to convert INFs and NANs.
+       * list_read.c (parse_real, read_real): Likewise.
 
-2010-04-01  Janne Blomqvist  <jb@gcc.gnu.org>
+2011-03-19  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
-       PR libfortran/43605
-       * io/intrinsics.c (ftell): Reset fbuf, correct offset.
-       (FTELL_SUB): Likewise.
+       PR libfortran/47439
+       * io/unix.c (tempfile): Work around poor mktemp() implementations.
 
-2010-03-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2011-03-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
-       PR libfortran/43265
-       * io/transfer.c (next_record_r): Only call hit_eof for specific
-       conditions when an EOF is encountered.
+       PR libfortran/47883
+       * acinclude.m4: Don't use AC_TRY_ macros.
+       * configure.ac: Likewise.
+       * configure: Regenerate.
 
-2010-03-29  Tobias Burnus  <burnus@net-b.de>
+2011-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>
 
-       PR fortran/43551
-       * io/unix.c (buf_write): Set physical_offset after lseek.
+       PR libfortran/48066
+       * m4/ifunction.m4:  If return array is empty, return.
+       * m4/ifunction_logical.m4:  Likewise.
+       * generated/all_l16.c: Regenerated.
+       * generated/all_l1.c: Regenerated.
+       * generated/all_l2.c: Regenerated.
+       * generated/all_l4.c: Regenerated.
+       * generated/all_l8.c: Regenerated.
+       * generated/any_l16.c: Regenerated.
+       * generated/any_l1.c: Regenerated.
+       * generated/any_l2.c: Regenerated.
+       * generated/any_l4.c: Regenerated.
+       * generated/any_l8.c: Regenerated.
+       * generated/count_16_l.c: Regenerated.
+       * generated/count_1_l.c: Regenerated.
+       * generated/count_2_l.c: Regenerated.
+       * generated/count_4_l.c: Regenerated.
+       * generated/count_8_l.c: Regenerated.
+       * generated/maxloc1_16_i16.c: Regenerated.
+       * generated/maxloc1_16_i1.c: Regenerated.
+       * generated/maxloc1_16_i2.c: Regenerated.
+       * generated/maxloc1_16_i4.c: Regenerated.
+       * generated/maxloc1_16_i8.c: Regenerated.
+       * generated/maxloc1_16_r10.c: Regenerated.
+       * generated/maxloc1_16_r16.c: Regenerated.
+       * generated/maxloc1_16_r4.c: Regenerated.
+       * generated/maxloc1_16_r8.c: Regenerated.
+       * generated/maxloc1_4_i16.c: Regenerated.
+       * generated/maxloc1_4_i1.c: Regenerated.
+       * generated/maxloc1_4_i2.c: Regenerated.
+       * generated/maxloc1_4_i4.c: Regenerated.
+       * generated/maxloc1_4_i8.c: Regenerated.
+       * generated/maxloc1_4_r10.c: Regenerated.
+       * generated/maxloc1_4_r16.c: Regenerated.
+       * generated/maxloc1_4_r4.c: Regenerated.
+       * generated/maxloc1_4_r8.c: Regenerated.
+       * generated/maxloc1_8_i16.c: Regenerated.
+       * generated/maxloc1_8_i1.c: Regenerated.
+       * generated/maxloc1_8_i2.c: Regenerated.
+       * generated/maxloc1_8_i4.c: Regenerated.
+       * generated/maxloc1_8_i8.c: Regenerated.
+       * generated/maxloc1_8_r10.c: Regenerated.
+       * generated/maxloc1_8_r16.c: Regenerated.
+       * generated/maxloc1_8_r4.c: Regenerated.
+       * generated/maxloc1_8_r8.c: Regenerated.
+       * generated/maxval_i16.c: Regenerated.
+       * generated/maxval_i1.c: Regenerated.
+       * generated/maxval_i2.c: Regenerated.
+       * generated/maxval_i4.c: Regenerated.
+       * generated/maxval_i8.c: Regenerated.
+       * generated/maxval_r10.c: Regenerated.
+       * generated/maxval_r16.c: Regenerated.
+       * generated/maxval_r4.c: Regenerated.
+       * generated/maxval_r8.c: Regenerated.
+       * generated/minloc1_16_i16.c: Regenerated.
+       * generated/minloc1_16_i1.c: Regenerated.
+       * generated/minloc1_16_i2.c: Regenerated.
+       * generated/minloc1_16_i4.c: Regenerated.
+       * generated/minloc1_16_i8.c: Regenerated.
+       * generated/minloc1_16_r10.c: Regenerated.
+       * generated/minloc1_16_r16.c: Regenerated.
+       * generated/minloc1_16_r4.c: Regenerated.
+       * generated/minloc1_16_r8.c: Regenerated.
+       * generated/minloc1_4_i16.c: Regenerated.
+       * generated/minloc1_4_i1.c: Regenerated.
+       * generated/minloc1_4_i2.c: Regenerated.
+       * generated/minloc1_4_i4.c: Regenerated.
+       * generated/minloc1_4_i8.c: Regenerated.
+       * generated/minloc1_4_r10.c: Regenerated.
+       * generated/minloc1_4_r16.c: Regenerated.
+       * generated/minloc1_4_r4.c: Regenerated.
+       * generated/minloc1_4_r8.c: Regenerated.
+       * generated/minloc1_8_i16.c: Regenerated.
+       * generated/minloc1_8_i1.c: Regenerated.
+       * generated/minloc1_8_i2.c: Regenerated.
+       * generated/minloc1_8_i4.c: Regenerated.
+       * generated/minloc1_8_i8.c: Regenerated.
+       * generated/minloc1_8_r10.c: Regenerated.
+       * generated/minloc1_8_r16.c: Regenerated.
+       * generated/minloc1_8_r4.c: Regenerated.
+       * generated/minloc1_8_r8.c: Regenerated.
+       * generated/minval_i16.c: Regenerated.
+       * generated/minval_i1.c: Regenerated.
+       * generated/minval_i2.c: Regenerated.
+       * generated/minval_i4.c: Regenerated.
+       * generated/minval_i8.c: Regenerated.
+       * generated/minval_r10.c: Regenerated.
+       * generated/minval_r16.c: Regenerated.
+       * generated/minval_r4.c: Regenerated.
+       * generated/minval_r8.c: Regenerated.
+       * generated/product_c10.c: Regenerated.
+       * generated/product_c16.c: Regenerated.
+       * generated/product_c4.c: Regenerated.
+       * generated/product_c8.c: Regenerated.
+       * generated/product_i16.c: Regenerated.
+       * generated/product_i1.c: Regenerated.
+       * generated/product_i2.c: Regenerated.
+       * generated/product_i4.c: Regenerated.
+       * generated/product_i8.c: Regenerated.
+       * generated/product_r10.c: Regenerated.
+       * generated/product_r16.c: Regenerated.
+       * generated/product_r4.c: Regenerated.
+       * generated/product_r8.c: Regenerated.
+       * generated/sum_c10.c: Regenerated.
+       * generated/sum_c16.c: Regenerated.
+       * generated/sum_c4.c: Regenerated.
+       * generated/sum_c8.c: Regenerated.
+       * generated/sum_i16.c: Regenerated.
+       * generated/sum_i1.c: Regenerated.
+       * generated/sum_i2.c: Regenerated.
+       * generated/sum_i4.c: Regenerated.
+       * generated/sum_i8.c: Regenerated.
+       * generated/sum_r10.c: Regenerated.
+       * generated/sum_r16.c: Regenerated.
+       * generated/sum_r4.c: Regenerated.
+       * generated/sum_r8.c: Regenerated.
 
-2010-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2011-03-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
-       PR libfortran/43517
-       * io/read.c (read_x): Return if seen EOR condition.
+       PR libgfortran/48047
+       * io/write_float.def (write_float): Change MIN_FIELD_WIDTH to 48.
 
-2010-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
 
-       PR fortran/43409
-       * io/io.h: Fix type of size in st_parameter_inquire structure.
+       PR libfortran/47802
+       * intrinsics/ctime.c (strctime): Use builtins to check localtime_r
+       return type.
 
-2010-03-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
 
-       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.
+       PR libfortran/47802
+       * intrinsics/ctime.c (strctime): Don't use return value of
+       localtime_r.
 
-2010-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2011-02-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
-       * io/transfer.c (read_sf_internal): Remove stray function declaration
-       used during debugging.
+       PR libgfortran/47567
+       * io/write_float.def (output_float): Move handling of w = 0 to after
+       output rounding. Check for zero and set zero_flag accordingly. Set
+       width according to zero_flag. Add better comments.
 
-2010-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2011-02-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
-       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.
+       PR libgfortran/47778
+       * io/list_read.c (namelist_read): Intialize the error string buffere.
+       If pprev_nl was used during the previous namelist read and the rank
+       was zero, reset the pointer to NULL for the next namelist read.
 
-2010-03-12  Kai Tietz  <kai.tietz@onevision.com>
+2011-02-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
-       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.
+       PR libfortran/45165
+       * unix.c (fallback_access): Fix file descriptor leaks.
 
-2010-03-11  Tobias Burnus  <burnus@net-b.de>
+2011-02-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
-       PR fortran/43228
-       * io/list_read.c (nml_parse_qualifier): Disable expanded_read
-       for array sections.
+       * acinclude.m4 (LIBGFOR_CHECK_FPSETMASK): Set shell variable
+       tested in configure.host.
+       * configure: Regenerate.
 
-2010-03-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/47802
+       * config.h.in: Regenerated.
+       * configure: Regenerated.
+       * configure.ac: Remove checks for ctime and ctime_r, add check for
+       strftime.
+       * intrinsics/date_and_time.c (localtime_r): Move fallback
+       implementation to time_1.h.
+       * intrinsics/time_1.h (localtime_r): Fallback implementation.
+       * intrinsics/ctime.c: Include time_1.h.
+       (ctime_r): Remove fallback implementation.
+       (strctime): New function.
+       (fdate): Use strctime instead of ctime_r.
+       (fdate_sub): Likewise.
+       (ctime): Likewise.
+       (ctime_sub): Likewise.
+
+2011-02-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/47878
+       * io/transfer.c (read_sf): Call fbuf_getptr only at the end,
+       and subtract n, dtp->u.p.sf_seen_eor and seen_comma from it.
+
+2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/47802
+       * configure.ac: Add test for POSIX getpwuid_r.
+       * intrinsics/getlog.c (getlog): CPP test for
+       HAVE_POSIX_GETPWUID_R.
+       * config.h.in: Regenerated.
+       * configure: Regenerated.
+
+2011-02-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/47567
+       * io/write_float.def (output_float): Remove special case handling of
+       zero with width 1.
+
+2011-02-23  Janne Blomqvist  <jb@gcc.gnu.org>
+           Jerry DeLisle    <jvdelisle@gcc.gnu.org>
+
+       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.
+
+2011-02-22  Tobias Burnus  <burnus@net-b.de>
+           Kai-Uwe Eckhardt  <kuehro@gmx.de>
+
+       PR libfortran/47830
+       * intrinsics/c99_functions.c (roundl): Make C valid for
+       HAVE_NEXTAFTERL.
+
+2011-02-19  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.
+
+2011-02-16  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.
+
+2011-02-16  Jakub Jelinek  <jakub@redhat.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.
+
+2011-02-15  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/47716
+       PR fortran/47648
+       * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Use check from
+       libquadmath, which uses more features.
+       * configure: Regenerate.
 
-       PR libfortran/43320
-       * io/transfer.c (next_record_r): Add hit_eof based on item_count
-       condition.
+2011-02-14  Jakub Jelinek  <jakub@redhat.com>
 
-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.
-
-2010-03-08  Kai TIetz  <kai.tietz@onevision.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