blob: 01aa551b9146ace3dfe80e9bdcb8829fd3038736 [file] [log] [blame]
2020-03-12 Release Manager
* GCC 9.3.0 released.
2020-02-22 Thomas Koenig <>
Backport from trunk
PR fortran/93599
* io/async.c (destroy_adv_cond): Do not destroy lock.
(async_io): Make sure au->lock is locked for finishing of thread.
Do not lock/unlock around signalling emptysignal. Unlock au->lock
before return.
(init_adv_cond): Do not initialize lock.
(enqueue_transfer): Unlock after signal.
(enqueue_done_id): Likewise.
(enqueue_done): Likewise.
(enqueue_close): Likewise.
(enqueue_data_transfer): Likewise.
(async_wait_id): Do not lock/unlock around signalling au->work.
(async_wait): Unlock after signal.
* io/async.h (SIGNAL): Add comment about needed au->lock.
Remove locking/unlocking of advcond->lock.
(WAIT_SIGNAL_MUTEX): Add comment. Remove locking/unlocking of
advcond->lock. Unlock mutex only at the end. Loop on
__ghread_cond_wait returning zero.
(REVOKE_SIGNAL): Add comment. Remove locking/unlocking of
(struct adv_cond): Remove mutex from struct.
2020-01-21 Jerry DeLisle <>
Backport from mainline
PR libfortran/93234
* io/unit.c (set_internal_unit): Set round and sign flags
2019-11-26 Jerry DeLisle <>
Backport from mainline
PR fortran/92100
io/transfer.c (data_transfer_init_worker): Use fbuf_reset
instead of fbuf_flush before the seek. Note that fbuf_reset
calls fbuf_flush and adjusts fbuf pointers.
2019-11-25 Thomas Koenig <>
Harald Anlauf <>
Backport from trunk
PR fortran/92569
* io/transfer.c (transfer_array_inner): If position is
at AFTER_ENDFILE in current unit, return from data loop.
2019-11-13 Tobias Burnus <>
Backport from mainline
2019-11-13 Tobias Burnus <>
PR fortran/92470
* runtime/ISO_Fortran_binding.c (CFI_establish): Set lower_bound to 0
also for CFI_attribute_other.
2019-11-12 Tobias Burnus <>
PR fortran/92470
* runtime/ISO_Fortran_binding.c (CFI_address): Handle non-zero
lower_bound; update error message.
(CFI_allocate): Fix comment typo.
(CFI_establish): Fix identation, fix typos, don't check values of 'dv'
2019-08-13 Janne Blomqvist <>
Partial backport from trunk
PR fortran/91414
* intrinsics/random.c (lcg_parkmiller): Replace with splitmix64.
(splitmix64): New function.
(getosrandom): Fix return value, simplify.
(init_rand_state): Use getosrandom only to get 8 bytes, splitmix64
to fill rest of state.
2019-08-12 Release Manager
* GCC 9.2.0 released.
2019-07-23 Thomas König <>
Backport from trunk
PR libfortran/91030
* io/unix.c (BUFFER_SIZE): Delete.
(unix_stream): Add buffer_size.
(buf_read): Use s->buffer_size instead of BUFFER_SIZE.
(buf_write): Likewise.
(buf_init): Add argument unformatted. Handle block sizes
for unformatted vs. formatted, using defaults if provided.
(fd_to_stream): Add argument unformatted in call to buf_init.
* libgfortran.h (options_t): Add buffer_size_formatted and
* runtime/environ.c (variable_table): Add
2019-05-20 Janne Blomqvist <>
Backport from trunk
PR libfortran/90038
* intrinsics/execute_command_line (sigchld_handler): New function.
(execute_command_line): Install handler for SIGCHLD.
* Check for presence of sigaction and waitpid.
* Regenerated.
* configure: Regenerated.
2019-05-20 Janne Blomqvist <>
Backport from trunk
PR libfortran/90038
* (AC_CHECK_FUNCS_ONCE): Check for posix_spawn.
* intrinsics/execute_command_line (execute_command_line): Use
* Regenerated.
* Regenerated.
* configure: Regenerated.
2019-05-17 Jakub Jelinek <>
PR fortran/54613
* (GFORTRAN_9.2): Export _gfortran_{,m,s}findloc{0,1}_r10.
* (i_findloc0_c): Add $(srcdir)/generated/findloc0_r10.c.
(i_findloc1_c): Add $(srcdir)/generated/findloc1_r10.c.
* Regenerated.
* generated/findloc0_r10.c: Generated.
* generated/findloc1_r10.c: Generated.
PR fortran/54613
* (GFORTRAN_9.2): New symbol version, export
_gfortran_{,m,s}findloc0_i2 in it.
2019-05-03 Release Manager
* GCC 9.1.0 released.
2019-05-02 Jakub Jelinek <>
* (gfor_cdir): Remove $(MULTISUBDIR).
* Regenerated.
2019-04-14 Paul Thomas <>
PR fortran/89843
* runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Only
return immediately if the source pointer is null. Bring
forward the extraction of the gfc type. Extract the kind so
that the element size can be correctly computed for sections
and components of derived type arrays. Remove the free of the
CFI descriptor since this is now done in trans-expr.c.
(gfc_desc_to_cfi_desc): Only allocate the CFI descriptor if it
is not null.
(CFI_section): Normalise the difference between the upper and
lower bounds by the stride to correctly calculate the extents
of the section.
PR fortran/89846
* runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Use
the stride measure for the gfc span if it is not a multiple
of the element length. Otherwise use the element length.
PR fortran/90022
* runtime/ISO_Fortran_binding.c (CFI_is_contiguous) : Return
1 for true and 0 otherwise to comply with the standard. Correct
the contiguity check for rank 3 and greater by using the stride
measure of the lower dimension rather than the element length.
2019-03-25 John David Anglin <>
PR libgfortran/79540
* io/write_float.def (build_float_string): Don't copy digits when
ndigits is negative.
2019-03-05 Jakub Jelinek <>
PR libgfortran/89593
* caf/single.c (_gfortran_caf_sendget_by_ref): Cast &temp to
gfc_descriptor_t * to avoid warning.
2019-02-26 Uroš Bizjak <>
* io/transfer.c (transfer_array_inner): Do not
cast charlen to index_type.
2019-02-25 Dominique d'Humieres <>
PR libfortran/89274
* io/write.c (write_integer): Add width for INTEGER(16).
2019-02-23 Paul Thomas <>
PR fortran/89385
PR fortran/89366
* runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc) : In the
interchange between character and derived, the character type
was being set incorrectly.
(gfc_desc_to_cfi_desc) : Eliminate the interchange of types in
this function. Do not add the kind and length information to
the type field of structures. Lbounds were incorrectly being
set to zero for allocatable and pointer descriptors. Should
have been non-pointer, non-allocatables that received this
2019-01-30 Uroš Bizjak <>
PR libfortran/88678
2016-11-16 Szabolcs Nagy <>
PR libfortran/78314
* config/fpu-glibc.h (support_fpu_trap): Use feenableexcept.
2019-01-30 Uroš Bizjak <>
PR libfortran/88678
* config/fpu-glibc.h (set_fpu_trap_exceptions): Clear stalled
exception flags before changing trap mode. Optimize to call
feenableexcept and fedisableexcept only once.
2019-01-28 Sebastian Huber <>
* io/async.c (init_adv_cond): Use __GTHREAD_COND_INIT_FUNCTION().
2019-01-27 Jerry DeLisle <>
PR libfortran/89020
* io/close.c (st_close): Simplify text of error message to not
presume a specific cause of failure to remove file.
2019-01-26 Jerry DeLisle <>
PR libfortran/89020
* io/close.c (st_close): Fix typo.
2019-01-26 Jerry DeLisle <>
PR libfortran/89020
* io/close.c (st_close): Generate error if calls to 'remove' return
an error.
2019-01-17 Andrew Stubbs <>
Kwok Cheung Yeung <>
Julian Brown <>
Tom de Vries <>
* Use minimal mode for amdgcn.
* configure: Regenerate.
2019-01-13 Jerry DeLisle <>
PR libfortran/88776
* io/open.c (newunit): Free format buffer if the unit specified is for
stdin, stdout, or stderr.
2019-01-12 Jerry DeLisle <>
PR libfortran/88776
* io/list_read.c (namelist_read): Use nml_err_ret path on read error
not based on stdin_unit.
2019-01-12 Paul Thomas <>
* ISO_Fortran_binding.h : New file.
* : Include ISO_Fortran_binding.c in the list of
files to compile.
* : Regenerated.
* : Add _gfortran_cfi_desc_to_gfc_desc,
_gfortran_gfc_desc_to_cfi_desc and the CFI API functions.
* runtime/ISO_Fortran_binding.c : New file containing the new
functions added to the map.
2019-01-12 Jakub Jelinek <>
PR libfortran/88807
* m4/minloc0.m4: Reindent to avoid -Wmisleading-indentation warnings.
* generated/minloc0_4_i1.c: Regenerated.
* generated/minloc0_4_i2.c: Regenerated.
* generated/minloc0_4_i4.c: Regenerated.
* generated/minloc0_4_i8.c: Regenerated.
* generated/minloc0_4_i16.c: Regenerated.
* generated/minloc0_4_r4.c: Regenerated.
* generated/minloc0_4_r8.c: Regenerated.
* generated/minloc0_4_r10.c: Regenerated.
* generated/minloc0_4_r16.c: Regenerated.
* generated/minloc0_8_i1.c: Regenerated.
* generated/minloc0_8_i2.c: Regenerated.
* generated/minloc0_8_i4.c: Regenerated.
* generated/minloc0_8_i8.c: Regenerated.
* generated/minloc0_8_i16.c: Regenerated.
* generated/minloc0_8_r4.c: Regenerated.
* generated/minloc0_8_r8.c: Regenerated.
* generated/minloc0_8_r10.c: Regenerated.
* generated/minloc0_8_r16.c: Regenerated.
* generated/minloc0_16_i1.c: Regenerated.
* generated/minloc0_16_i2.c: Regenerated.
* generated/minloc0_16_i4.c: Regenerated.
* generated/minloc0_16_i8.c: Regenerated.
* generated/minloc0_16_i16.c: Regenerated.
* generated/minloc0_16_r4.c: Regenerated.
* generated/minloc0_16_r8.c: Regenerated.
* generated/minloc0_16_r10.c: Regenerated.
* generated/minloc0_16_r16.c: Regenerated.
2019-01-09 Sandra Loosemore <>
PR other/16615
* caf/single.c: Mechanically replace "can not" with "cannot".
* io/unit.c: Likewise.
2019-01-07 Thomas Koenig <>
Harald Anlauf <>
Tobias Burnus <>
PR fortran/45424
* Add intrinsics/is_contiguous.c.
* Regenerated.
* Add _gfortran_is_contiguous0.
* intrinsics/is_contiguous.c: New file.
* libgfortran.h: Add prototype for is_contiguous0.
2019-01-07 Janne Blomqvist <>
* (GFORTRAN_9): Make GFORTRAN_9 node depend on
2019-01-01 Jakub Jelinek <>
Update copyright years.
Copyright (C) 2019 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.