X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=libgfortran%2FChangeLog;h=3b5abd2d814ca68330f9f9a9bb3a899295413795;hp=02df5fd0858fb4a1d13a12c332ec1c23e7509efb;hb=556d02696528fbe7eacce1db1fab1e8bb7e6b736;hpb=bd87b2831c3c4192f44414f6315e5d202eba8ab8 diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 02df5fd0858..3b5abd2d814 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,286 @@ +2005-10-01 Jakub Jelinek + + * libgfortran.h (GFC_ITOA_BUF_SIZE, GFC_XTOA_BUF_SIZE, + GFC_OTOA_BUF_SIZE, GFC_BTOA_BUF_SIZE): Define. + (gfc_itoa, xtoa): Add 2 extra arguments. + * runtime/environ.c: Include stdio.h. + (check_buffered): Use sprintf. + * runtime/error.c: Include assert.h. + (gfc_itoa, xtoa): Add 2 extra arguments, avoid using static + buffers. + (st_printf, st_sprintf): Adjust callers. + * io/write.c (otoa, btoa): Add 2 extra arguments, avoid using + static buffers. + (write_int, write_decimal): Add 2 extra arguments to conv + function pointer, adjust caller. + (write_integer): Adjust gfc_itoa caller. + + * io/unit.c (get_array_unit_len): Return 0 rather than NULL. + + * io/read.c (read_f): Remove spurious pointer dereference. + +2005-09-30 Janne Blomqvist + + PR 24112 + * io/open.c (edit_modes): Check for correct flag. + +2005-09-29 Jakub Jelinek + + * runtime/string.c (find_option): Change 3rd argument to + const st_option *. + * libgfortran.h (find_option): Likewise. + * runtime/environ.c (rounding, precision, signal_choices): Constify. + (init_choice, show_choice): Change 2nd argument to const choice *. + * io/open.c (access_opt, action_opt, blank_opt, delim_opt, form_opt, + position_opt, status_opt, pad_opt): Constify. + * io/transfer.c (advance_opt): Likewise. + * io/inquire.c (undefined): Likewise. + * io/close.c (status_opt): Likewise. + * io/format.c (posint_required, period_required, nonneg_required, + unexpected_element, unexpected_end, bad_string, bad_hollerith, + reversion_error): Likewise. + * io/unix.c (yes, no, unknown): Change from const char * + into const char []. + +2005-09-27 Steve Ellcey + + PR target/23552 + * acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE): New. + (LIBGFOR_CHECK_FOR_BROKEN_ISNAN): New. + (LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY): New. + * configure.ac (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE): Add use. + (LIBGFOR_CHECK_FOR_BROKEN_ISNAN): Add use. + (LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY): Add use. + * configure: Regenerate. + * config.h.in: Regenerate. + * libgfortan.h (isfinite): undef if broken, set if needed. + (isnan): undef if broken, set if needed. + (fpclassify): undef if broken, set if needed. + * io/write.c: Remove TODO comment about working isfinite. + * intrinsics/c99_functions.c (round): Use isfinite instead + of fpclassify. + * intrinsics/c99_functions.c (roundf): Ditto. + +2005-09-24 Janne Blomqvist + + * io.h: Changed prototypes of list_formatted_{read|write}. + * list_read.c (list_formatted_read): Renamed to + list_formatted_read_scalar and made static. + (list_formatted_read): New function. + * transfer.c: Prototype for transfer_array. Changed transfer + function pointer. + (unformatted_read): Add nelems argument, use it. + (unformatted_write): Likewise. + (formatted_transfer): Changed name to formatted_transfer_scalar. + (formatted_transfer): New function. + (transfer_integer): Add nelems argument to transfer call, move + updating item count to transfer functions. + (transfer_real): Likewise. + (transfer_logical): Likewise. + (transfer_character): Likewise. + (transfer_complex): Likewise. + (transfer_array): New function. + (data_transfer_init): Call formatted_transfer with new argument. + (iolength_transfer): New argument, use it. + * write.c (list_formatted_write): Renamed to + list_formatted_write_scalar, made static. + (list_formatted_write): New function. + +2005-09-26 David Edelsohn + + * configure.ac: Add check for __clog. + * configure: Regenerate. + +2005-09-25 Francois-Xavier Coudert + + * c99_protos.h: Add prototypes for C99 complex functions. + * libgfortran.h: Include complex.h before c99_protos.h. + * intrinsics/c99_functions.c: Define HAVE_ macros for the + fallback functions we provide. + (cabsf, cabs, cabsl, cargf, carg, cargl, cexpf, cexp, cexpl, + clogf, clog, clogl, clog10f, clog10, clog10l, cpowf, cpow, cpowl, + cqsrtf, csqrt, csqrtl, csinhf, csinh, csinhl, ccoshf, ccosh, + ccoshl, ctanhf, ctanh, ctanhl, csinf, csin, csinl, ccosf, ccos, + ccosl, ctanf, ctan, ctanl): New fallback functions. + * Makefile.am (gfor_math_trig_c, gfor_math_trig_obj, + gfor_specific_c, gfor_cmath_src, gfor_cmath_obj): Remove. + * Makefile.in: Regenerate. + * configure.ac: Remove checks for csin. Add checks for all C99 + complex functions. + * config.h.in: Regenerate. + * configure: Regenerate. + * aclocal.m4: Regenerate. + +2005-09-25 Francois-Xavier Coudert + Danny Smith + + PR libfortran/23803 + * intrinsics/getXid.c: Add getpid wrapper for MinGW. + * intrinsics/getlog.c: Add getlogin wrapper for MinGW. + * intrinsics/hostnm.c: Add gethostname wrapper for MinGW. + +2005-09-24 Francois-Xavier Coudert + + PR libfortran/23802 + * intrinsics/sleep.c: Add correct sleep macro for MinGW. + +2005-09-24 Francois-Xavier Coudert + + PR libfortran/23380 + * intrinsics/cpu_time.c (__cpu_time_1): Provide a MS Windows + version. + +2005-09-14 Jerry DeLisle + + PR target/19269 + * intrinsics/cshift0.c (cshift0): Add an extra size argument. + (cshift0_1, cshift0_2, cshift0_4, cshift0_8): Replace explicit + implementations with... + (DEFINE_CSHIFT): ...this new macro. Define character versions too. + * intrinsics/eoshift0.c (zeros): Delete. + (eoshift0): Add extra size and filler arguments. Use memset if no + bound is provided. + (eoshift0_1, eoshift0_2, eoshift0_4, eoshift0_8): Replace explicit + implementations with... + (DEFINE_EOSHIFT): ...this new macro. Define character versions too. + * intrinsics/eoshift2.c (zeros): Delete. + (eoshift2): Add extra size and filler arguments. Use memset if no + bound is provided. + (eoshift2_1, eoshift2_2, eoshift2_4, eoshift2_8): Replace explicit + implementations with... + (DEFINE_EOSHIFT): ...this new macro. Define character versions too. + * intrinsics/pack.c (pack_internal): New static function, reusing + the contents of pack and adding an extra size argument. Change + "mptr" rather than "m" when calculating the array size. + (pack): Redefine as a forwarder to pack_internal. + (pack_s_internal): New static function, reusing the contents of + pack_s and adding an extra size argument. + (pack_s): Redefine as a forwarder to pack_s_internal. + (pack_char, pack_s_char): New functions. + * intrinsics/reshape.c (reshape_internal): New static function, + reusing the contents of reshape and adding an extra size argument. + (reshape): Redefine as a forwarder to reshape_internal. + (reshape_char): New function. + * intrinsics/spread.c (spread_internal): New static function, + reusing the contents of spread and adding an extra size argument. + (spread): Redefine as a forwarder to spread_internal. + (spread_char): New function. + * intrinsics/transpose.c (transpose_internal): New static function, + reusing the contents of transpose and adding an extra size argument. + (transpose): Redefine as a forwarder to transpose_internal. + (transpose_char): New function. + * intrinsics/unpack.c (unpack_internal): New static function, reusing + the contents of unpack1 and adding extra size and fsize arguments. + (unpack1): Redefine as a forwarder to unpack_internal. + (unpack0): Call unpack_internal instead of unpack1. + (unpack1_char, unpack0_char): New functions. + * m4/cshift1.m4 (cshift1): New static function, reusing the contents + of cshift1_ and adding an extra size argument. + (cshift1_): Redefine as a forwarder to cshift1. + (cshift1__char): New function. + * m4/eoshift1.m4 (zeros): Delete. + (eoshift1): New static function, reusing the contents of + eoshift1_ and adding extra size and filler arguments. + Fix calculation of hstride. Use memset if no bound is provided. + (eoshift1_): Redefine as a forwarder to eoshift1. + (eoshift1__char): New function. + * m4/eoshift3.m4 (zeros): Delete. + (eoshift3): New static function, reusing the contents of + eoshift3_ and adding extra size and filler arguments. + Use memset if no bound is provided. + (eoshift3_): Redefine as a forwarder to eoshift3. + (eoshift3__char): New function. + * generated/cshift1_4.c, generated/cshift1_8.c, + * generated/eoshift1_4.c, generated/eoshift1_8.c, + * generated/eoshift3_4.c, generated/eoshift3_8.c: Regenerate. + +2005-09-11 Francois-Xavier Coudert + + PR libfortran/20179 + * io/unix.c (is_preconnected): Add function to test if a stream + corresponds to a preconnected unit. + * io/io.h: Add prototype for is_preconnected. + * io/transfer.c (data_transfer_init): Do not truncate + preconnected units. + +2005-09-10 Janne Blomqvist + + * io/unix.c: Remove mmap code. + +2005-09-09 Francois-Xavier Coudert + + PR libfortran/23784 + * io/close.c (st_close): Call library_end even in case of error. + +2005-09-09 Thomas Koenig + + * io/io.h: Add iomsg as last field of st_parameter. + * runtime/error.c (generate_error): If iomsg is present, copy + the message there. + +2005-09-09 Richard Sandiford + + PR fortran/12840 + * runtime/memory.c (internal_malloc_size): Return a null pointer + if the size is zero. + (internal_free): Do nothing if the pointer is null. + (internal_realloc_size, internal_realloc, internal_realloc64): New. + +2005-09-07 Francois-Xavier Coudert + + PR libfortran/23262 + * acinclude.m4 (LIBGFOR_CHECK_CRLF): New check. + * configure.ac: Use new check. + * configure.in: Regenerate. + * config.h.in: Regenerate. + * configure: Regenerate. + * io/transfer.c (next_record_w): Add case for CRLF as line + terminator. + * io/unix.c (tempfile, regular_file): Open files with + O_BINARY on systems with CRLF. + +2005-09-07 Steve Ellcey + + PR libfortran/23419 + * io/write.c (extract_int): Use memcpy to access buffer. + (extract_uint): Ditto. + (extract_real): Ditto. + +2005-09-05 Thomas Koenig + + * io/list_read.c: Adjust size of of value to 32 (to hold + kind=16 complex values). + +2005-09-04 Thomas Koenig + + PR libfortran/23321 + * io/transfer.c(data_transfer_init): Check for a too-large + record number. Return if sseek failed. + 2005-09-03 Jakub Jelinek * io/read.c (read_x): Take int argument instead of fnode * and