-2010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR target/40125
- PR lto/46695
- * configure.ac: Invoke ACX_LT_HOST_FLAGS.
- * Makefile.am (LTLDFLAGS): Use lt_host_flags.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
- * Makefile.in: Regenerate.
-
-2010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
- Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32049
- * Makefile.am: Add missing pow_r16_i4.c, add transfer128.c,
- link libquadmath, if used.
- * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Add.
- * configure.ac: Use it, touch spec file.
- * gfortran.map: Add pow_r16_i4 and
- transfer_(real,complex)128(,write) functions.
- * intrinsics/cshift0.c (cshift0): Handle __float128 type.
- * intrinsics/erfc_scaled_inc.c: Ditto.
- * intrinsics/pack_generic.c (pack): Ditto
- * intrinsics/spread_generic.c (spread): Ditto.
- * intrinsics/unpack_generic.c (unpack1): Ditto.
- * io/read.c (convert_real): Ditto.
- * io/transfer.c: Update comments.
- * io/transfer128.c: New file.
- * io/write_float.def (write_float): Handle __float128 type.
- * libgfortran.h: #include quadmath_weak.h, define __builtin_infq
- and nanq.
- * m4/mtype.m4: Handle __float128 type.
- * runtime/in_pack_generic.c (internal_pack): Ditto.
- * runtime/in_unpack_generic.c (internal_unpack): Ditto.
- * kinds-override.h: New file.
- * libgfortran.spec.in: Ditto.
- * generated/pow_r16_i4.c: Generated.
- * Makefile.in: Regenerate.
- * configure: Regenerate.
- * config.h: Regenerate.
- * bessel_r10.c: Regenerate.
- * bessel_r16.c: Regenerate.
- * bessel_r4.c: Regenerate.
- * bessel_r8.c: Regenerate.
- * exponent_r16.c: Regenerate.
- * fraction_r16.c: Regenerate.
- * nearest_r16.c: Regenerate.
- * norm2_r10.c: Regenerate.
- * norm2_r16.c: Regenerate.
- * norm2_r4.c: Regenerate.
- * norm2_r8.c: Regenerate.
- * rrspacing_r16.c: Regenerate.
- * set_exponent_r16.c: Regenerate.
- * spacing_r16.c: Regenerate.
-
-2010-11-09 Janne Blomqvist <jb@gcc.gnu.org>
-
- * io/unix.c (struct unix_stream): Add st_dev and st_ino members.
- (fd_to_stream): Avoid unnecessary lseek() call, test isatty()
- last. Make a token effort to support block devices.
- (compare_file_filename): Use cached stat values.
- (find_file0): Likewise.
- (find_file): Likewise.
-
-2010-11-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/46373
- * io/transfer.c (data_transfer_init): Do not call flush_if_preconnected
- if this is an internal unit.
-
-2010-11-04 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/44931
- * io/inquire.c (inquire_via_unit): Use stream_ttyname() instead of
- calling ttyname() directly.
- * io/unix.h (unix_stream): Move struct to unix.c.
- * io/unix.c: Move struct unix_stream here.
- (stream_ttyname): Don't mark the argument as unused if it is used.
-
-2010-11-04 Janne Blomqvist <jb@gcc.gnu.org>
-
- * io/unix.h (struct unix_stream): Remove prot member.
- * io/unix.c: Remove PROT_READ and PROT_WRITE constants.
- (fd_to_stream): Remove prot from argument list, don't set prot.
- (open_external): Don't set prot flag.
- (input_stream): Remove prot from argument list.
- (output_stream): Likewise.
- (error_stream): Likewise.
-
-2010-11-03 Janne Blomqvist <jb@gcc.gnu.org>
-
- * io/unix.h: Remove empty_internal_buffer prototype.
- * io/unix.c (empty_internal_buffer): Remove unused function.
-
-2010-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/43899
- * runtime/error.c (generate_warning): New function to generate a run
- time warning message. Fix some whitespace.
- * libgfortran.h: Add prototype for new function.
- * io/list_read.c (nml_read_obj): Use new function to warn when a
- character namelist object is truncated. Only warn if compiled
- with -fbounds-check.
-
-2010-11-02 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/45629
- * io/io.h: Remove setjmp.h include.
- (st_parameter_dt): Change last_char to int, remove eof_jump.
- * io/list_read.c (next_char): Return EOF instead of jumping.
- (unget_char): Use int to be able to handle EOF.
- (eat_spaces): Handle EOF return from next_char.
- (eat_line): Likewise.
- (eat_separator): Handle EOF return from next_char, eat_spaces,
- eat_line.
- (finish_separator): Likewise.
- (convert_integer): Likewise.
- (read_logical): Likewise.
- (read_integer): Likewise.
- (read_character): Likewise.
- (parse_real): Likewise.
- (read_complex): Likewise.
- (read_real): Likewise.
- (list_formatted_read_scalar): Likewise.
- (list_formatted_read): Likewise.
- (finish_list_read): Likewise.
- (nml_parse_qualifier): Likewise.
- (nml_match_name): Likewise.
- (nml_get_obj_data): Likewise.
- (namelist_read): Likewise.
- * io/transfer.c (data_transfer_init): Initialize last_char.
- (finalize_transfer): Remove jmp_buf setup.
-
-2010-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/46010
- * io/list_read.c (nml_parse_qualifier): Add additional conditions for
- setting the end index for loop specification. Fix some whitespace.
- * io/write.c (write_default_char4): Const-ify the source argument.
-
-2010-10-21 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/46007
- * m4/shape.m4 (shape_'rtype_kind`): Use variable for rank.
- Allocate return array if unallocated.
- * generated/shape_i4.c: Regenerated.
- * generated/shape_i8.c: Regenerated.
- * generated/shape_i16.c: Regenerated.
-
-2010-10-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/46079
- * runtime/stop.c (stop_numeric_f08): New function.
- (stop_numeric): Restore to previous behavior.
- * gfortran.map: Add symbol _gfortran_stop_numeric_f08.
-
-2010-10-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * io/io.h: Remove definition of the BT enumerator.
- * libgfortran.h: Replace GFC_DTYPE enumerator with BT.
- * intrinsics/iso_c_generated_procs.c: Likewise
- * intrinsics/date_and_time.c: Likewise.
- * intrinsics/iso_c_binding.c: Likewise.
- * io/list_read.c: Likewise.
- * io/transfer.c: Likewise.
- * io/write.c: Likewise.
-
-2010-10-16 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/20165
- PR fortran/31593
- PR fortran/43665
- * gfortran.map: Add _gfortran_transfer_array_write,
- _gfortran_transfer_array_write, _gfortran_transfer_character_write,
- _gfortran_transfer_character_wide_write,
- _gfortran_transfer_complex_write,
- _gfortran_transfer_integer_write,
- _gfortran_transfer_logical_write and
- _gfortran_transfer_real_write.
- * io/transfer.c (transfer_integer_write): Add prototype and
- function body as call to the original function, without the
- _write.
- (transfer_real_write): Likewise.
- (transfer_logical_write): Likewise.
- (transfer_character_write): Likewise.
- (transfer_character_wide_write): Likewise.
- (transfer_complex_write): Likewise.
- (transfer_array_write): Likewise.
-
-2010-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/45710
- * io/write.c (namelist_write_newline): Pad character array internal
- unit records with spaces.
-
-2010-09-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/45723
- * io/open.c (new_unit): On POSITION_APPEND don't seek if file length is
- zero.
-
-2010-09-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/45532
- * io/list_read.c (nml_get_obj_data): Set first_nl if the previous
- is NULL.
-
-2010-09-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * intrinsics/pack_generic.c (pack): Add missing return and fix
- whitespace.
- * intrinsics/cshift0.c (cshift0): Fix whitespace.
- * intrinsics/unpack_generic.c (unpack1, unpack0): Fix whitespace.
-
-2010-09-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * runtime/string.c (compare0): Remove.
- (find_option): Inline string comparison
-
-2010-09-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE,
- LIBGFOR_CHECK_FOR_BROKEN_ISNAN,
- LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY): Remove.
- * configure.ac: Remove above checks.
- * libgfortran.h: Define isnan, isinf, isfinite, isnormal and
- signbit in terms of the respective built-ins.
- * io/write_float.def (WRITE_FLOAT): Use signbit() instead of
- __builtin_signbit().
- * intrinsics/c99_functions.c (tgamma): Use isnan() instead of
- __builtin_isnan().
- * config.h.in: Regenerate.
- * configure: Regenerate.
-
-2010-09-06 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/38282
- * gfortran.map: Add new iany, iall and iparity intrinsics.
- * Makefile.am: Ditto.
- * m4/iany.m4: New.
- * m4/iall.m4: New.
- * m4/iparity.m4: New.
- * Makefile.in: Regenerate.
- * generated/iall_i1.c: Generate.
- * generated/iall_i2.c: Generate.
- * generated/iall_i4.c: Generate.
- * generated/iall_i8.c: Generate.
- * generated/iall_i16.c: Generate.
- * generated/iany_i1.c: Generate.
- * generated/iany_i2.c: Generate.
- * generated/iany_i4.c: Generate.
- * generated/iany_i8.c: Generate.
- * generated/iany_i16.c: Generate.
- * generated/iparity_i1.c: Generate.
- * generated/iparity_i2.c: Generate.
- * generated/iparity_i4.c: Generate.
- * generated/iparity_i8.c: Generate.
- * generated/iparity_i16.c: Generate.
-
-2010-09-05 Tobias Burnus <burnus@net-b.de>
-
- * m4/bessel.m4: Fix printf warning by casting to (long int).
- * generated/bessel_r4.c:Regenerated.
+2011-09-10 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/49479
+ * generated/m4/ifunction.m4: Always call internal_malloc_size
+ even when there is a zero-sized return array.
+ * generated/generated/maxloc1_16_i16.c: Regenerated.
+ * generated/generated/maxloc1_16_i1.c: Regenerated.
+ * generated/generated/maxloc1_16_i2.c: Regenerated.
+ * generated/generated/maxloc1_16_i4.c: Regenerated.
+ * generated/generated/maxloc1_16_i8.c: Regenerated.
+ * generated/generated/maxloc1_16_r10.c: Regenerated.
+ * generated/generated/maxloc1_16_r16.c: Regenerated.
+ * generated/generated/maxloc1_16_r4.c: Regenerated.
+ * generated/generated/maxloc1_16_r8.c: Regenerated.
+ * generated/generated/maxloc1_4_i16.c: Regenerated.
+ * generated/generated/maxloc1_4_i1.c: Regenerated.
+ * generated/generated/maxloc1_4_i2.c: Regenerated.
+ * generated/generated/maxloc1_4_i4.c: Regenerated.
+ * generated/generated/maxloc1_4_i8.c: Regenerated.
+ * generated/generated/maxloc1_4_r10.c: Regenerated.
+ * generated/generated/maxloc1_4_r16.c: Regenerated.
+ * generated/generated/maxloc1_4_r4.c: Regenerated.
+ * generated/generated/maxloc1_4_r8.c: Regenerated.
+ * generated/generated/maxloc1_8_i16.c: Regenerated.
+ * generated/generated/maxloc1_8_i1.c: Regenerated.
+ * generated/generated/maxloc1_8_i2.c: Regenerated.
+ * generated/generated/maxloc1_8_i4.c: Regenerated.
+ * generated/generated/maxloc1_8_i8.c: Regenerated.
+ * generated/generated/maxloc1_8_r10.c: Regenerated.
+ * generated/generated/maxloc1_8_r16.c: Regenerated.
+ * generated/generated/maxloc1_8_r4.c: Regenerated.
+ * generated/generated/maxloc1_8_r8.c: Regenerated.
+ * generated/generated/maxval_i16.c: Regenerated.
+ * generated/generated/maxval_i1.c: Regenerated.
+ * generated/generated/maxval_i2.c: Regenerated.
+ * generated/generated/maxval_i4.c: Regenerated.
+ * generated/generated/maxval_i8.c: Regenerated.
+ * generated/generated/maxval_r10.c: Regenerated.
+ * generated/generated/maxval_r16.c: Regenerated.
+ * generated/generated/maxval_r4.c: Regenerated.
+ * generated/generated/maxval_r8.c: Regenerated.
+ * generated/generated/minloc1_16_i16.c: Regenerated.
+ * generated/generated/minloc1_16_i1.c: Regenerated.
+ * generated/generated/minloc1_16_i2.c: Regenerated.
+ * generated/generated/minloc1_16_i4.c: Regenerated.
+ * generated/generated/minloc1_16_i8.c: Regenerated.
+ * generated/generated/minloc1_16_r10.c: Regenerated.
+ * generated/generated/minloc1_16_r16.c: Regenerated.
+ * generated/generated/minloc1_16_r4.c: Regenerated.
+ * generated/generated/minloc1_16_r8.c: Regenerated.
+ * generated/generated/minloc1_4_i16.c: Regenerated.
+ * generated/generated/minloc1_4_i1.c: Regenerated.
+ * generated/generated/minloc1_4_i2.c: Regenerated.
+ * generated/generated/minloc1_4_i4.c: Regenerated.
+ * generated/generated/minloc1_4_i8.c: Regenerated.
+ * generated/generated/minloc1_4_r10.c: Regenerated.
+ * generated/generated/minloc1_4_r16.c: Regenerated.
+ * generated/generated/minloc1_4_r4.c: Regenerated.
+ * generated/generated/minloc1_4_r8.c: Regenerated.
+ * generated/generated/minloc1_8_i16.c: Regenerated.
+ * generated/generated/minloc1_8_i1.c: Regenerated.
+ * generated/generated/minloc1_8_i2.c: Regenerated.
+ * generated/generated/minloc1_8_i4.c: Regenerated.
+ * generated/generated/minloc1_8_i8.c: Regenerated.
+ * generated/generated/minloc1_8_r10.c: Regenerated.
+ * generated/generated/minloc1_8_r16.c: Regenerated.
+ * generated/generated/minloc1_8_r4.c: Regenerated.
+ * generated/generated/minloc1_8_r8.c: Regenerated.
+ * generated/generated/minval_i16.c: Regenerated.
+ * generated/generated/minval_i1.c: Regenerated.
+ * generated/generated/minval_i2.c: Regenerated.
+ * generated/generated/minval_i4.c: Regenerated.
+ * generated/generated/minval_i8.c: Regenerated.
+ * generated/generated/minval_r10.c: Regenerated.
+ * generated/generated/minval_r16.c: Regenerated.
+ * generated/generated/minval_r4.c: Regenerated.
+ * generated/generated/minval_r8.c: Regenerated.
+ * generated/generated/product_c10.c: Regenerated.
+ * generated/generated/product_c16.c: Regenerated.
+ * generated/generated/product_c4.c: Regenerated.
+ * generated/generated/product_c8.c: Regenerated.
+ * generated/generated/product_i16.c: Regenerated.
+ * generated/generated/product_i1.c: Regenerated.
+ * generated/generated/product_i2.c: Regenerated.
+ * generated/generated/product_i4.c: Regenerated.
+ * generated/generated/product_i8.c: Regenerated.
+ * generated/generated/product_r10.c: Regenerated.
+ * generated/generated/product_r16.c: Regenerated.
+ * generated/generated/product_r4.c: Regenerated.
+ * generated/generated/product_r8.c: Regenerated.
+ * generated/generated/sum_c10.c: Regenerated.
+ * generated/generated/sum_c16.c: Regenerated.
+ * generated/generated/sum_c4.c: Regenerated.
+ * generated/generated/sum_c8.c: Regenerated.
+ * generated/generated/sum_i16.c: Regenerated.
+ * generated/generated/sum_i1.c: Regenerated.
+ * generated/generated/sum_i2.c: Regenerated.
+ * generated/generated/sum_i4.c: Regenerated.
+ * generated/generated/sum_i8.c: Regenerated.
+ * generated/generated/sum_r10.c: Regenerated.
+ * generated/generated/sum_r16.c: Regenerated.
+ * generated/generated/sum_r4.c: Regenerated.
+ * generated/generated/sum_r8.c: Regenerated.
+
+2011-09-01 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ * generated/bessel_r4.c: Regenerated.
* generated/bessel_r8.c: Regenerated.
* generated/bessel_r10.c: Regenerated.
* generated/bessel_r16.c: Regenerated.
-2010-09-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * intrinsics/execute_command_line.c: New file.
- * gfortran.map (_gfortran_execute_command_line_i4,
- _gfortran_execute_command_line_i8): New symbols.
- * Makefile.am: Add new file intrinsics/execute_command_line.c.
- * Makefile.in: Regenerated.
-
-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.
+2011-08-29 Tobias Burnus <burnus@net-b.de>
+
+ * caf/libcaf.h (_gfortran_caf_deregister): Update prototype.
+ * caf/mpi.c (_gfortran_caf_deregister): Modify prototype,
+ actually free memory and add error diagnostic.
+ (_gfortran_caf_finalize): Add additional free calls.
+ * caf/single.c (_gfortran_caf_deregister): Modify prototype,
+ actually free memory and add error diagnostic.
+ (_gfortran_caf_finalize): Add additional free calls.
+
+2011-08-29 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/50192
+ * intrinsics/string_intrinsics.c (memcmp_char4): New function.
+ * intrinsics/string_intrinsics_inc.c: New macro MEMCMP, either
+ set to memcmp or memcmp_char4.
+ (compare_string): Use MEMCMP, with correct size for it.
+ * libgfortran.h: Add prototype for memcmp_char4.
+
+2011-08-28 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/40866
+ * generated/iall_i1.c: Regenerated.
+ * generated/iall_i16.c: Regenerated.
+ * generated/iall_i2.c: Regenerated.
+ * generated/iall_i4.c: Regenerated.
+ * generated/iall_i8.c: Regenerated.
+ * generated/iany_i1.c: Regenerated.
+ * generated/iany_i16.c: Regenerated.
+ * generated/iany_i2.c: Regenerated.
+ * generated/iany_i4.c: Regenerated.
+ * generated/iany_i8.c: Regenerated.
+ * generated/iparity_i1.c: Regenerated.
+ * generated/iparity_i16.c: Regenerated.
+ * generated/iparity_i2.c: Regenerated.
+ * generated/iparity_i4.c: Regenerated.
+ * generated/iparity_i8.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/norm2_r8.c: Regenerated.
+ * generated/parity_l1.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_l2.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.
+ * generated/misc_specifics.F90: Regenerated (comment change).
+ * generated/_abs_c10.F90: Regenerated (comment change).
+ * generated/_abs_c16.F90: Regenerated (comment change).
+ * generated/_abs_c4.F90: Regenerated (comment change).
+ * generated/_abs_c8.F90: Regenerated (comment change).
+ * generated/_abs_i16.F90: Regenerated (comment change).
+ * generated/_abs_i4.F90: Regenerated (comment change).
+ * generated/_abs_i8.F90: Regenerated (comment change).
+ * generated/_abs_r10.F90: Regenerated (comment change).
+ * generated/_abs_r16.F90: Regenerated (comment change).
+ * generated/_abs_r4.F90: Regenerated (comment change).
+ * generated/_abs_r8.F90: Regenerated (comment change).
+ * generated/_acosh_r10.F90: Regenerated (comment change).
+ * generated/_acosh_r16.F90: Regenerated (comment change).
+ * generated/_acosh_r4.F90: Regenerated (comment change).
+ * generated/_acosh_r8.F90: Regenerated (comment change).
+ * generated/_acos_r10.F90: Regenerated (comment change).
+ * generated/_acos_r16.F90: Regenerated (comment change).
+ * generated/_acos_r4.F90: Regenerated (comment change).
+ * generated/_acos_r8.F90: Regenerated (comment change).
+ * generated/_aimag_c10.F90: Regenerated (comment change).
+ * generated/_aimag_c16.F90: Regenerated (comment change).
+ * generated/_aimag_c4.F90: Regenerated (comment change).
+ * generated/_aimag_c8.F90: Regenerated (comment change).
+ * generated/_aint_r10.F90: Regenerated (comment change).
+ * generated/_aint_r16.F90: Regenerated (comment change).
+ * generated/_aint_r4.F90: Regenerated (comment change).
+ * generated/_aint_r8.F90: Regenerated (comment change).
+ * generated/_anint_r10.F90: Regenerated (comment change).
+ * generated/_anint_r16.F90: Regenerated (comment change).
+ * generated/_anint_r4.F90: Regenerated (comment change).
+ * generated/_anint_r8.F90: Regenerated (comment change).
+ * generated/_asinh_r10.F90: Regenerated (comment change).
+ * generated/_asinh_r16.F90: Regenerated (comment change).
+ * generated/_asinh_r4.F90: Regenerated (comment change).
+ * generated/_asinh_r8.F90: Regenerated (comment change).
+ * generated/_asin_r10.F90: Regenerated (comment change).
+ * generated/_asin_r16.F90: Regenerated (comment change).
+ * generated/_asin_r4.F90: Regenerated (comment change).
+ * generated/_asin_r8.F90: Regenerated (comment change).
+ * generated/_atan2_r10.F90: Regenerated (comment change).
+ * generated/_atan2_r16.F90: Regenerated (comment change).
+ * generated/_atan2_r4.F90: Regenerated (comment change).
+ * generated/_atan2_r8.F90: Regenerated (comment change).
+ * generated/_atanh_r10.F90: Regenerated (comment change).
+ * generated/_atanh_r16.F90: Regenerated (comment change).
+ * generated/_atanh_r4.F90: Regenerated (comment change).
+ * generated/_atanh_r8.F90: Regenerated (comment change).
+ * generated/_atan_r10.F90: Regenerated (comment change).
+ * generated/_atan_r16.F90: Regenerated (comment change).
+ * generated/_atan_r4.F90: Regenerated (comment change).
+ * generated/_atan_r8.F90: Regenerated (comment change).
+ * generated/_conjg_c10.F90: Regenerated (comment change).
+ * generated/_conjg_c16.F90: Regenerated (comment change).
+ * generated/_conjg_c4.F90: Regenerated (comment change).
+ * generated/_conjg_c8.F90: Regenerated (comment change).
+ * generated/_cosh_r10.F90: Regenerated (comment change).
+ * generated/_cosh_r16.F90: Regenerated (comment change).
+ * generated/_cosh_r4.F90: Regenerated (comment change).
+ * generated/_cosh_r8.F90: Regenerated (comment change).
+ * generated/_cos_c10.F90: Regenerated (comment change).
+ * generated/_cos_c16.F90: Regenerated (comment change).
+ * generated/_cos_c4.F90: Regenerated (comment change).
+ * generated/_cos_c8.F90: Regenerated (comment change).
+ * generated/_cos_r10.F90: Regenerated (comment change).
+ * generated/_cos_r16.F90: Regenerated (comment change).
+ * generated/_cos_r4.F90: Regenerated (comment change).
+ * generated/_cos_r8.F90: Regenerated (comment change).
+ * generated/_dim_i16.F90: Regenerated (comment change).
+ * generated/_dim_i4.F90: Regenerated (comment change).
+ * generated/_dim_i8.F90: Regenerated (comment change).
+ * generated/_dim_r10.F90: Regenerated (comment change).
+ * generated/_dim_r16.F90: Regenerated (comment change).
+ * generated/_dim_r4.F90: Regenerated (comment change).
+ * generated/_dim_r8.F90: Regenerated (comment change).
+ * generated/_exp_c10.F90: Regenerated (comment change).
+ * generated/_exp_c16.F90: Regenerated (comment change).
+ * generated/_exp_c4.F90: Regenerated (comment change).
+ * generated/_exp_c8.F90: Regenerated (comment change).
+ * generated/_exp_r10.F90: Regenerated (comment change).
+ * generated/_exp_r16.F90: Regenerated (comment change).
+ * generated/_exp_r4.F90: Regenerated (comment change).
+ * generated/_exp_r8.F90: Regenerated (comment change).
+ * generated/_log10_r10.F90: Regenerated (comment change).
+ * generated/_log10_r16.F90: Regenerated (comment change).
+ * generated/_log10_r4.F90: Regenerated (comment change).
+ * generated/_log10_r8.F90: Regenerated (comment change).
+ * generated/_log_c10.F90: Regenerated (comment change).
+ * generated/_log_c16.F90: Regenerated (comment change).
+ * generated/_log_c4.F90: Regenerated (comment change).
+ * generated/_log_c8.F90: Regenerated (comment change).
+ * generated/_log_r10.F90: Regenerated (comment change).
+ * generated/_log_r16.F90: Regenerated (comment change).
+ * generated/_log_r4.F90: Regenerated (comment change).
+ * generated/_log_r8.F90: Regenerated (comment change).
+ * generated/_mod_i16.F90: Regenerated (comment change).
+ * generated/_mod_i4.F90: Regenerated (comment change).
+ * generated/_mod_i8.F90: Regenerated (comment change).
+ * generated/_mod_r10.F90: Regenerated (comment change).
+ * generated/_mod_r16.F90: Regenerated (comment change).
+ * generated/_mod_r4.F90: Regenerated (comment change).
+ * generated/_mod_r8.F90: Regenerated (comment change).
+ * generated/_sign_i16.F90: Regenerated (comment change).
+ * generated/_sign_i4.F90: Regenerated (comment change).
+ * generated/_sign_i8.F90: Regenerated (comment change).
+ * generated/_sign_r10.F90: Regenerated (comment change).
+ * generated/_sign_r16.F90: Regenerated (comment change).
+ * generated/_sign_r4.F90: Regenerated (comment change).
+ * generated/_sign_r8.F90: Regenerated (comment change).
+ * generated/_sinh_r10.F90: Regenerated (comment change).
+ * generated/_sinh_r16.F90: Regenerated (comment change).
+ * generated/_sinh_r4.F90: Regenerated (comment change).
+ * generated/_sinh_r8.F90: Regenerated (comment change).
+ * generated/_sin_c10.F90: Regenerated (comment change).
+ * generated/_sin_c16.F90: Regenerated (comment change).
+ * generated/_sin_c4.F90: Regenerated (comment change).
+ * generated/_sin_c8.F90: Regenerated (comment change).
+ * generated/_sin_r10.F90: Regenerated (comment change).
+ * generated/_sin_r16.F90: Regenerated (comment change).
+ * generated/_sin_r4.F90: Regenerated (comment change).
+ * generated/_sin_r8.F90: Regenerated (comment change).
+ * generated/_sqrt_c10.F90: Regenerated (comment change).
+ * generated/_sqrt_c16.F90: Regenerated (comment change).
+ * generated/_sqrt_c4.F90: Regenerated (comment change).
+ * generated/_sqrt_c8.F90: Regenerated (comment change).
+ * generated/_sqrt_r10.F90: Regenerated (comment change).
+ * generated/_sqrt_r16.F90: Regenerated (comment change).
+ * generated/_sqrt_r4.F90: Regenerated (comment change).
+ * generated/_sqrt_r8.F90: Regenerated (comment change).
+ * generated/_tanh_r10.F90: Regenerated (comment change).
+ * generated/_tanh_r16.F90: Regenerated (comment change).
+ * generated/_tanh_r4.F90: Regenerated (comment change).
+ * generated/_tanh_r8.F90: Regenerated (comment change).
+ * generated/_tan_r10.F90: Regenerated (comment change).
+ * generated/_tan_r16.F90: Regenerated (comment change).
+ * generated/_tan_r4.F90: Regenerated (comment change).
+ * generated/_tan_r8.F90: Regenerated (comment change).
+
+2011-08-18 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/50109
+ * io/list_read.c (eat_separator): Fix skipping over "!" lines.
+
+2011-07-23 Andreas Schwab <schwab@linux-m68k.org>
+
+ * intrinsics/ctime.c: Include <stdlib.h>.
+ * intrinsics/getlog.c: Likewise.
+ * runtime/stop.c: Likewise.
+
+2011-07-23 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/49791
+ * io/list_read.c (nml_parse_qualifier): Remove check to
+ enabled extended read for another case.
+
+2011-07-15 Daniel Carrera <dcarrera@gmail.com>
+
+ * caf/mpi.c (caf_runtime_error): Change fprintf to vfprintf.
+ * caf/single.c (caf_runtime_error): Ditto.
+
+2011-07-14 Daniel Carrera <dcarrera@gmail.com>
+
+ * caf/single.c: Include stdarg.h header.
+ (caf_runtime_error): New function. Use "exit(EXIT_FAILURE)".
+ (_gfortran_caf_register): Use caf_runtime_error.
+ (_gfortran_caf_sync_images): Use "exit(EXIT_FAILURE)".
+ * caf/mpi.c (caf_runtime_error): Remove "error" parameter.
+ Return EXIT_FAILURE instead.
+ (_gfortran_caf_register): Update call to caf_runtime_error.
+ (_gfortran_caf_sync_all): Ditto.
+ (_gfortran_caf_sync_images): Ditto.
+ (_gfortran_caf_error_stop_str): Use "exit(EXIT_FAILURE)".
+
+2011-07-13 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/49296
+ * io/list_read.c (read_logical): Don't error out if a valid value
+ is followed by EOF instead of a normal separator.
+ (read_integer): Likewise.
-2010-08-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+2011-07-09 Tobias Burnus <burnus@net-b.de>
+
+ * runtime/error.c (sys_abort): Change argument list
+ from "()" to "(void)".
+
+2011-07-09 Tobias Burnus <burnus@net-b.de>
+ Daniel Carrera <dcarrera@gmail.com>
+
+ * caf/mpi.c (runtime_error): New function.
+ (_gfortran_caf_register): Use it.
+ (_gfortran_caf_sync_all): Use it, add STAT_STOPPED_IMAGE
+ as possible status value.
+ (_gfortran_caf_sync_images): Ditto.
+
+2011-07-07 Tobias Burnus <burnus@net-b.de>
+
+ * libcaf.h (__attribute__, unlikely, likely): New macros.
+ (caf_register_t): Update comment.
+ (_gfortran_caf_register): Add stat, errmsg, errmsg_len arguments.
+ * single.c (_gfortran_caf_register): Ditto; add error diagnostics.
+ * mpi.c (_gfortran_caf_register): Ditto.
+ (caf_is_finalized): New global variable.
+ (_gfortran_caf_finalize): Use it.
+
+2011-07-05 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ * runtime/memory.c (internal_malloc_size): If size is zero,
+ allocate a single byte.
+ * m4/pack.m4 (pack_'rtype_code`): Don't check for zero size
+ for the argument of internal_malloc_size.
+ * m4/spread.m4 (spread_'rtype_code`): Likewise.
+ * m4/eoshift1.m4 (eoshift1): Don't allocate twice. Don't check
+ for zero size for the argument of internal_malloc_size.
+ * m4/eoshift3.m4: Don't check for zero size for the argument of
+ internal_malloc_size.
+ * intrinsics/pack_generic.c (pack_internal): Likewise.
+ (pack_s_internal): Likewise.
+ * intrinsics/cshift0.c (cshift0): Likewise.
+ * intrinsics/spread_generic.c (spread_internal): Likewise.
+ * intrinsics/eoshift0.c (eoshift0): Likewise.
+ * intrinsics/eoshift2.c (eoshift2): Likewise.
+ * generated/eoshift1_16.c: Regenerated.
+ * generated/eoshift1_4.c: Regenerated.
+ * generated/eoshift1_8.c: Regenerated.
+ * generated/eoshift3_16.c: Regenerated.
+ * generated/eoshift3_4.c: Regenerated.
+ * generated/eoshift3_8.c: Regenerated.
+ * generated/pack_c10.c: Regenerated.
+ * generated/pack_c16.c: Regenerated.
+ * generated/pack_c4.c: Regenerated.
+ * generated/pack_c8.c: Regenerated.
+ * generated/pack_i16.c: Regenerated.
+ * generated/pack_i1.c: Regenerated.
+ * generated/pack_i2.c: Regenerated.
+ * generated/pack_i4.c: Regenerated.
+ * generated/pack_i8.c: Regenerated.
+ * generated/pack_r10.c: Regenerated.
+ * generated/pack_r16.c: Regenerated.
+ * generated/pack_r4.c: Regenerated.
+ * generated/pack_r8.c: Regenerated.
+ * generated/spread_c10.c: Regenerated.
+ * generated/spread_c16.c: Regenerated.
+ * generated/spread_c4.c: Regenerated.
+ * generated/spread_c8.c: Regenerated.
+ * generated/spread_i16.c: Regenerated.
+ * generated/spread_i1.c: Regenerated.
+ * generated/spread_i2.c: Regenerated.
+ * generated/spread_i4.c: Regenerated.
+ * generated/spread_i8.c: Regenerated.
+ * generated/spread_r10.c: Regenerated.
+ * generated/spread_r16.c: Regenerated.
+ * generated/spread_r4.c: Regenerated.
+ * generated/spread_r8.c: Regenerated.
+
+2011-06-28 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/49479
+ * m4/reshape.m4: If source allocation is smaller than one, set it
+ to one.
+ * intrinsics/reshape_generic.c: Likewise.
+ * generated/reshape_r16.c: Regenerated.
+ * generated/reshape_c4.c: Regenerated.
+ * generated/reshape_c16.c: Regenerated.
+ * generated/reshape_c8.c: Regenerated.
+ * generated/reshape_r4.c: Regenerated.
+ * generated/reshape_i4.c: Regenerated.
+ * generated/reshape_r10.c: Regenerated.
+ * generated/reshape_r8.c: Regenerated.
+ * generated/reshape_c10.c: Regenerated.
+ * generated/reshape_i8.c: Regenerated.
+ * generated/reshape_i16.c: Regenerated.
+
+2011-06-18 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/49296
+ * io/list_read.c (read_character): Accept EOF as a separator when
+ reading string.
+
+2011-06-17 Daniel Carrera <dcarrera@gmail.com>
+
+ * caf/single.c (_gfortran_caf_register): Store the address
+ of all static coarrays in a linked list.
+ (_gfortran_caf_finalize): Free memory of staic coarrays.
+ * caf/mpi.c (_gfortran_caf_register): Store the address
+ of all static coarrays in a linked list. Initialize MPI
+ if necessary.
+ (_gfortran_caf_finalize): Free memory of staic coarrays.
+ (_gfortran_caf_init): Check if MPI is already initialized
+ before initializing again.
+ * caf/libcaf.h: Add a type to caf_register_t to distinguish
+ static coarrays and add the type caf_static_t to make the
+ linked list of static coarrays.
+
+2011-06-11 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * io/unix.c (buf_seek): Return error if file is not seekable.
+ (buf_tell): Call buf_seek.
+
+2011-06-11 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * io/unix.c (fd_to_stream): Figure out if a fd is seekable by
+ trying lseek().
+
+2011-06-10 Daniel Carrera <dcarrera@gmail.com>
+
+ * caf/mpi.c (_gfortran_caf_sync_all,
+ _gfortran_caf_sync_images): Functions have void return type
+ and move status into parameter list.
+ * caf/single.c (_gfortran_caf_sync_all,
+ _gfortran_caf_sync_images): Functions have void return type
+ and move status into parameter list.
+ * caf/libcaf.h (_gfortran_caf_sync_all,
+ _gfortran_caf_sync_images): Functions have void return type
+ and move status into parameter list.
+
+2011-06-03 Richard Henderson <rth@redhat.com>
+ Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/fpu-387.h [__sun__ && __svr4__] (sigill_hdlr): Correct
+ insn, insn size.
+ (has_sse) [!__x86_64__ && __sun__ && __svr4__]: Use movaps.
+
+2011-05-29 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/48931
+ * libgfortran.h (find_addr2line): New prototype.
+ * runtime/backtrace.c (show_backtrace): Use async-signal-safe
+ execve and stored path of addr2line.
+ * runtime/compile_options.c (maybe_find_addr2line): New function.
+ (set_options): Call maybe_find_addr2line if backtracing is enabled.
+ * runtime/main.c (find_addr2line): New function.
+ (init): Call find_addr2line if backtracing is enabled.
+ (cleanup): Free addr2line_path.
+
+2011-05-29 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/49214
+ * runtime/backtrace.c (fd_gets): Return NULL if nothing was read.
+
+2011-05-29 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/19155
+ * io/read.c (convert_real): Check for invalid input by comparing
+ endptr instead of EINVAL.
+ (read_f): Fixup floating point input without significand.
+
+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.
- * config/fpu-387.h (has_sse): Remove cw_sse, unused.
- Use fixed-length asm.
+2011-04-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-2010-08-23 Tobias Burnus <burnus@net-b.de>
+ 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.
- PR fortran/45323
- * io/write.c (nml_write_obj, namelist_write): Cast argument
- of toupper to int.
+2011-04-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+ 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.
- * configure: Regenerate.
+2011-04-16 Janne Blomqvist <jb@gcc.gnu.org>
-2010-08-19 Tobias Burnus <burnus@net-b.de>
+ * 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