]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libgfortran/ChangeLog
re PR other/79046 (g++ -print-file-name=plugin uses full version number in path)
[thirdparty/gcc.git] / libgfortran / ChangeLog
index d50ef47b475e3464cf0ac922070dba81114ddee5..3335177eebe66b454cf1e76bb4fa40eb253df589 100644 (file)
-2016-11-03  Fritz Reese <fritzoreese@gmail.com>
+2017-01-17  Jakub Jelinek  <jakub@redhat.com>
 
-       * io/io.h (IOPARM_DT_DEFAULT_EXP): New flag bit.
-       * io/list_read.c (parse_real, read_real): Allow omission of exponent
-       with IOPARM_DT_DEFAULT_EXP.
-       * io/read.c (read_f): Ditto.
+       PR other/79046
+       * configure.ac: Add GCC_BASE_VER.
+       * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
+       get version from BASE-VER file.
+       * configure: Regenerated.
+       * Makefile.in: Regenerated.
 
-2016-10-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2017-01-13  Andre Vehreschild  <vehre@gcc.gnu.org>
 
-       PR libgfortran/54679
-       * io/format.c (parse_format_list): Adjust checks for FMT_L to
-       treat a zero width as an extension, giving warnings or error
-       as appropriate. Improve messages.
+       PR fortran/70696
+       * caf/single.c (_gfortran_caf_register): Allocate enough memory for
+       the event counter.
 
-2016-10-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+2017-01-07  Andre Vehreschild  <vehre@gcc.gnu.org>
 
-       PR fortran/78123
-       * io/transfer.c (formatted_transfer_scalar_read): Clear seen_eor
-       only if we have tabbed to left of current position.
+       PR fortran/78781
+       PR fortran/78935
+       * caf/single.c (send_by_ref): Fix addressing of non-allocatable scalar
+       destination components.
 
