OSDN Git Service

PR 51090 Check that getenv result != NULL before proceeding.
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
index 79a1b7f..6c253b0 100644 (file)
@@ -1,3 +1,853 @@
+2011-11-11  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/51090
+       * runtime/main.c (find_addr2line): NULL check before proceeding.
+
+2011-11-10  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * intrinsics/cpu_time.c (__cpu_time_1): Don't force inlining.
+       * intrinsics/random.c (rnumber_4): Remove inline attribute.
+       (rnumber_8, rnumber_10, rnumber_16): Likewise.
+       * intrinsics/system_clock.c (gf_gettime_mono): Likewise.
+       * intrinsics/time_1.h (ATTRIBUTE_ALWAYS_INLINE): Remove macro.
+       (gf_cputime): Add inline attribute for MingW version.
+       * io/format.c (format_hash): Remove inline attribute.
+       * io/io.h (memset4): Inline function from transfer.c and write.c
+       moved here.
+       * io/transfer.c (min_off): Remove inline attribute.
+       (memset4): Move to io.h.
+       * io/write.c (memset4): Likewise.
+       (memcpy4): Remove inline attribute.
+       * io/write_float.def (calculate_exp): Likewise.
+
+2011-11-09  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * intrinsics/time_1.h (gf_gettime): Simplify time() usage.
+
+2011-11-09  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * configure.ac (AC_STDC_HEADERS): Remove.
+       (AC_HEADER_TIME): Remove.
+       (AC_HAVE_HEADERS, AC_CHECK_HEADERS): Move into a single invocation
+       of AC_CHECK_HEADERS_ONCE, don't check for presence of C89 headers.
+       (AC_CHECK_MEMBERS): Use single invocation.
+       (AC_CHECK_FUNCS): Move into single invocation of
+       AC_CHEC_FUNCS_ONCE, don't check for presence of C89 functions.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * intrinsics/clock.c: Include time.h.
+       (mclock): Assume clock() is present.
+       (mclock8): Likewise.
+       * intrinsics/ctime.c (strctime): Assume strftime is present.
+       (fdate): Assume time() is present.
+       (fdate_sub): Likewise.
+       (ctime): Likewise.
+       * intrinsics/date_and_time.c: Don't provide abs macro.
+       (HAVE_NO_DATE_TIME): Remove code related to macro which is never
+       set.
+       * intrinsics/execute_command_line.c: Assume stdlib.h is present.
+       * intrinsics/exit.c: Likewise.
+       * intrinsics/extends_type_of.c: Likewise.
+       * intrinsics/gerror.c: Assume strerror() is present.
+       * intrinsics/kill.c: Assume signal.h is present.
+       * intrinsics/malloc.c: Assume stdlib.h is present.
+       * intrinsics/move_alloc.c: Likewise.
+       * intrinsics/perror.c: Assume perror() is present.
+       * intrinsics/signal.c: Assume signal.h is present.
+       * intrinsics/stat.c: Assume stdlib.h is present.
+       * intrinsics/system.c: Likewise.
+       * intrinsics/time.c: Include time.h, assume time() is present.
+       * intrinsics/time_1.h: Conditionally include sys/time.h,
+       unconditionally time.h.
+       (gf_cputime): Do division in double, fallback using clock().
+       (gf_gettime): Assume time() is present.
+       * intrinsics/umask.c: Assume stdlib.h is present.
+       * runtime/backtrace.c: Likewise.
+       * runtime/compile_options.c: Assume signal.h is present, assume
+       C89 signals are present.
+       * runtime/error.c: Assume signal.h and stdlib.h are present.
+
+2011-11-09  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR fortran/46686
+       * runtime/backtrace.c (show_backtrace): Fix incorrect comment.
+
+2011-11-09  Tobias Burnus  <burnus@net-b.de>
+
+       * configure.ac: Make more cross-compile friendly.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+
+2011-11-09  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR fortran/46686
+       * configure.ac: Don't check execinfo.h, backtrace,
+       backtrace_symbols_fd. Check execve instead of execvp. Call
+       GCC_CHECK_UNWIND_GETIPINFO.
+       * runtime/backtrace.c: Don't include unused headers, include
+       limits.h and unwind.h.
+       (CAN_FORK): Check execve instead of execvp.
+       (GLIBC_BACKTRACE): Remove.
+       (bt_header): Conform to gdb backtrace format.
+       (struct bt_state): New struct.
+       (trace_function): New function.
+       (show_backtrace): Use _Unwind_Backtrace from libgcc instead of
+       glibc backtrace functions.
+       * Makefile.in: Regenerated.
+       * aclocal.m4: Regenerated.
+       * config.h.in: Regenerated.
+       * configure: Regenerated.
+
+2011-11-09  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/50016
+       * io/inquire.c (inquire_via_unit): Flush the unit and use ssize.
+       * io/unix.c (buf_flush): Don't call _commit.
+
+2011-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR libfortran/47972
+       * runtime/error.c (gf_strerror): Silence warning.
+
+2011-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR libfortran/47972
+       * runtime/error.c (gf_strerror): Silence warning.
+
+2011-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR libfortran/47970
+       * intrinsics/c99_functions.c (round): Move higher in the file.
+
+2011-11-07  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR libfortran/45723
+       * io/open.c (new_unit): Don't check file size before attempting
+       seek.
+
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Makefile.am (AM_CPPFLAGS): Add
+       -I$(srcdir)/$(MULTISRCTOP)../libgcc, -I$(MULTIBUILDTOP)../libgcc.
+       * Makefile.in: Regenerate.
+       * acinclude.m4 (LIBGFOR_CHECK_GTHR_DEFAULT): Remove.
+       * configure.ac (LIBGFOR_CHECK_GTHR_DEFAULT): Likewise.
+       * configure: Regenerate.
+       * config.h.in: Regenerate.
+
+2011-11-01  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * io/io.h (next_available_newunit): Remove prototype.
+       * io/unit.h (next_available_newunit): Make variable static,
+       initialize it.
+       (init_units): Don't initialize next_available_newunit.
+       (get_unique_unit_number): Use atomic builtin if available.
+
+2011-10-31  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * io/inquire.c (inquire_via_unit): Check whether we're at the
+       beginning or end if the position is unspecified. If the position
+       is not one of the 3 standard ones, return unspecified.
+       * io/io.h (update_position): Remove prototype.
+       * io/transfer.c (next_record): Set the position to unspecified,
+       letting inquire figure it out more exactly when needed.
+       * io/unit.c (update_position): Remove function.
+
+2011-10-31  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * io/unix.h (struct stream): Add size function pointer.
+       (ssize): New inline function.
+       (file_length): Remove prototype.
+       * io/unix.c (raw_size): New function.
+       (raw_init): Initialize st.size pointer.
+       (buf_size): New function.
+       (buf_init): Initialize st.size pointer.
+       (open_internal): Likewise.
+       (open_internal4): Likewise.
+       (file_length): Remove function.
+       * io/file_pos.c (st_rewind): Use ssize instead of file_length.
+       * io/open.c (test_endfile): Likewise.
+       * io/transfer.c (data_transfer_init): Likewise.
+       (next_record_r): Likewise.
+       (next_record_w): Likewise.
+       * io/unit.c (update_position): Likewise.
+
+2011-10-31  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * io/file_pos.c (st_rewind): Handle regular and special files
+       identically.
+       * io/intrinsics.c (fseek_sub): Don't check whether we think the
+       file is seekable, just do what the caller says.
+       * io/transfer.c (skip_record): First try to seek, then fallback to
+       reading and throwing away what we read.
+       * io/unit.c (update_position): Don't check whether file is
+       seekable, just try to do what we're told.
+       (unit_truncate): Likewise.
+       * io/unix.c (struct unix_stream): Remove special_file flag.
+       (buf_flush): Remove code for handling unseekable files.
+       (buf_seek): Likewise.
+       (fd_to_stream): Use buffered IO only for regular files.
+       (file_length): Remove is_seekable() call.
+       (is_seekable): Remove function.
+       (is_special): Likewise.
+       * io/unix.h: Remove prototypes for is_seekable and is_special.
+
+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.
+
+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/norm2_r4.c: Regenerated.
+       * generated/norm2_r8.c: Regenerated.
+       * generated/parity_l1.c: Regenerated.
+       * generated/parity_l16.c: Regenerated.
+       * generated/parity_l2.c: Regenerated.
+       * generated/parity_l4.c: Regenerated.
+       * generated/parity_l8.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.
+
+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.
        (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. 
+       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.
        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
        * 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