-2019-11-23 Thomas Koenig <tkoenig@gcc.gnu.org>
- Harald Anlauf <anlauf@gmx.de>
+2020-06-01 Uroš Bizjak <ubizjak@gmail.com>
- PR fortran/92569
- * io/transfer.c (transfer_array_inner): If position is
- at AFTER_ENDFILE in current unit, return from data loop.
+ PR libfortran/95418
+ * config/fpu-387.h (struct fenv): Add __attribute__ ((gcc_struct)).
-2019-11-18 Maciej W. Rozycki <macro@wdc.com>
+2020-05-29 H.J. Lu <hjl.tools@gmail.com>
- * Makefile.in: Regenerate.
-
-2019-11-13 Tobias Burnus <tobias@codesourcery.com>
-
- 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 <tobias@codesourcery.com>
-
- 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'
- argument.
-
-2019-11-11 José Rui Faustino de Sousa <jrfsousa@gmail.com>
-
- PR fortran/92142
- * runtime/ISO_Fortran_binding.c (CFI_setpointer): Don't
- override descriptor attribute; with -fcheck, check that
- it is a pointer.
-
-2019-11-06 Jerry DeLisle <jvdelisle@gcc.ngu.org>
-
- PR fortran/90374
- io/format.c (parse_format_list): Relax format checking for
- zero width as default and when -std=f2018.
- io/format.h (format_token): Move definition to io.h.
- io/io.h (format_token): Add definition here to allow access to
- this definition at higher levels. Rename the declaration of
- write_real_g0 to write_real_w0 and add a new format_token
- argument, allowing higher level functions to pass in the
- token for handling of g0 vs the other zero width specifiers.
- io/transfer.c (formatted_transfer_scalar_write): Add checks for
- zero width and call write_real_w0 to handle it.
- io/write.c (write_real_g0): Remove.
- (write_real_w0): Add new, same as previous write_real_g0 except
- check format token to handle the g0 case.
-
-2019-10-31 Tobias Burnus <tobias@codesourcery.com>
-
- PR fortran/92284.
- * runtime/ISO_Fortran_binding.c (gfc_desc_to_cfi_desc):
-
-2019-10-19 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/91926
- * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Revert
- the change made on 2019-10-05.
-
-2019-10-08 Thomas Schwinge <thomas@codesourcery.com>
-
- PR fortran/68401
- * runtime/minimal.c (os_error_at): New function.
- * runtime/minimal.c: Revise.
-
-2019-10-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/91926
- * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Do not
- modify the bounds and offset for CFI_other.
-
-2019-10-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/91593
- * io/read.c (read_decimal): Cast constant to size_t to turn off
- a bogus warning.
- * io/write.c (btoa_big): Use memset in lieu of setting the null
- byte in a string buffer to turn off a bogus warning.
-
-2019-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/91593
- * io/io.h: Add gcc_unreachable().
- * io/transfer.c (file_mode, current_mode,
- formatted_transfer_scalar_read, formatted_transfer_scalar_write,
- pre_position, next_record_r, next_record_w): Add and use
- FORMATTED_UNSPECIFIED to enumeration.
-
-2019-09-27 Maciej W. Rozycki <macro@wdc.com>
-
- * configure: Regenerate.
-
-2019-09-05 Janne Blomqvist <jb@gcc.gnu.org>
-
- * intrinsics/random.c (master_init): Replace with
- master_state.init.
- (njumps): Remove variable.
- (master_state): Make instance of struct prng_state.
- (init_rand_state): When jumping, update the master_state once
- instead of keeping track of how many jumps need to be done.
- (SZU64): Modify to handle new master_state.
- (SZ): Likewise.
- (random_seed_i4): Likewise.
- (random_seed_i8): Likewise.
-
-2019-08-17 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/68401
- * gfortran.map: Add GFORTRAN_10 node, add _gfortran_os_error_at
- symbol.
- * libgfortran.h (os_error_at): New prototype.
- * runtime/error.c (os_error_at): New function.
-
-2019-08-13 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/91414
- * intrinsics/random.c (prng_state): Update state struct.
- (master_state): Update to match new size.
- (get_rand_state): Update to match new PRNG.
- (rotl): New function.
- (xorshift1024star): Replace with prng_next.
- (prng_next): New function.
- (jump): Update for new PRNG.
- (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.
- (random_r4): Update to new function and struct names.
- (random_r8): Likewise.
- (random_r10): Likewise.
- (random_r16): Likewise.
- (arandom_r4): Liekwise.
- (arandom_r8): Likewise.
- (arandom_r10): Likwewise.
- (arandom_r16): Likewise.
- (xor_keys): Reduce size to match new PRNG.
- (random_seed_i4): Update to new function and struct names, remove
- special handling of variable p used in previous PRNG.
- (random_seed_i8): Likewise.
-
-2019-08-07 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/53796
- * io/inquire.c (inquire_via_filename): Set recl to -1 for
- unconnected units.
-
-2019-07-21 Thomas König <tkoenig@gcc.gnu.org>
-
- PR libfortran/91030
- * io/unix.c (BUFFER_SIZE): Delete.
- (BUFFER_FORMATTED_SIZE_DEFAULT): New variable.
- (BUFFER_UNFORMATTED_SIZE_DEFAULT): New variable.
- (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
- buffer_size_unformatted.
- * runtime/environ.c (variable_table): Add
- GFORTRAN_UNFORMATTED_BUFFER_SIZE and
- GFORTRAN_FORMATTED_BUFFER_SIZE.
-
-2019-06-25 Kwok Cheung Yeung <kcy@codesourcery.com>
- Andrew Stubbs <ams@codesourcery.com>
-
- * configure: Regenerate.
- * configure.ac (LIBGFOR_MINIMAL): Do not use on AMD GCN.
-
-2019-06-14 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/65921
- * runtime/memory.c (SIZE_MAX):Remove macro definition.
- (xmallocarray): Use __builtin_mul_overflow.
-
-2019-05-22 Jeff Law <law@redhat.com>
-
- PR fortran/89100
- * io/format.c (parse_format_list): set default width when the
- IOPARM_DT_DEC_EXT flag is set for i, f and g.
- * io/io.h: add default_width_for_integer, default_width_for_float
- and default_precision_for_float.
- * io/write.c (write_boz): extra parameter giving length of data
- corresponding to the type's kind.
- (write_b): pass data length as extra parameter in calls to
- write_boz.
- (write_o): pass data length as extra parameter in calls to
- write_boz.
- (write_z): pass data length as extra parameter in calls to
- write_boz.
- (size_from_kind): also set size is default width is set.
- * io/write_float.def (build_float_string): new paramter inserted
- before result parameter. If default width use values passed
- instead of the values in fnode.
- (FORMAT_FLOAT): macro modified to check for default width and
- calls to build_float_string to pass in default width.
- (get_float_string): set width and precision to defaults when
- needed.
-
-2019-05-19 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/90038
- * intrinsics/execute_command_line (sigchld_handler): New function.
- (execute_command_line): Install handler for SIGCHLD.
- * configure.ac: Check for presence of sigaction and waitpid.
- * config.h.in: Regenerated.
- * configure: Regenerated.
-
-2019-05-17 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/90038
- * configure.ac (AC_CHECK_FUNCS_ONCE): Check for posix_spawn.
- * intrinsics/execute_command_line (execute_command_line): Use
- posix_spawn.
- * Makefile.in: Regenerated.
- * config.h.in: Regenerated.
+ PR bootstrap/95413
* configure: Regenerated.
-2019-05-17 Jakub Jelinek <jakub@redhat.com>
+2020-05-29 Jakub Jelinek <jakub@redhat.com>
- PR fortran/54613
- * gfortran.map (GFORTRAN_9.2): Export _gfortran_{,m,s}findloc{0,1}_r10.
- * Makefile.am (i_findloc0_c): Add $(srcdir)/generated/findloc0_r10.c.
- (i_findloc1_c): Add $(srcdir)/generated/findloc1_r10.c.
+ PR libfortran/95390
+ * Makefile.am (i_findloc0_c): Add findloc0_i10.c.
+ (i_findloc1_c): Add findloc1_i10.c.
+ * gfortran.map (GFORTRAN_10.2): New symbol version, export
+ _gfortran_{,m,s}findloc{0,1}_c10 symbols.
* Makefile.in: Regenerated.
- * generated/findloc0_r10.c: Generated.
- * generated/findloc1_r10.c: Generated.
-
- PR fortran/54613
- * gfortran.map (GFORTRAN_9.2): New symbol version, export
- _gfortran_{,m,s}findloc0_i2 in it.
+ * generated/findloc0_c10.c: Generated.
+ * generated/findloc1_c10.c: Generated.
-2019-05-15 Janne Blomqvist <jb@gcc.gnu.org>
+2020-05-28 Harald Anlauf <anlauf@gmx.de>
- PR fortran/90461
- * io/open.c (new_unit): Don't check if the file is already open
- for F2018.
+ PR libfortran/95104
+ * io/unit.c (unlock_unit): Guard by check for NULL pointer.
-2019-05-02 Jakub Jelinek <jakub@redhat.com>
-
- * Makefile.am (gfor_cdir): Remove $(MULTISUBDIR).
- * Makefile.in: Regenerated.
+2020-05-26 Harald Anlauf <anlauf@gmx.de>
+ Steven G. Kargl <kargl@gcc.gnu.org>
-2019-04-14 Paul Thomas <pault@gcc.gnu.org>
+ PR libfortran/95104
+ * io/transfer.c (st_wait_async): Do not dereference NULL pointer.
- 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.
+2020-05-26 Harald Anlauf <anlauf@gmx.de>
- 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/95195
+ * io/transfer.c (finalize_transfer): Generate runtime error for
+ namelist input/output to unformatted file.
- 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.
+2020-05-23 Thomas Koenig <tkoenig@gcc.gnu.org>
-2019-03-25 John David Anglin <danglin@gcc.gnu.org>
+ PR libfortran/95191
+ * io/async.c (async_wait_id): Generate error if ID is higher
+ than the highest current ID.
+ * runtime/error.c (translate_error): Handle LIBERROR_BAD_WAIT_ID.
- PR libgfortran/79540
- * io/write_float.def (build_float_string): Don't copy digits when
- ndigits is negative.
+2020-05-21 H.J. Lu <hongjiu.lu@intel.com>
-2019-03-05 Jakub Jelinek <jakub@redhat.com>
+ * m4/matmul.m4: Don't include <config/i386/cpuinfo.h>. Use
+ __builtin_cpu_is/__builtin_cpu_supports
+ * generated/matmul_c10.c: Regenerated.
+ * generated/matmul_c16.c: Likewise.
+ * generated/matmul_c4.c: Likewise.
+ * generated/matmul_c8.c: Likewise.
+ * generated/matmul_i1.c: Likewise.
+ * generated/matmul_i16.c: Likewise.
+ * generated/matmul_i2.c: Likewise.
+ * generated/matmul_i4.c: Likewise.
+ * generated/matmul_i8.c: Likewise.
+ * generated/matmul_r10.c: Likewise.
+ * generated/matmul_r16.c: Likewise.
+ * generated/matmul_r4.c: Likewise.
+ * generated/matmul_r8.c: Likewise.
- PR libgfortran/89593
- * caf/single.c (_gfortran_caf_sendget_by_ref): Cast &temp to
- gfc_descriptor_t * to avoid warning.
+2020-05-15 H.J. Lu <hongjiu.lu@intel.com>
-2019-02-26 Uroš Bizjak <ubizjak@gmail.com>
-
- * io/transfer.c (transfer_array_inner): Do not
- cast charlen to index_type.
+ PR bootstrap/95147
+ * configure: Regenerated.
-2019-02-25 Dominique d'Humieres <dominiq@gcc.gnu.org>
+2020-05-14 Thomas Koenig <tkoenig@gcc.gnu.org>
- PR libfortran/89274
- * io/write.c (write_integer): Add width for INTEGER(16).
+ PR libfortran/95119
+ * io/close.c (close_status): Add CLOSE_INVALID.
+ (st_close): Return early on invalid STATUS parameter.
-2019-02-23 Paul Thomas <pault@gcc.gnu.org>
+2020-05-14 H.J. Lu <hongjiu.lu@intel.com>
- 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
- treatment.
+ * configure: Regenerated.
-2019-01-30 Uroš Bizjak <ubizjak@gmail.com>
+2020-05-06 Uroš Bizjak <ubizjak@gmail.com>
- PR libfortran/88678
- Revert:
- 2016-11-16 Szabolcs Nagy <szabolcs.nagy@arm.com>
+ * config/fpu-387.h (__math_force_eval): Remove.
+ (__math_force_eval_div): New define.
+ (local_feraiseexcept): Use __math_force_eval_div to use
+ generic division to generate INVALID, DIVZERO and INEXACT
+ exceptions.
+ (struct fenv): Define named struct instead of typedef.
- PR libfortran/78314
- * config/fpu-glibc.h (support_fpu_trap): Use feenableexcept.
+2020-05-01 Uroš Bizjak <ubizjak@gmail.com>
-2019-01-30 Uroš Bizjak <ubizjak@gmail.com>
+ * config/fpu-387.h (__math_force_eval): New define.
+ (local_feraiseexcept): Use __math_force_eval to evaluate
+ generic division to generate INVALID and DIVZERO exceptions.
- 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.
+2020-04-22 Fritz Reese <foreese@gcc.gnu.org>
-2019-01-28 Sebastian Huber <sebastian.huber@embedded-brains.de>
+ * intrinsics/trigd.c, intrinsics/trigd_lib.inc, intrinsics/trigd.inc:
+ Guard against unavailable math functions.
+ Use suffixes from kinds.h based on the REAL kind.
- * io/async.c (init_adv_cond): Use __GTHREAD_COND_INIT_FUNCTION().
+2020-04-22 Jakub Jelinek <jakub@redhat.com>
-2019-01-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ PR libfortran/94694
+ PR libfortran/94586
+ * configure.ac: Add math func checks for fmaf, fma and fmal. Add
+ HAVE_INLINE_BUILTIN_COPYSIGN check.
+ * c99_protos.h (copysign, fmaf, fma, fmal): Provide fallback
+ prototypes.
+ (HAVE_COPYSIGN, HAVE_FMAF, HAVE_FMA, HAVE_FMAL): Define if not
+ defined and fallback version is provided.
+ * intrinsics/c99_functions.c (copysign, fmaf, fma, fmal): Provide
+ fallback implementations if possible
+ * configure: Regenerated.
+ * config.h.in: Regenerated.
- PR libfortran/89020
- * io/close.c (st_close): Simplify text of error message to not
- presume a specific cause of failure to remove file.
+2020-04-19 Uroš Bizjak <ubizjak@gmail.com>
+
+ * config/fpu-387.h (local_feraiseexcept) [__SSE_MATH__]:
+ Remove unneeded assignments to volatile memory.
+
+2020-04-01 Fritz Reese <foreese@gcc.gnu.org>
+ Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/93871
+ * Makefile.am, Makefile.in: New make rule for intrinsics/trigd.c.
+ * gfortran.map: New routines for {sind, cosd, tand}X{r4, r8, r10, r16}.
+ * intrinsics/trigd.c, intrinsics/trigd_lib.inc, intrinsics/trigd.inc:
+ New files. Defines native degree-valued trig functions.
+
+2020-02-18 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ 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
+ advcond->lock.
+ (struct adv_cond): Remove mutex from struct.
+
+2020-02-12 Sandra Loosemore <sandra@codesourcery.com>
+
+ PR libstdc++/79193
+ PR libstdc++/88999
-2019-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ * configure: Regenerated.
- PR libfortran/89020
- * io/close.c (st_close): Fix typo.
+2020-01-24 Maciej W. Rozycki <macro@wdc.com>
-2019-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ * configure.ac: Handle `--with-toolexeclibdir='.
+ * Makefile.in: Regenerate.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
- PR libfortran/89020
- * io/close.c (st_close): Generate error if calls to 'remove' return
- an error.
+2020-01-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-2019-01-17 Andrew Stubbs <ams@codesourcery.com>
- Kwok Cheung Yeung <kcy@codesourcery.com>
- Julian Brown <julian@codesourcery.com>
- Tom de Vries <tom@codesourcery.com>
+ PR libfortran/93234
+ * io/unit.c (set_internal_unit): Set round and sign flags
+ correctly.
- * configure.ac: Use minimal mode for amdgcn.
- * configure: Regenerate.
+2020-01-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-2019-01-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- 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 <jvdelisle@gcc.gnu.org>
-
- 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 <pault@gcc.gnu.org>
-
- * ISO_Fortran_binding.h : New file.
- * Makefile.am : Include ISO_Fortran_binding.c in the list of
- files to compile.
- * Makefile.in : Regenerated.
- * gfortran.map : 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 <jakub@redhat.com>
-
- 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 <sandra@codesourcery.com>
-
- PR other/16615
- * caf/single.c: Mechanically replace "can not" with "cannot".
- * io/unit.c: Likewise.
-
-2019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
- Harald Anlauf <anlauf@gmx.de>
- Tobias Burnus <burnus@gcc.gnu.org>
-
- PR fortran/45424
- * Makefile.am: Add intrinsics/is_contiguous.c.
- * Makefile.in: Regenerated.
- * gfortran.map: Add _gfortran_is_contiguous0.
- * intrinsics/is_contiguous.c: New file.
- * libgfortran.h: Add prototype for is_contiguous0.
+ PR libfortran/90374
+ * io/format.c (parse_format_list): Zero width not allowed with
+ FMT_D.
+ * io/write_float.def (build_float_string): Include range of
+ higher exponent values that require wider width.
-2019-01-07 Janne Blomqvist <jb@gcc.gnu.org>
+2020-01-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- * gfortran.map (GFORTRAN_9): Make GFORTRAN_9 node depend on
- GFORTRAN_8.
+ PR libfortran/90374
+ * io/format.c (parse_format_list): Implement the E0 exponent
+ width to provide smallest possible width for exponent fields.
+ Refactor code for correct parsing and better readability of the
+ code.
+ * io/io.h (write_real_w0): Change interface to pass in pointer
+ to fnode.
+ * io/transfer.c: Update all calls to write_real_w0 to use the
+ new interface.
+ * io/write.c ((write_real_w0): Use the new interface with fnode
+ to access both the decimal precision and exponent widths used in
+ build_float_string.
+ * io/write_float.def (build_float_string): Use the passed in
+ exponent width to calculate the used width in the case of E0.
-2019-01-01 Jakub Jelinek <jakub@redhat.com>
+2020-01-01 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
\f
-Copyright (C) 2019 Free Software Foundation, Inc.
+Copyright (C) 2020 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright