re PR fortran/91926 (assumed rank optional)
[gcc.git] / libgfortran / ChangeLog
1 2019-10-05 Paul Thomas <pault@gcc.gnu.org>
2
3 PR fortran/91926
4 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Do not
5 modify the bounds and offset for CFI_other.
6
7 2019-10-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
8
9 PR libfortran/91593
10 * io/read.c (read_decimal): Cast constant to size_t to turn off
11 a bogus warning.
12 * io/write.c (btoa_big): Use memset in lieu of setting the null
13 byte in a string buffer to turn off a bogus warning.
14
15 2019-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
16
17 PR libfortran/91593
18 * io/io.h: Add gcc_unreachable().
19 * io/transfer.c (file_mode, current_mode,
20 formatted_transfer_scalar_read, formatted_transfer_scalar_write,
21 pre_position, next_record_r, next_record_w): Add and use
22 FORMATTED_UNSPECIFIED to enumeration.
23
24 2019-09-27 Maciej W. Rozycki <macro@wdc.com>
25
26 * configure: Regenerate.
27
28 2019-09-05 Janne Blomqvist <jb@gcc.gnu.org>
29
30 * intrinsics/random.c (master_init): Replace with
31 master_state.init.
32 (njumps): Remove variable.
33 (master_state): Make instance of struct prng_state.
34 (init_rand_state): When jumping, update the master_state once
35 instead of keeping track of how many jumps need to be done.
36 (SZU64): Modify to handle new master_state.
37 (SZ): Likewise.
38 (random_seed_i4): Likewise.
39 (random_seed_i8): Likewise.
40
41 2019-08-17 Janne Blomqvist <jb@gcc.gnu.org>
42
43 PR fortran/68401
44 * gfortran.map: Add GFORTRAN_10 node, add _gfortran_os_error_at
45 symbol.
46 * libgfortran.h (os_error_at): New prototype.
47 * runtime/error.c (os_error_at): New function.
48
49 2019-08-13 Janne Blomqvist <jb@gcc.gnu.org>
50
51 PR fortran/91414
52 * intrinsics/random.c (prng_state): Update state struct.
53 (master_state): Update to match new size.
54 (get_rand_state): Update to match new PRNG.
55 (rotl): New function.
56 (xorshift1024star): Replace with prng_next.
57 (prng_next): New function.
58 (jump): Update for new PRNG.
59 (lcg_parkmiller): Replace with splitmix64.
60 (splitmix64): New function.
61 (getosrandom): Fix return value, simplify.
62 (init_rand_state): Use getosrandom only to get 8 bytes, splitmix64
63 to fill rest of state.
64 (random_r4): Update to new function and struct names.
65 (random_r8): Likewise.
66 (random_r10): Likewise.
67 (random_r16): Likewise.
68 (arandom_r4): Liekwise.
69 (arandom_r8): Likewise.
70 (arandom_r10): Likwewise.
71 (arandom_r16): Likewise.
72 (xor_keys): Reduce size to match new PRNG.
73 (random_seed_i4): Update to new function and struct names, remove
74 special handling of variable p used in previous PRNG.
75 (random_seed_i8): Likewise.
76
77 2019-08-07 Janne Blomqvist <jb@gcc.gnu.org>
78
79 PR fortran/53796
80 * io/inquire.c (inquire_via_filename): Set recl to -1 for
81 unconnected units.
82
83 2019-07-21 Thomas König <tkoenig@gcc.gnu.org>
84
85 PR libfortran/91030
86 * io/unix.c (BUFFER_SIZE): Delete.
87 (BUFFER_FORMATTED_SIZE_DEFAULT): New variable.
88 (BUFFER_UNFORMATTED_SIZE_DEFAULT): New variable.
89 (unix_stream): Add buffer_size.
90 (buf_read): Use s->buffer_size instead of BUFFER_SIZE.
91 (buf_write): Likewise.
92 (buf_init): Add argument unformatted. Handle block sizes
93 for unformatted vs. formatted, using defaults if provided.
94 (fd_to_stream): Add argument unformatted in call to buf_init.
95 * libgfortran.h (options_t): Add buffer_size_formatted and
96 buffer_size_unformatted.
97 * runtime/environ.c (variable_table): Add
98 GFORTRAN_UNFORMATTED_BUFFER_SIZE and
99 GFORTRAN_FORMATTED_BUFFER_SIZE.
100
101 2019-06-25 Kwok Cheung Yeung <kcy@codesourcery.com>
102 Andrew Stubbs <ams@codesourcery.com>
103
104 * configure: Regenerate.
105 * configure.ac (LIBGFOR_MINIMAL): Do not use on AMD GCN.
106
107 2019-06-14 Janne Blomqvist <jb@gcc.gnu.org>
108
109 PR fortran/65921
110 * runtime/memory.c (SIZE_MAX):Remove macro definition.
111 (xmallocarray): Use __builtin_mul_overflow.
112
113 2019-05-22 Jeff Law <law@redhat.com>
114
115 PR fortran/89100
116 * io/format.c (parse_format_list): set default width when the
117 IOPARM_DT_DEC_EXT flag is set for i, f and g.
118 * io/io.h: add default_width_for_integer, default_width_for_float
119 and default_precision_for_float.
120 * io/write.c (write_boz): extra parameter giving length of data
121 corresponding to the type's kind.
122 (write_b): pass data length as extra parameter in calls to
123 write_boz.
124 (write_o): pass data length as extra parameter in calls to
125 write_boz.
126 (write_z): pass data length as extra parameter in calls to
127 write_boz.
128 (size_from_kind): also set size is default width is set.
129 * io/write_float.def (build_float_string): new paramter inserted
130 before result parameter. If default width use values passed
131 instead of the values in fnode.
132 (FORMAT_FLOAT): macro modified to check for default width and
133 calls to build_float_string to pass in default width.
134 (get_float_string): set width and precision to defaults when
135 needed.
136
137 2019-05-19 Janne Blomqvist <jb@gcc.gnu.org>
138
139 PR libfortran/90038
140 * intrinsics/execute_command_line (sigchld_handler): New function.
141 (execute_command_line): Install handler for SIGCHLD.
142 * configure.ac: Check for presence of sigaction and waitpid.
143 * config.h.in: Regenerated.
144 * configure: Regenerated.
145
146 2019-05-17 Janne Blomqvist <jb@gcc.gnu.org>
147
148 PR libfortran/90038
149 * configure.ac (AC_CHECK_FUNCS_ONCE): Check for posix_spawn.
150 * intrinsics/execute_command_line (execute_command_line): Use
151 posix_spawn.
152 * Makefile.in: Regenerated.
153 * config.h.in: Regenerated.
154 * configure: Regenerated.
155
156 2019-05-17 Jakub Jelinek <jakub@redhat.com>
157
158 PR fortran/54613
159 * gfortran.map (GFORTRAN_9.2): Export _gfortran_{,m,s}findloc{0,1}_r10.
160 * Makefile.am (i_findloc0_c): Add $(srcdir)/generated/findloc0_r10.c.
161 (i_findloc1_c): Add $(srcdir)/generated/findloc1_r10.c.
162 * Makefile.in: Regenerated.
163 * generated/findloc0_r10.c: Generated.
164 * generated/findloc1_r10.c: Generated.
165
166 PR fortran/54613
167 * gfortran.map (GFORTRAN_9.2): New symbol version, export
168 _gfortran_{,m,s}findloc0_i2 in it.
169
170 2019-05-15 Janne Blomqvist <jb@gcc.gnu.org>
171
172 PR fortran/90461
173 * io/open.c (new_unit): Don't check if the file is already open
174 for F2018.
175
176 2019-05-02 Jakub Jelinek <jakub@redhat.com>
177
178 * Makefile.am (gfor_cdir): Remove $(MULTISUBDIR).
179 * Makefile.in: Regenerated.
180
181 2019-04-14 Paul Thomas <pault@gcc.gnu.org>
182
183 PR fortran/89843
184 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Only
185 return immediately if the source pointer is null. Bring
186 forward the extraction of the gfc type. Extract the kind so
187 that the element size can be correctly computed for sections
188 and components of derived type arrays. Remove the free of the
189 CFI descriptor since this is now done in trans-expr.c.
190 (gfc_desc_to_cfi_desc): Only allocate the CFI descriptor if it
191 is not null.
192 (CFI_section): Normalise the difference between the upper and
193 lower bounds by the stride to correctly calculate the extents
194 of the section.
195
196 PR fortran/89846
197 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Use
198 the stride measure for the gfc span if it is not a multiple
199 of the element length. Otherwise use the element length.
200
201 PR fortran/90022
202 * runtime/ISO_Fortran_binding.c (CFI_is_contiguous) : Return
203 1 for true and 0 otherwise to comply with the standard. Correct
204 the contiguity check for rank 3 and greater by using the stride
205 measure of the lower dimension rather than the element length.
206
207 2019-03-25 John David Anglin <danglin@gcc.gnu.org>
208
209 PR libgfortran/79540
210 * io/write_float.def (build_float_string): Don't copy digits when
211 ndigits is negative.
212
213 2019-03-05 Jakub Jelinek <jakub@redhat.com>
214
215 PR libgfortran/89593
216 * caf/single.c (_gfortran_caf_sendget_by_ref): Cast &temp to
217 gfc_descriptor_t * to avoid warning.
218
219 2019-02-26 Uroš Bizjak <ubizjak@gmail.com>
220
221 * io/transfer.c (transfer_array_inner): Do not
222 cast charlen to index_type.
223
224 2019-02-25 Dominique d'Humieres <dominiq@gcc.gnu.org>
225
226 PR libfortran/89274
227 * io/write.c (write_integer): Add width for INTEGER(16).
228
229 2019-02-23 Paul Thomas <pault@gcc.gnu.org>
230
231 PR fortran/89385
232 PR fortran/89366
233 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc) : In the
234 interchange between character and derived, the character type
235 was being set incorrectly.
236 (gfc_desc_to_cfi_desc) : Eliminate the interchange of types in
237 this function. Do not add the kind and length information to
238 the type field of structures. Lbounds were incorrectly being
239 set to zero for allocatable and pointer descriptors. Should
240 have been non-pointer, non-allocatables that received this
241 treatment.
242
243 2019-01-30 Uroš Bizjak <ubizjak@gmail.com>
244
245 PR libfortran/88678
246 Revert:
247 2016-11-16 Szabolcs Nagy <szabolcs.nagy@arm.com>
248
249 PR libfortran/78314
250 * config/fpu-glibc.h (support_fpu_trap): Use feenableexcept.
251
252 2019-01-30 Uroš Bizjak <ubizjak@gmail.com>
253
254 PR libfortran/88678
255 * config/fpu-glibc.h (set_fpu_trap_exceptions): Clear stalled
256 exception flags before changing trap mode. Optimize to call
257 feenableexcept and fedisableexcept only once.
258
259 2019-01-28 Sebastian Huber <sebastian.huber@embedded-brains.de>
260
261 * io/async.c (init_adv_cond): Use __GTHREAD_COND_INIT_FUNCTION().
262
263 2019-01-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
264
265 PR libfortran/89020
266 * io/close.c (st_close): Simplify text of error message to not
267 presume a specific cause of failure to remove file.
268
269 2019-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
270
271 PR libfortran/89020
272 * io/close.c (st_close): Fix typo.
273
274 2019-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
275
276 PR libfortran/89020
277 * io/close.c (st_close): Generate error if calls to 'remove' return
278 an error.
279
280 2019-01-17 Andrew Stubbs <ams@codesourcery.com>
281 Kwok Cheung Yeung <kcy@codesourcery.com>
282 Julian Brown <julian@codesourcery.com>
283 Tom de Vries <tom@codesourcery.com>
284
285 * configure.ac: Use minimal mode for amdgcn.
286 * configure: Regenerate.
287
288 2019-01-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
289
290 PR libfortran/88776
291 * io/open.c (newunit): Free format buffer if the unit specified is for
292 stdin, stdout, or stderr.
293
294 2019-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
295
296 PR libfortran/88776
297 * io/list_read.c (namelist_read): Use nml_err_ret path on read error
298 not based on stdin_unit.
299
300 2019-01-12 Paul Thomas <pault@gcc.gnu.org>
301
302 * ISO_Fortran_binding.h : New file.
303 * Makefile.am : Include ISO_Fortran_binding.c in the list of
304 files to compile.
305 * Makefile.in : Regenerated.
306 * gfortran.map : Add _gfortran_cfi_desc_to_gfc_desc,
307 _gfortran_gfc_desc_to_cfi_desc and the CFI API functions.
308 * runtime/ISO_Fortran_binding.c : New file containing the new
309 functions added to the map.
310
311 2019-01-12 Jakub Jelinek <jakub@redhat.com>
312
313 PR libfortran/88807
314 * m4/minloc0.m4: Reindent to avoid -Wmisleading-indentation warnings.
315 * generated/minloc0_4_i1.c: Regenerated.
316 * generated/minloc0_4_i2.c: Regenerated.
317 * generated/minloc0_4_i4.c: Regenerated.
318 * generated/minloc0_4_i8.c: Regenerated.
319 * generated/minloc0_4_i16.c: Regenerated.
320 * generated/minloc0_4_r4.c: Regenerated.
321 * generated/minloc0_4_r8.c: Regenerated.
322 * generated/minloc0_4_r10.c: Regenerated.
323 * generated/minloc0_4_r16.c: Regenerated.
324 * generated/minloc0_8_i1.c: Regenerated.
325 * generated/minloc0_8_i2.c: Regenerated.
326 * generated/minloc0_8_i4.c: Regenerated.
327 * generated/minloc0_8_i8.c: Regenerated.
328 * generated/minloc0_8_i16.c: Regenerated.
329 * generated/minloc0_8_r4.c: Regenerated.
330 * generated/minloc0_8_r8.c: Regenerated.
331 * generated/minloc0_8_r10.c: Regenerated.
332 * generated/minloc0_8_r16.c: Regenerated.
333 * generated/minloc0_16_i1.c: Regenerated.
334 * generated/minloc0_16_i2.c: Regenerated.
335 * generated/minloc0_16_i4.c: Regenerated.
336 * generated/minloc0_16_i8.c: Regenerated.
337 * generated/minloc0_16_i16.c: Regenerated.
338 * generated/minloc0_16_r4.c: Regenerated.
339 * generated/minloc0_16_r8.c: Regenerated.
340 * generated/minloc0_16_r10.c: Regenerated.
341 * generated/minloc0_16_r16.c: Regenerated.
342
343 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
344
345 PR other/16615
346 * caf/single.c: Mechanically replace "can not" with "cannot".
347 * io/unit.c: Likewise.
348
349 2019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
350 Harald Anlauf <anlauf@gmx.de>
351 Tobias Burnus <burnus@gcc.gnu.org>
352
353 PR fortran/45424
354 * Makefile.am: Add intrinsics/is_contiguous.c.
355 * Makefile.in: Regenerated.
356 * gfortran.map: Add _gfortran_is_contiguous0.
357 * intrinsics/is_contiguous.c: New file.
358 * libgfortran.h: Add prototype for is_contiguous0.
359
360 2019-01-07 Janne Blomqvist <jb@gcc.gnu.org>
361
362 * gfortran.map (GFORTRAN_9): Make GFORTRAN_9 node depend on
363 GFORTRAN_8.
364
365 2019-01-01 Jakub Jelinek <jakub@redhat.com>
366
367 Update copyright years.
368 \f
369 Copyright (C) 2019 Free Software Foundation, Inc.
370
371 Copying and distribution of this file, with or without modification,
372 are permitted in any medium without royalty provided the copyright
373 notice and this notice are preserved.