X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=libgfortran%2FChangeLog;h=5c1144fe000a405f5483c0e704cf3c9e28f0b1b0;hb=c52565904c1cf25b87b0fd96268dc328a65d50dc;hp=98a1b3f577c16e6e10dfa34f1422365b81c00a3c;hpb=9bc69ba0e416c57d733d993c64e2e81fd459b1ce;p=pf3gnuchains%2Fgcc-fork.git diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 98a1b3f577c..5c1144fe000 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,551 @@ +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