-2016-10-26  Fritz Reese  <fritzoreese@gmail.com>
-
-       * libgfortran.h (IOPARM_OPEN_HAS_READONLY, IOPARM_OPEN_HAS_SHARE,
-       IOPARM_OPEN_HAS_CC): New for READONLY, SHARE, and CARRIAGECONTROL.
-       * io/close.c (st_close): Support READONLY.
-       * io/io.h (st_parameter_open, unit_flags): Support SHARE,
-       CARRIAGECONTROL, and READONLY.
-       * io/open.c (st_open): Ditto.
-       * io/transfer.c (data_transfer_init): Ditto.
-       * io/io.h (st_parameter_dt): New member 'cc' for CARRIAGECONTROL.
-       * io/write.c (write_check_cc, write_cc): New functions for
-       CARRIAGECONTROL.
-       * io/transfer.c (next_record_cc): Ditto.
-       * io/file_pos.c (st_endfile): Support SHARE and CARRIAGECONTROL.
-       * io/io.h (st_parameter_inquire): Ditto.
-       * io/open.c (edit_modes, new_unit): Ditto.
-       * io/inquire.c (inquire_via_unit, inquire_via_filename): Ditto.
-       * io/io.h (unit_share, unit_cc, cc_fortran, IOPARM_INQUIRE_HAS_SHARE,
-       IOPARM_INQUIRE_HAS_CC): New for SHARE and CARRIAGECONTROL.
-       * io/open.c (share_opt, cc_opt): Ditto.
-       * io/read.c (read_x): Support CARRIAGECONTROL.
-       * io/transfer.c (read_sf, next_record_r, next_record_w): Ditto.
-       * io/write.c (list_formatted_write_scalar, write_a): Ditto.
-       * io/unix.h (close_share): New prototype.
-       * io/unix.c (open_share, close_share): New functions to handle SHARE.
-       * io/unix.c (open_external): Handle READONLY. Call open_share.
-       * io/close.c (st_close): Call close_share.
-
-2016-10-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/77828
-       * io/io.h (st_parameter_dt): Reorder for readability and sanity.
-       * io/transfer.c (data_transfer_init): Remove TODO and enable the
-       runtime error message, rec= specifier not allowed in STREAM
-       access.
-       * libtool-version: Bump major version of libgfortran to 4.
-
-2016-10-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libfortran/78055
-       * io/io.h (st_parameter_dt): Restore GFC_IO_INT to maintain
-       alignment.
-
-2016-10-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       * io/transfer.c (finalize_transfer): Free format data in child
-       procedures. (st_read_done, st_write_done): Don't free format
-       hash table.
-
-2016-10-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/48298
-       * io/io.h: Move size_used from dtp to unit structure. Add bool
-       has_size to unit structure.
-       * io/read.c (read_x): Use has_size and size_used.
-       * io/transfer.c (read_sf_internal,read_sf,read_block_form,
-       read_block_form4): Likewise.
-       (data_transfer_init): If parent, initialize the size variables.
-       (finalize_transfer): Set the size variable using size_used in
-       gfc_unit. (write_block): Delete bogus/dead code.
-
-2016-10-16  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       PR libfortran/48587
-       * io/transfer.c (data_transfer_init): Improve error message,
-       remove redundant check.
-
-2016-10-15  Janne Blomqvist  <jb@gcc.gnu.org>
-
-        PR libfortran/48587
-        * io/io.h (get_unique_unit_number): Remove prototype.
-        (newunit_alloc): New prototype.
-        * io/open.c (st_open): Call newunit_alloc.
-        * io/unit.c (newunits,newunit_size,newunit_lwi): New static
-        variables.
-        (GFC_FIRST_NEWUNIT): Rename to NEWUNIT_START.
-        (next_available_newunit): Remove variable.
-        (get_unit): Call newunit_alloc, don't try to create negative
-        external unit.
-        (close_unit_1): Call newunit_free.
-        (close_units): Free newunits array.
-        (get_unique_number): Remove function.
-        (newunit_alloc): New function.
-        (newunit_free): New function.
-        * io/transfer.c (data_transfer_init): Check for invalid unit
-        number.
-
-2016-10-09  Janne Blomqvist  <jb@gcc.gnu.org>
-
-        PR libfortran/67585
-        * io/io.h: TEMP_FAILURE_RETRY: Define macro if not found.
-        * io/unix.c (raw_read): Handle EINTR.
-        (raw_write): Check for return value -1.
-        (raw_seek): Handle EINTR.
-        (raw_tell): Likewise.
-        (raw_size): Likewise.
-        (raw_truncate): Likewise.
-        (raw_close): Likewise.
-        (buf_flush): Call raw_seek instead of lseek.
-        (buf_read): Likewise.
-        (buf_write): Likewise.
-        (fd_to_stream): Handle EINTR.
-        (tempfile_open): Likewise.
-        (regular_file2): Likewise.
-        (compare_file_filename): Likewise.
-        (find_file): Likewise.
-        (inquire_sequential): Likewise.
-        (inquire_direct): Likewise.
-        (inquire_formatted): Likewise.
-
-2016-10-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/77868
-       * io/inquire.c (inquire_via_unit): NULL guard the check for
-       internal unit passed into child IO procedure.
-
-2016-10-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       * io/inquire.c (inquire_via_unit): Add check for internal unit
-       passed into child IO procedure.
-
-2016-10-01  Andre Vehreschild  <vehre@gcc.gnu.org>
-
-       PR fortran/77663
-       * caf/single.c (caf_internal_error): Fix not terminating va-list.
-       (_gfortran_caf_register): Free memory also when other allocs failed.
-       (_gfortran_caf_get_by_ref): Fixed style.
-       (send_by_ref): Token is now stored at the correct position preventing
-       inaccessible tokens, memory loss and possibly crashes.
-
-2016-09-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/77707
-       io/transfer.c (next_record): Flush before calculating next_record.
-       Correctly calculate.
-
-2016-09-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/48298
-       * io/inquire.c (inquire_via_unit): Adjust error check for the
-       two possible internal unit KINDs.
-       * io/io.h: Adjust defines for is_internal_unit and
-       is_char4_unit. (gfc_unit): Add internal unit data to structure.
-       (get_internal_unit): Change declaration to set_internal_unit.
-       (free_internal_unit): Change name to stash_internal_unit_number.
-       (get_unique_unit_number): Adjust parameter argument.
-       Define IOPARM_DT_HAS_UDTIO. (gfc_saved_unit): New structure.
-       * io/list_read.c (next_char_internal): Use is_char4_unit.
-       * io/open.c (st_open): Adjust call to get_unique_unit_number.
-       * io/transfer.c (write_block): Use is_char4_unit.
-       (data_transfer_init): Update check for unit numbers.
-       (st_read_done): Free the various allocated memories used for the
-       internal units and stash the negative unit number and pointer to unit
-       structure to allow reuse. (st_write_done): Likewise stash the freed
-       unit.
-       * io/unit.c: Create a fixed size buffer of 16 gfc_saved_unit's to use
-       as a stack to save newunit unit numbers and unit structure for reuse.
-       (get_external_unit): Change name to get_gfc_unit to better
-       reflect what it does. (find_unit): Change call to get_gfc_unit.
-       (find_or_create_unit): Likewise. (get_internal_unit): Change
-       name to set_internal_unit. Move internal unit from the dtp
-       structure to the gfc_unit structure so that it can be passed to
-       child I/O statements through the UNIT.
-       (free_internal_unit): Change name to stash_internal_unit_number.
-       Push the common.unit number onto the newunit stack, saving it
-       for possible reuse later. (get_unit): Set the internal unit
-       KIND. Use get_unique_unit_number to get a negative unit number
-       for the internal unit. Use get_gfc_unit to get the unit structure
-       and use set_internal_unit to initialize it.
-       (init_units): Initialize the newunit stack.
-       (get_unique_unit_number): Check the stack for an available unit
-       number and use it. If none there get the next most negative
-       number. (close_units): Free any unit structures pointed to from the save
-       stack.
-
-2016-09-21  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * intrinsics/random.c (getosrandom): Use rand_s() on
-       MinGW-w64. Fix bounds overflow in fallback code.
-
-2016-09-19  Andre Vehreschild  <vehre@gcc.gnu.org>
-
-       * caf/libcaf.h: Add caf_reference_type.
-       * caf/mpi.c: Adapted signature of caf_register().
-       * caf/single.c (struct caf_single_token): Added to keep the pointer
-       to the memory registered and array descriptor.
-       (caf_internal_error): Added convenience interface.
-       (_gfortran_caf_register): Adapted to work with caf_single_token and
-       return memory in the array descriptor.
-       (_gfortran_caf_deregister): Same.
-       (assign_char1_from_char4): Fixed style.
-       (convert_type): Fixed incorrect conversion.
-       (_gfortran_caf_get): Adapted to work with caf_single_token.
-       (_gfortran_caf_send): Same.
-       (_gfortran_caf_sendget): Same.
-       (copy_data): Added to stop repeating it in all _by_ref functions.
-       (get_for_ref): Recursive getting of coarray data using a chain of
-       references.
-       (_gfortran_caf_get_by_ref): Driver for computing the memory needed for
-       the get and checking properties of the operation.
-       (send_by_ref): Same as get_for_ref but for sending data.
-       (_gfortran_caf_send_by_ref): Same like caf_get_by_ref but for sending.
-       (_gfortran_caf_sendget_by_ref): Uses get_by_ref and send_by_ref to
-       implement sendget for reference chains.
-       (_gfortran_caf_atomic_define): Adapted to work with caf_single_token.
-       (_gfortran_caf_atomic_ref): Likewise.
-       (_gfortran_caf_atomic_cas): Likewise.
-       (_gfortran_caf_atomic_op): Likewise.
-       (_gfortran_caf_event_post): Likewise.
-       (_gfortran_caf_event_wait): Likewise.
-       (_gfortran_caf_event_query): Likewise.
-       (_gfortran_caf_lock): Likewise.
-       (_gfortran_caf_unlock): Likewise.
-
-2016-09-09  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       PR fortran/77507
-       * ieee/ieee_arithmetic.F90 (IEEE_VALUE_4,IEEE_VALUE_8,IEEE_VALULE_10,
-       IEEE_VALUE_16):  Use correct keyword.
-
-2016-09-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/77393
-       * io/write_float.def (build_float_string): Recognize when the
-       result will not fit in the user provided, star fill, and exit
-       early.
-
-2016-08-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/77393
-       * io/write.c (kind_from_size): New function to calculate required buffer
-       size based on kind type. (select_buffer, select_string): Use new
-       function. (write_float_0, write_real, write_real_g0, write_complex):
-       Adjust calls to pass parameters needed by new function.
-
-2016-08-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-       Paul Thomas  <pault@gcc.gnu.org>
-
-       PR libgfortran/48298
-       * gfortran.map : Flag _st_set_nml_dtio_var and
-       _gfortran_transfer_derived.
-       * io/format.c (format_lex): Detect DTIO formatting.
-       (parse_format_list): Parse the DTIO format.
-       (next_format): Include FMT_DT.
-       * io/format.h : Likewise. Add structure 'udf' to structure
-       'fnode' to carry the IOTYPE string and the 'vlist'.
-       * io/io.h : Add prototypes for the two types of DTIO subroutine
-       and a typedef for gfc_class. Also, add to 'namelist_type'
-       fields for the pointer to the DTIO procedure and the vtable.
-       Add fields to struct st_parameter_dt for pointers to the two
-       types of DTIO subroutine. Add to gfc_unit DTIO specific fields.
-       (internal_proto): Add prototype for 'read_user_defined' and
-       'write_user_defined'.
-       * io/list_read.c (check_buffers): Use the 'current_unit' field.
-       (unget_char): Likewise.
-       (eat_spaces): Likewise.
-       (list_formatted_read_scalar): For case BT_CLASS, call the DTIO
-       procedure.
-       (nml_get_obj_data): Likewise when DTIO procedure is present,.
-       * io/transfer.c : Export prototypes for 'transfer_derived' and
-       'transfer_derived_write'.
-       (unformatted_read): For case BT_CLASS, call the DTIO procedure.
-       (unformatted_write): Likewise.
-       (formatted_transfer_scalar_read): Likewise.
-       (formatted_transfer_scalar_write: Likewise.
-       (transfer_derived): New function.
-       (data_transfer_init): Set last_char if no child_dtio.
-       (finalize_transfer): Return if child_dtio set.
-       (st_write_done): Add condition for child_dtio not set.
-       Add extra arguments for st_set_nml_var prototype.
-       (set_nml_var): New function that contains the contents of the
-       old version of st_set_nml_var. Also sets the 'dtio_sub' and
-       'vtable' fields of the 'nml' structure.
-       (st_set_nml_var): Now just calls set_nml_var with 'dtio_sub'
-       and 'vtable' NULL.
-       (st_set_nml_dtio_var): New function that calls set_nml_var.
-       * io/unit.c (get_external_unit): If the found unit child_dtio
-       is non zero, don't do any mutex locking/unlocking.  Just
-       return the unit.
-       * io/unix.c (tempfile_open): Revert to C style comment.
-       * io/write.c (list_formatted_write_scalar): Do the DTIO call.
-       (nml_write_obj): Add BT_CLASS and do the DTIO call.
-
-2016-08-29  Nathan Sidwell  <nathan@acm.org>
-
-       * configure.ac (nvptx-*): Hardwire newlib.
-       * configure: Rebuilt.
-
-2016-08-19  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * intrinsics/random.c (xor_keys): New array with "secret" keys.
-       (scramble_seed): XOR given seed with xor_keys array rather than
-       shuffling bytes.
-       (unscramble_seed): Remove function.
-       (random_seed_i4): Use new scramble_seed.
-       (random_seed_i8): Likewise.
-
-2016-08-19  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * intrinsics/random.c (master_init): New variable.
-       (init_rand_state): Move below getosrandom (), maybe initialize
-       master_state.
-       (random_seed_i4): If called with no arguments, set master_init to
-       false, and reinitialize. If called with PUT=, set master_init to
-       true.
-       (random_seed_i8): Likewise.
-
-2016-08-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * intrinsics/random.c: Include <stdlib.h>.
-
-2016-08-11  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * intrinsics/random.c: Replace KISS with xorshift1024* using
-       per-thread state.
-       * runtime/main.c (init): Don't call random_seed_i4.
-
-2016-07-22  Andre Vehreschild  <vehre@gcc.gnu.org>
-
-       * caf/libcaf.h: Add parameter stat to caf_get() and
-       caf_send()'s function prototypes.
-       * caf/single.c (_gfortran_caf_get): Implement reporting
-       error using stat instead of abort().
-       (_gfortran_caf_send): Same.
-       (_gfortran_caf_sendget): Use NULL for stat when calling
-       caf_send().
-
-2016-06-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/48852
-       * io/write.c: Cleaned up whitespace.
-       (write_d, write_e, write_f, write_es, write_en): Use new helper
-       function write_float_0.
-       (write_float_0): New helper function.
-       (get_precision, select_buffer, select_string, write_float_string): New
-       helper functions used in remaining float writing functions.
-       Helper function write_float_string now contains code for writing
-       to kind=4 character internal units.
-       (write_real): Modified to establish working buffers at this level
-       and to  use new helper functions.
-       (write_real_g0): Likewise modified.
-       (write_complex): Likewise modified. Gets both float strings before
-       output so that final lengths can be determined which allows right
-       justifying the complex number with no intervening spaces.
-       * io/write_float.def (build_float_string): Renamed from previosly
-       output_float, modified to use buffers passed in from higher functions,
-       builds a null terminated string of the floating point value. Character
-       kind=4 code eliminated.
-       (write_infnan): Likewise modified to use incoming buffers and eliminate
-       kind=4 related code.
-       (OUTPUT_FLOAT_FMT_G): Deleted, functionality moved into FORMAT_FLOAT.
-       (FORMAT_FLOAT): Renamed macro from WRITE_FLOAT. Use build_float_string.
-       (get_float_string): Renamed from write_float, uses FORMAT_FLOAT macro.
-       Buffer allocation removed, now at higher level.
-
-2016-05-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/71123
-       * io/list_read (eat_spaces): Eat '\r' as part of spaces.
-
-2016-04-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/70684
-       * io/list_read (check_buffers): Add '\r' to check for end of line.
-
-2016-03-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-           Dominique d'Humieres  <dominiq@lps.ens.fr>
-
-       PR libgfortran/70235
-       * io/write_float.def: Fix PF format for negative values of the scale
-       factor.
-
-2016-03-28  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
-
-       * caf/libcaf.h: caf_stop_numeric and caf_stop_str prototype.
-       * caf/single.c: _gfortran_caf_stop_numeric and
-       _gfortran_caf_stop_str implementation.
-
-2016-02-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/69456
-       * io/list_read.c (read_real): If digit is missing from exponent issue
-       an error. (parse_real): Likewise and adjusted error message to clarify
-       it is part of a complex number.
-       (nml_read_obj): Bump item count and add comment that this is used to
-       identify which item in a namelist read has a problem.
-
-2016-02-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/69651
-       * io/list_read.c (push_char4): Fix the pointer usage for xrealloc.
-
-2016-02-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/69651
-       * io/list_read.c: Entire file trailing spaces removed.
-       (CASE_SEPARATORS): Remove '!'.
-       (is_separator): Add namelist mode as condition with '!'.
-       (push_char): Remove un-needed memset. (push_char4): Likewise and remove
-       'new' pointer. (eat_separator): Remove un-needed use of notify_std.
-       (read_logical): If '!' bang encountered when not in namelist mode got
-       bad_logical to give an error. (read_integer): Likewise reject '!'.
-       (read_character): Remove condition testing c = '!' which is now inside
-       the is_separator macro. (parse_real): Reject '!' unless in namelist mode.
-       (read_complex): Reject '!' unless in namelist mode. (read_real): Likewise
-       reject '!'.
-
-2016-02-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR libgfortran/69668
-       * io/list_read.c (read_character): Remove code related to DELIM_NONE.
-
-2016-01-23  John David Anglin  <danglin@gcc.gnu.org>
-
-       PR libfortran/68744
-       * runtime/backtrace.c: Include gthr.h.
-       (show_backtrace): Use __gthread_active_p() to determine whether threads
-       are active.  Return if lbstate is NULL.
-
-2016-01-15  Jakub Jelinek  <jakub@redhat.com>
-
-       * intrinsics/execute_command_line.c (set_cmdstat): Use "%s", msg
-       instead of msg to avoid -Wformat-security warning.
-
-2016-01-04  Jakub Jelinek  <jakub@redhat.com>
+2017-01-01  Jakub Jelinek  <jakub@redhat.com>
 
        Update copyright years.
 \f
-Copyright (C) 2016 Free Software Foundation, Inc.
+Copyright (C) 2017 Free Software Foundation, Inc.
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright