X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=libgfortran%2FChangeLog;h=becb60128388bdc46a4cef2d964bb4c0d5a6de47;hp=b85a6bfcbaf0c5e19567901aff2afe4278928715;hb=bf09288ee7b5f264f28081a84fde4c6aa1ac5c82;hpb=4b20b68c523a41c9101fd67fa2486900c2c48809 diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index b85a6bfcbaf..becb6012838 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,1178 @@ +2011-11-08 Francois-Xavier Coudert + + PR libfortran/47970 + * intrinsics/c99_functions.c (round): Move higher in the file. + +2011-11-07 Janne Blomqvist + + PR libfortran/45723 + * io/open.c (new_unit): Don't check file size before attempting + seek. + +2011-11-02 Rainer Orth + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + 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 + + * 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 + + * 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 + + 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 + + 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 + + PR fortran/50109 + * io/list_read.c (eat_separator): Fix skipping over "!" lines. + +2011-07-23 Andreas Schwab + + * intrinsics/ctime.c: Include . + * intrinsics/getlog.c: Likewise. + * runtime/stop.c: Likewise. + +2011-07-23 Tobias Burnus + + PR fortran/49791 + * io/list_read.c (nml_parse_qualifier): Remove check to + enabled extended read for another case. + +2011-07-15 Daniel Carrera + + * caf/mpi.c (caf_runtime_error): Change fprintf to vfprintf. + * caf/single.c (caf_runtime_error): Ditto. + +2011-07-14 Daniel Carrera + + * 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 + + 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 + + * runtime/error.c (sys_abort): Change argument list + from "()" to "(void)". + +2011-07-09 Tobias Burnus + Daniel Carrera + + * 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 + + * 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 + + * 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 + + 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 + + PR libfortran/49296 + * io/list_read.c (read_character): Accept EOF as a separator when + reading string. + +2011-06-17 Daniel Carrera + + * 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 + + * io/unix.c (buf_seek): Return error if file is not seekable. + (buf_tell): Call buf_seek. + +2011-06-11 Janne Blomqvist + + * io/unix.c (fd_to_stream): Figure out if a fd is seekable by + trying lseek(). + +2011-06-10 Daniel Carrera + + * 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 + Rainer Orth + + * 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 + + 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 + + PR libfortran/49214 + * runtime/backtrace.c (fd_gets): Return NULL if nothing was read. + +2011-05-29 Janne Blomqvist + + 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 + + * runtime/stop.c (stop_string,error_stop_string): Minor cleanup. + +2011-05-22 Janne Blomqvist + + 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 + Uros Bizjak + + PR libfortran/48977 + * configure.host: Swap order of glibc and x86 tests. + +2011-05-20 Janne Blomqvist + + * 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 + + * runtime/stop.c (error_stop_string, error_stop_numeric): + Do not backtrace for ERROR STOP. + +2011-05-14 Janne Blomqvist + + 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 + + * 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 + + 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 + + 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 + + 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 + + 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 + + * 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 + + PR libfortran/48488 + * io/write.c (write_real, write_real_g0): Update comments. + +2011-04-29 Jerry DeLisle + Janne Blomqvist + + 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 + + * intrinsics/move_alloc.c (move_alloc): Remove useless + if-before-free test. + * io/fbuf.c (fbuf_destroy): Likewise. + * io/format.c (save_parsed_format): Likewise. + * io/open.c (already_open): Likewise. + * io/unit.c (free_internal_unit, close_unit_1): Likewise. + * io/unix.c (mem_close): Likewise. + +2011-04-19 Jerry DeLisle + + PR libgfortran/48602 + * io/write_float.def (output_float_FMT_G): Fix reversal in conditional. + Use asm volatile to mark temp variable, avoiding optimization errors. + +2011-04-17 Jerry DeLisle + + PR libgfortran/48602 + * io/write_float.def (output_float_FMT_G): Use current rounding mode + to set the rounding parameters. (output_float): Skip rounding + if value is zero. + +2011-04-16 Janne Blomqvist + + * 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. + +2011-04-15 Jerry DeLisle + + PR libgfortran/48589 + * io/write_float.def (write_infnan): Set width properly for G0. + +2011-04-15 Tobias Burnus + + PR fortran/18918 + * Makefile.am: Build and install caf/single.c as + libcaf_single.a. + * Makefile.in: Regenerate. + +2011-04-15 Janne Blomqvist + + 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 + + * 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. + * m4/cshift0.c (cshift0_'rtype_code`): Likewise. + * generated/cshift0_*.c: Regenerated. + +2011-04-12 Janne Blomqvist + + * Makefile.am: Remove _GNU_SOURCE from AM_CPPFLAGS. + * Makefile.in: Regenerated. + +2011-04-06 Tobias Burnus + + PR fortran/18918 + * caf/mpi.c (_gfortran_caf_init, _gfortran_caf_finalize): + Add global variable caf_mpi_initialized and use it for when + finalizing. + +2011-04-04 Tobias Burnus + + * 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. + +2011-03-27 Tobias Burnus + + PR fortran/18918 + * caf/libcaf.h: New - coarray communication library. + * caf/mpi.c: New. + * caf/single.c: New. + +2011-03-23 Jerry DeLisle + + PR libgfortran/48030 + * io/read.c (read_x): Re-implement using fbuf_getc. + +2011-03-21 Rainer Orth + + PR bootstrap/48135 + * configure.ac (gfortran_use_symver): Handle --disable-symvers. + * configure: Regenerate. + +2011-03-19 John David Anglin + + 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. + +2011-03-19 Francois-Xavier Coudert + + PR libfortran/47439 + * io/unix.c (tempfile): Work around poor mktemp() implementations. + +2011-03-16 Francois-Xavier Coudert + + PR libfortran/47883 + * acinclude.m4: Don't use AC_TRY_ macros. + * configure.ac: Likewise. + * configure: Regenerate. + +2011-03-12 Thomas Koenig + + 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. + +2011-03-11 Jerry DeLisle + + PR libgfortran/48047 + * io/write_float.def (write_float): Change MIN_FIELD_WIDTH to 48. + +2011-03-04 Janne Blomqvist + + PR libfortran/47802 + * intrinsics/ctime.c (strctime): Use builtins to check localtime_r + return type. + +2011-03-04 Janne Blomqvist + + PR libfortran/47802 + * intrinsics/ctime.c (strctime): Don't use return value of + localtime_r. + +2011-02-28 Jerry DeLisle + + 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. + +2011-02-27 Jerry DeLisle + + 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. + +2011-02-26 Francois-Xavier Coudert + + PR libfortran/45165 + * unix.c (fallback_access): Fix file descriptor leaks. + +2011-02-25 Francois-Xavier Coudert + + * acinclude.m4 (LIBGFOR_CHECK_FPSETMASK): Set shell variable + tested in configure.host. + * configure: Regenerate. + +2011-02-24 Janne Blomqvist + + 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 + + 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 + + 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 + + PR libgfortran/47567 + * io/write_float.def (output_float): Remove special case handling of + zero with width 1. + +2011-02-23 Janne Blomqvist + Jerry DeLisle + + 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 + Kai-Uwe Eckhardt + + PR libfortran/47830 + * intrinsics/c99_functions.c (roundl): Make C valid for + HAVE_NEXTAFTERL. + +2011-02-19 Jerry DeLisle + + 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 + + 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 + + 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 + + PR fortran/47716 + PR fortran/47648 + * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Use check from + libquadmath, which uses more features. + * configure: Regenerate. + +2011-02-14 Jakub Jelinek + + 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. + 2011-02-13 Ralf Wildenhues * Makefile.in: Regenerate.