PR 44292 Enable large record lengths in OPEN and INQUIRE statements
[official-gcc.git] / libgfortran / ChangeLog
blobfa5646ba94f2c8f8df9b6d4d7416d669b140ce1e
1 2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
3         PR fortran/44292
4         * io/io.h: Make recl_in a GC_IO_INT and recl_out a type
5         GFC_IO_INT*.
7 2017-11-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
9         * acinclude.m4: Add enable.m4, cet.m4.
10         * Makefile.in: Regenerate.
11         * configure: Likewise.
12         * configure.ac: Set CET_FLAGS. Update AM_FCFLAGS,
13         AM_CFLAGS, CFLAGS.
15 2017-10-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
16             Rimvydas (RJ)
18         PR libgfortran/81938
19         io/format.c (free_format_data): Don't try to free vlist
20         descriptors past the end of the fnode array.
22 2017-10-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
24         PR libfortran/82233
25         * intrinsics/execute_command_line.c (execute_command_line):
26         No call to runtime_error if cmdstat is present.
28 2017-09-24  Dominique d'Humieres  <dominiq@lps.ens.fr>
30         PR libgfortran/79612
31         * runtime/bounds.c: Use GFC_ASSERT.
33 2017-09-10  Paul Thomas  <pault@gcc.gnu.org>
35         PR fortran/34640
36         * libgfortran/libgfortran.h: Add span field to descriptor.
37         * libgfortran/libtool-version : Bump up version number to 5:0:0.
39 2017-08-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
41         PR libgfortran/78387
42         * io/list_read.c (nml_read_obj): Remove use of stash.
43         * io/transfer.c (st_read_done, st_write_done): Likewise.
44         * io/unit.c (stash_internal_unit): Delete function.
45         (get_unit): Remove use of stash.
46         (init_units): Likewise.
47         (close_units): Likewise.
48         * io/write.c (nml_write_obj): Likewise:
50 2017-07-31  Thomas Koenig  <tkoenig@gcc.gnu.org>
52         PR fortran/81581
53         * m4/ifuntion.m4 (name`'rtype_qual`_'atype_code): Perform check
54         for dim.
55         (`m'name`'rtype_qual`_'atype_code): Likewise. Change type of rank
56         and tim to index_type.
57         (`s'name`'rtype_qual`_'atype_code): Perform check for dim.
58         * generated/iall_i16.c: Regenerated.
59         * generated/iall_i1.c: Regenerated.
60         * generated/iall_i2.c: Regenerated.
61         * generated/iall_i4.c: Regenerated.
62         * generated/iall_i8.c: Regenerated.
63         * generated/iany_i16.c: Regenerated.
64         * generated/iany_i1.c: Regenerated.
65         * generated/iany_i2.c: Regenerated.
66         * generated/iany_i4.c: Regenerated.
67         * generated/iany_i8.c: Regenerated.
68         * generated/iparity_i16.c: Regenerated.
69         * generated/iparity_i1.c: Regenerated.
70         * generated/iparity_i2.c: Regenerated.
71         * generated/iparity_i4.c: Regenerated.
72         * generated/iparity_i8.c: Regenerated.
73         * generated/maxloc1_16_i16.c: Regenerated.
74         * generated/maxloc1_16_i1.c: Regenerated.
75         * generated/maxloc1_16_i2.c: Regenerated.
76         * generated/maxloc1_16_i4.c: Regenerated.
77         * generated/maxloc1_16_i8.c: Regenerated.
78         * generated/maxloc1_16_r10.c: Regenerated.
79         * generated/maxloc1_16_r16.c: Regenerated.
80         * generated/maxloc1_16_r4.c: Regenerated.
81         * generated/maxloc1_16_r8.c: Regenerated.
82         * generated/maxloc1_4_i16.c: Regenerated.
83         * generated/maxloc1_4_i1.c: Regenerated.
84         * generated/maxloc1_4_i2.c: Regenerated.
85         * generated/maxloc1_4_i4.c: Regenerated.
86         * generated/maxloc1_4_i8.c: Regenerated.
87         * generated/maxloc1_4_r10.c: Regenerated.
88         * generated/maxloc1_4_r16.c: Regenerated.
89         * generated/maxloc1_4_r4.c: Regenerated.
90         * generated/maxloc1_4_r8.c: Regenerated.
91         * generated/maxloc1_8_i16.c: Regenerated.
92         * generated/maxloc1_8_i1.c: Regenerated.
93         * generated/maxloc1_8_i2.c: Regenerated.
94         * generated/maxloc1_8_i4.c: Regenerated.
95         * generated/maxloc1_8_i8.c: Regenerated.
96         * generated/maxloc1_8_r10.c: Regenerated.
97         * generated/maxloc1_8_r16.c: Regenerated.
98         * generated/maxloc1_8_r4.c: Regenerated.
99         * generated/maxloc1_8_r8.c: Regenerated.
100         * generated/maxval_i16.c: Regenerated.
101         * generated/maxval_i1.c: Regenerated.
102         * generated/maxval_i2.c: Regenerated.
103         * generated/maxval_i4.c: Regenerated.
104         * generated/maxval_i8.c: Regenerated.
105         * generated/maxval_r10.c: Regenerated.
106         * generated/maxval_r16.c: Regenerated.
107         * generated/maxval_r4.c: Regenerated.
108         * generated/maxval_r8.c: Regenerated.
109         * generated/minloc1_16_i16.c: Regenerated.
110         * generated/minloc1_16_i1.c: Regenerated.
111         * generated/minloc1_16_i2.c: Regenerated.
112         * generated/minloc1_16_i4.c: Regenerated.
113         * generated/minloc1_16_i8.c: Regenerated.
114         * generated/minloc1_16_r10.c: Regenerated.
115         * generated/minloc1_16_r16.c: Regenerated.
116         * generated/minloc1_16_r4.c: Regenerated.
117         * generated/minloc1_16_r8.c: Regenerated.
118         * generated/minloc1_4_i16.c: Regenerated.
119         * generated/minloc1_4_i1.c: Regenerated.
120         * generated/minloc1_4_i2.c: Regenerated.
121         * generated/minloc1_4_i4.c: Regenerated.
122         * generated/minloc1_4_i8.c: Regenerated.
123         * generated/minloc1_4_r10.c: Regenerated.
124         * generated/minloc1_4_r16.c: Regenerated.
125         * generated/minloc1_4_r4.c: Regenerated.
126         * generated/minloc1_4_r8.c: Regenerated.
127         * generated/minloc1_8_i16.c: Regenerated.
128         * generated/minloc1_8_i1.c: Regenerated.
129         * generated/minloc1_8_i2.c: Regenerated.
130         * generated/minloc1_8_i4.c: Regenerated.
131         * generated/minloc1_8_i8.c: Regenerated.
132         * generated/minloc1_8_r10.c: Regenerated.
133         * generated/minloc1_8_r16.c: Regenerated.
134         * generated/minloc1_8_r4.c: Regenerated.
135         * generated/minloc1_8_r8.c: Regenerated.
136         * generated/minval_i16.c: Regenerated.
137         * generated/minval_i1.c: Regenerated.
138         * generated/minval_i2.c: Regenerated.
139         * generated/minval_i4.c: Regenerated.
140         * generated/minval_i8.c: Regenerated.
141         * generated/minval_r10.c: Regenerated.
142         * generated/minval_r16.c: Regenerated.
143         * generated/minval_r4.c: Regenerated.
144         * generated/minval_r8.c: Regenerated.
145         * generated/norm2_r10.c: Regenerated.
146         * generated/norm2_r16.c: Regenerated.
147         * generated/norm2_r4.c: Regenerated.
148         * generated/norm2_r8.c: Regenerated.
149         * generated/parity_l16.c: Regenerated.
150         * generated/parity_l1.c: Regenerated.
151         * generated/parity_l2.c: Regenerated.
152         * generated/parity_l4.c: Regenerated.
153         * generated/parity_l8.c: Regenerated.
154         * generated/product_c10.c: Regenerated.
155         * generated/product_c16.c: Regenerated.
156         * generated/product_c4.c: Regenerated.
157         * generated/product_c8.c: Regenerated.
158         * generated/product_i16.c: Regenerated.
159         * generated/product_i1.c: Regenerated.
160         * generated/product_i2.c: Regenerated.
161         * generated/product_i4.c: Regenerated.
162         * generated/product_i8.c: Regenerated.
163         * generated/product_r10.c: Regenerated.
164         * generated/product_r16.c: Regenerated.
165         * generated/product_r4.c: Regenerated.
166         * generated/product_r8.c: Regenerated.
167         * generated/sum_c10.c: Regenerated.
168         * generated/sum_c16.c: Regenerated.
169         * generated/sum_c4.c: Regenerated.
170         * generated/sum_c8.c: Regenerated.
171         * generated/sum_i16.c: Regenerated.
172         * generated/sum_i1.c: Regenerated.
173         * generated/sum_i2.c: Regenerated.
174         * generated/sum_i4.c: Regenerated.
175         * generated/sum_i8.c: Regenerated.
176         * generated/sum_r10.c: Regenerated.
177         * generated/sum_r16.c: Regenerated.
178         * generated/sum_r4.c: Regenerated.
179         * generated/sum_r8.c: Regenerated.
181 2017-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
183         PR fortran/80365
184         * io/unix.c (buf_write):  Return early if there is
185         nothing to write.
187 2017-07-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
189         * intrinsics/eoshift2.c (eoshift2):  Use memcpy
190         for innermost copy where possible.
191         * m4/eoshift1.m4 (eoshift1): Likewise.
192         * m4/eoshift3.m4 (eoshift3): Likewise.
193         * generated/eoshift1_16.c: Regenerated.
194         * generated/eoshift1_4.c: Regenerated.
195         * generated/eoshift1_8.c: Regenerated.
196         * generated/eoshift3_16.c: Regenerated.
197         * generated/eoshift3_4.c: Regenerated.
198         * generated/eoshift3_8.c: Regenerated.
200 2017-07-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
202         * intrinsics/eoshift0.c:  For contiguous arrays, use
203         block algorithm.  Use memcpy where possible.
205 2017-06-26  Jim Wilson  <jim.wilson@r3-a15.aus-colo>
207         PR libfortran/81195
208         * io/unit.c (get_unit): Call __gthread_mutex_lock before newunit_stack
209         and newunit_tos references.  Call __gthread_mutex_unlock afterward.
211 2017-06-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
213         PR fortran/52473
214         * Makefile.am:  Add i_cshift1a_c.  Add rules to generate files
215         from cshift1a.m4.
216         * Makefile.in: Regenerated.
217         * m4/cshift1a.m4: New file.
218         * m4/cshift.m4 (cshift1): Split up inner loop by removing
219         condition. Use memcpy where possible.  Call helper functions
220         based on dtype.
221         * libgfortran.h: Add prototypes for cshift1_16_c10,
222         cshift1_16_c16, cshift1_16_c4, cshift1_16_c8, cshift1_16_i1,
223         cshift1_16_i16, cshift1_16_i2, cshift1_16_i4, cshift1_16_i8,
224         cshift1_16_r10, cshift1_16_r16, cshift1_16_r4, cshift1_16_r8,
225         cshift1_4_c10, cshift1_4_c16, cshift1_4_c4, cshift1_4_c8,
226         cshift1_4_i1, cshift1_4_i16, cshift1_4_i2, cshift1_4_i4,
227         cshift1_4_i8, cshift1_4_r10, cshift1_4_r16, cshift1_4_r4,
228         cshift1_4_r8, cshift1_8_c10, cshift1_8_c16, cshift1_8_c4,
229         cshift1_8_c8, cshift1_8_i1, cshift1_8_i16, cshift1_8_i2,
230         cshift1_8_i4, cshift1_8_i8, cshift1_8_r10, cshift1_8_r16,
231         cshift1_8_r4 and cshift1_8_r8.
232         * generated/cshift1_16_c10.c: New file, generated from cshift1a.m4.
233         * generated/cshift1_16_c16.c: New file, generated from cshift1a.m4.
234         * generated/cshift1_16_c4.c: New file, generated from cshift1a.m4.
235         * generated/cshift1_16_c8.c: New file, generated from cshift1a.m4.
236         * generated/cshift1_16_i1.c: New file, generated from cshift1a.m4.
237         * generated/cshift1_16_i16.c: New file, generated from cshift1a.m4.
238         * generated/cshift1_16_i2.c: New file, generated from cshift1a.m4.
239         * generated/cshift1_16_i4.c: New file, generated from cshift1a.m4.
240         * generated/cshift1_16_i8.c: New file, generated from cshift1a.m4.
241         * generated/cshift1_16_r10.c: New file, generated from cshift1a.m4.
242         * generated/cshift1_16_r16.c: New file, generated from cshift1a.m4.
243         * generated/cshift1_16_r4.c: New file, generated from cshift1a.m4.
244         * generated/cshift1_16_r8.c: New file, generated from cshift1a.m4.
245         * generated/cshift1_4_c10.c: New file, generated from cshift1a.m4.
246         * generated/cshift1_4_c16.c: New file, generated from cshift1a.m4.
247         * generated/cshift1_4_c4.c: New file, generated from cshift1a.m4.
248         * generated/cshift1_4_c8.c: New file, generated from cshift1a.m4.
249         * generated/cshift1_4_i1.c: New file, generated from cshift1a.m4.
250         * generated/cshift1_4_i16.c: New file, generated from cshift1a.m4.
251         * generated/cshift1_4_i2.c: New file, generated from cshift1a.m4.
252         * generated/cshift1_4_i4.c: New file, generated from cshift1a.m4.
253         * generated/cshift1_4_i8.c: New file, generated from cshift1a.m4.
254         * generated/cshift1_4_r10.c: New file, generated from cshift1a.m4.
255         * generated/cshift1_4_r16.c: New file, generated from cshift1a.m4.
256         * generated/cshift1_4_r4.c: New file, generated from cshift1a.m4.
257         * generated/cshift1_4_r8.c: New file, generated from cshift1a.m4.
258         * generated/cshift1_8_c10.c: New file, generated from cshift1a.m4.
259         * generated/cshift1_8_c16.c: New file, generated from cshift1a.m4.
260         * generated/cshift1_8_c4.c: New file, generated from cshift1a.m4.
261         * generated/cshift1_8_c8.c: New file, generated from cshift1a.m4.
262         * generated/cshift1_8_i1.c: New file, generated from cshift1a.m4.
263         * generated/cshift1_8_i16.c: New file, generated from cshift1a.m4.
264         * generated/cshift1_8_i2.c: New file, generated from cshift1a.m4.
265         * generated/cshift1_8_i4.c: New file, generated from cshift1a.m4.
266         * generated/cshift1_8_i8.c: New file, generated from cshift1a.m4.
267         * generated/cshift1_8_r10.c: New file, generated from cshift1a.m4.
268         * generated/cshift1_8_r16.c: New file, generated from cshift1a.m4.
269         * generated/cshift1_8_r4.c: New file, generated from cshift1a.m4.
270         * generated/cshift1_8_r8.c: New file, generated from cshift1a.m4.
272 2017-06-18  Thomas Koenig  <tkoenig@gcc.gnu.org>
274         PR fortran/52473
275         * m4/cshift0.m4:  For arrays that are contiguous up to
276         shift, implement blocked algorighm for cshift.
277         * generated/cshift0_c10.c:  Regenerated.
278         * generated/cshift0_c16.c:  Regenerated.
279         * generated/cshift0_c4.c:  Regenerated.
280         * generated/cshift0_c8.c:  Regenerated.
281         * generated/cshift0_i1.c:  Regenerated.
282         * generated/cshift0_i16.c:  Regenerated.
283         * generated/cshift0_i2.c:  Regenerated.
284         * generated/cshift0_i4.c:  Regenerated.
285         * generated/cshift0_i8.c:  Regenerated.
286         * generated/cshift0_r10.c:  Regenerated.
287         * generated/cshift0_r16.c:  Regenerated.
288         * generated/cshift0_r4.c:  Regenerated.
289         * generated/cshift0_r8.c:  Regenerated.
291 2017-06-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
293         PR fortran/80975
294         * m4/matmul_internal.m4:  Move zeroing before early return.
295         * generated/matmul_c10.c: Regenerated.
296         * generated/matmul_c16.c: Regenerated.
297         * generated/matmul_c4.c: Regenerated.
298         * generated/matmul_c8.c: Regenerated.
299         * generated/matmul_i1.c: Regenerated.
300         * generated/matmul_i16.c: Regenerated.
301         * generated/matmul_i2.c: Regenerated.
302         * generated/matmul_i4.c: Regenerated.
303         * generated/matmul_i8.c: Regenerated.
304         * generated/matmul_r10.c: Regenerated.
305         * generated/matmul_r16.c: Regenerated.
306         * generated/matmul_r4.c: Regenerated.
307         * generated/matmul_r8.c: Regenerated.
308         * generated/matmulavx128_c10.c: Regenerated.
309         * generated/matmulavx128_c16.c: Regenerated.
310         * generated/matmulavx128_c4.c: Regenerated.
311         * generated/matmulavx128_c8.c: Regenerated.
312         * generated/matmulavx128_i1.c: Regenerated.
313         * generated/matmulavx128_i16.c: Regenerated.
314         * generated/matmulavx128_i2.c: Regenerated.
315         * generated/matmulavx128_i4.c: Regenerated.
316         * generated/matmulavx128_i8.c: Regenerated.
317         * generated/matmulavx128_r10.c: Regenerated.
318         * generated/matmulavx128_r16.c: Regenerated.
319         * generated/matmulavx128_r4.c: Regenerated.
320         * generated/matmulavx128_r8.c: Regenerated.
322 2017-05-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
324         PR libgfortran/53029
325         * list_read.c (list_formatted_read_scala): Set the err return
326         value to the common.flags error values.
328 2017-05-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
330         * acinclude.m4 (LIBGFOR_CHECK_FMA3): Use test from
331         check_effective_target_fma in gcc.target/i386/i386.exp.
332         (LIBGFOR_CHECK_FMA4): Use test from check_effective_target_fma4.
333         * configure: Regenerate.
335 2017-05-26  Thomas Koenig  <tkoenig@gcc.gnu.org>
337         PR boostrap/80889
338         * acinclude.m4: Also set HAVE_AVX128 on the false
339         branch of LIBGFOR_CHECK_AVX128.
340         * configure:  Regenerated.
342 2017-05-25  Thomas Koenig  <tkoenig@gcc.gnu.org>
344         PR libfortran/78379
345         * Makefile.am: Add generated/matmulavx128_*.c files.
346         Handle them for compiling and setting the right flags.
347         * acinclude.m4: Add tests for FMA3, FMA4 and AVX128.
348         * configure.ac: Call them.
349         * Makefile.in: Regenerated.
350         * config.h.in: Regenerated.
351         * configure: Regenerated.
352         * m4/matmul.m4:  Handle AMD chips by calling 128-bit AVX
353         versions which use FMA3 or FMA4.
354         * m4/matmulavx128.m4: New file.
355         * generated/matmul_c10.c: Regenerated.
356         * generated/matmul_c16.c: Regenerated.
357         * generated/matmul_c4.c: Regenerated.
358         * generated/matmul_c8.c: Regenerated.
359         * generated/matmul_i1.c: Regenerated.
360         * generated/matmul_i16.c: Regenerated.
361         * generated/matmul_i2.c: Regenerated.
362         * generated/matmul_i4.c: Regenerated.
363         * generated/matmul_i8.c: Regenerated.
364         * generated/matmul_r10.c: Regenerated.
365         * generated/matmul_r16.c: Regenerated.
366         * generated/matmul_r4.c: Regenerated.
367         * generated/matmul_r8.c: Regenerated.
368         * generated/matmulavx128_c10.c: New file.
369         * generated/matmulavx128_c16.c: New file.
370         * generated/matmulavx128_c4.c: New file.
371         * generated/matmulavx128_c8.c: New file.
372         * generated/matmulavx128_i1.c: New file.
373         * generated/matmulavx128_i16.c: New file.
374         * generated/matmulavx128_i2.c: New file.
375         * generated/matmulavx128_i4.c: New file.
376         * generated/matmulavx128_i8.c: New file.
377         * generated/matmulavx128_r10.c: New file.
378         * generated/matmulavx128_r16.c: New file.
379         * generated/matmulavx128_r4.c: New file.
380         * generated/matmulavx128_r8.c: New file.
382 2017-05-19  Paul Thomas  <pault@gcc.gnu.org>
383             Jerry DeLisle  <jvdelisle@gcc.gnu.org>
385         PR fortran/80333
386         * list_read.c (nml_read_obj): Compute pointer into class/type
387         arrays from the nl->dim information. Update it for each iteration
388         of the loop for the given object.
390 2017-05-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
392         PR libgfortran/80741
393         * transfer.c (finalize_transfer): Reset last_char to 'empty'.
394         * file_pos.c (formatted_backspace): Likewise.
395         (st_endfile): Likewise.
396         (st_rewind): Likewise.
397         (st_flush): Likewise.
399 2017-05-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
401         PR libgfortran/80727
402         * transfer.c (read_sf_internal): Remove bogus code to detect EOR.
403         (read_block_form): For internal units, generate EOR if no more
404         bytes left in unit and we are trying to read with ADVANCE='NO'.
406 2017-05-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
408         PR fortran/80765
409         * m4/matmul_internal.m4: Set bystride to correct value in
410         vector-matrix multiplicatin for later calculation of buffer
411         size.
412         * generated/matmul_c10.c: Regenerated.
413         * generated/matmul_c16.c: Regenerated.
414         * generated/matmul_c4.c: Regenerated.
415         * generated/matmul_c8.c: Regenerated.
416         * generated/matmul_i1.c: Regenerated.
417         * generated/matmul_i16.c: Regenerated.
418         * generated/matmul_i2.c: Regenerated.
419         * generated/matmul_i4.c: Regenerated.
420         * generated/matmul_i8.c: Regenerated.
421         * generated/matmul_r10.c: Regenerated.
422         * generated/matmul_r16.c: Regenerated.
423         * generated/matmul_r4.c: Regenerated.
424         * generated/matmul_r8.c: Regenerated.
426 2017-05-12  Thomas Schwinge  <thomas@codesourcery.com>
428         * runtime/environ.c (weak_secure_getenv): Fix "__secure_gettime"
429         vs. "__secure_getenv" typo.
430         (secure_getenv): Fix "HAVE__SECURE_GETENV"
431         vs. "HAVE___SECURE_GETENV" typo.
433 2017-05-11  Janne Blomqvist  <jb@gcc.gnu.org>
435         * libgfortran.h: HAVE_SECURE_GETENV: Don't check
436         HAVE___SECURE_GETENV.
437         * environ/runtime.c (secure_getenv): Use __secure_getenv via a
438         weak reference.
440 2017-05-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
442         PR fortran/80687
443         PR fortran/80696
444         * m4/matmul_internal.m4:  'matmul_name`:  Always
445         use malloc/free to allocate t1.
446         * generated/matmul_c10.c: Regenerated.
447         * generated/matmul_c16.c: Regenerated.
448         * generated/matmul_c4.c: Regenerated.
449         * generated/matmul_c8.c: Regenerated.
450         * generated/matmul_i1.c: Regenerated.
451         * generated/matmul_i16.c: Regenerated.
452         * generated/matmul_i2.c: Regenerated.
453         * generated/matmul_i4.c: Regenerated.
454         * generated/matmul_i8.c: Regenerated.
455         * generated/matmul_r10.c: Regenerated.
456         * generated/matmul_r16.c: Regenerated.
457         * generated/matmul_r4.c: Regenerated.
458         * generated/matmul_r8.c: Regenerated.
460 2017-05-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
462         PR fortran/80602
463         * m4/matmul_internal.m4:  'matmul_name`:  Change
464         t1 to a VLA of the required size.
465         * generated/matmul_c10.c: Regenerated.
466         * generated/matmul_c16.c: Regenerated.
467         * generated/matmul_c4.c: Regenerated.
468         * generated/matmul_c8.c: Regenerated.
469         * generated/matmul_i1.c: Regenerated.
470         * generated/matmul_i16.c: Regenerated.
471         * generated/matmul_i2.c: Regenerated.
472         * generated/matmul_i4.c: Regenerated.
473         * generated/matmul_i8.c: Regenerated.
474         * generated/matmul_r10.c: Regenerated.
475         * generated/matmul_r16.c: Regenerated.
476         * generated/matmul_r4.c: Regenerated.
477         * generated/matmul_r8.c: Regenerated.
479 2017-04-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
481         * close.c: Fix white space in pointer declarations and comment
482         formats where applicable.
483         * fbuf.c: Likewise.
484         * fbuf.h: Likewise.
485         * format.c: Likewise.
486         * inquire.c: Likewise.
487         * intrinsics.c: Likewise.
488         * list_read.c: Likewise.
489         * lock.c: Likewise.
490         * open.c: Likewise.
491         * read.c: Likewise.
492         * transfer.c: Likewise.
493         * unit.c: Likewise.
494         * unix.c: Likewise.
495         * unix.h: Likewise.
496         * write.c: Likewise.
498 2017-03-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
500         PR libgfortran/78670
501         * io/list_read.c (nml_get_obj_data): Delete code which calls the
502         child read procedure. (nml_read_obj): Insert the code which
503         calls the child procedure. Don't need to touch nodes if using
504         dtio since parent will not be traversing the components.
506 2017-03-28  Janus Weil  <janus@gcc.gnu.org>
508         PR fortran/78661
509         * io/write.c (nml_write_obj): Build a class container only if necessary.
511 2017-03-27  Dominique d'Humieres  <dominiq@lps.ens.fr>
513         * io/list_read.c: Insert /* Fall through. */ in the macro
514         CASE_SEPARATORS in order to silence warnings.
516 2017-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
518         PR libgfortran/78881
519         * io/io.h (st_parameter_dt): Rename unused component last_char to
520         child_saved_iostat. Move comment to gfc_unit.
521         * io/list_read.c (list_formatted_read_scalar): After call to
522         child READ procedure, save the returned iostat value for later
523         check. (finish_list_read): Only finish READ if child_saved_iostat
524         was OK.
525         * io/transfer.c (read_sf_internal): If there is a saved character
526         in last character, seek back one. Add a new check for EOR
527         condition. (read_sf): If there is a saved character
528         in last character, seek back one. (formatted_transfer_scalar_read):
529         Initialize last character before invoking child procedure.
530         (data_transfer_init): If child dtio, set advance
531         status to nonadvancing. Move update of size and check for EOR
532         condition to before child dtio return.
534 2017-03-17  Thomas Koenig  <tkoenig@gcc.gnu.org>
536         PR libfortran/79956
537         * m4/reshape.m4 (reshape_'rtype_ccode`):  Correct use
538         of GFC_ASSERT.
539         * generated/reshape_c10.c: Regenerated.
540         * generated/reshape_c16.c: Regenerated.
541         * generated/reshape_c4.c: Regenerated.
542         * generated/reshape_c8.c: Regenerated.
543         * generated/reshape_i16.c: Regenerated.
544         * generated/reshape_i4.c: Regenerated.
545         * generated/reshape_i8.c: Regenerated.
546         * generated/reshape_r10.c: Regenerated.
547         * generated/reshape_r16.c: Regenerated.
548         * generated/reshape_r4.c: Regenerated.
549         * generated/reshape_r8.c: Regenerated.
551 2017-03-15  NightStrike  <nightstrike@gmail.com>
552             Janne Blomqvist  <jb@gcc.gnu.org>
554         * intrinsics/random.c (getosrandom): Remove check for __CYGWIN__
555         preprocessor flag.
556         * intrinsics/system_clock.c: Likewise.
557         (system_clock_4): Likewise.
558         (system_clock_8): Likewise.
559         * intrinsics/time_1.h: Don't include windows.h if __CYGWIN__ is
560         defined.
562 2017-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
564         PR libfortran/79956
565         * libgfortran.h (GFC_ASSERT):  New macro.
566         * m4/reshape.m4 (reshape_'rtype_ccode`):  Use GFC_ASSERT
567         to specify that sdim > 0 and rdim > 0.
568         * intrinsic/reshape_generic.c (reshape_internal):  Likweise.
569         * generated/reshape_c10.c: Regenerated.
570         * generated/reshape_c16.c: Regenerated.
571         * generated/reshape_c4.c: Regenerated.
572         * generated/reshape_c8.c: Regenerated.
573         * generated/reshape_i16.c: Regenerated.
574         * generated/reshape_i4.c: Regenerated.
575         * generated/reshape_i8.c: Regenerated.
576         * generated/reshape_r10.c: Regenerated.
577         * generated/reshape_r16.c: Regenerated.
578         * generated/reshape_r4.c: Regenerated.
579         * generated/reshape_r8.c: Regenerated.
581 2017-03-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
583         PR libgfortran/78854
584         * io/list_read.c (nml_get_obj_data): Stash internal unit for
585         later use by child procedures.
586         * io/write.c (nml_write_obj): Likewise.
587         * io/tranfer.c (data_transfer_init): Minor whitespace.
588         * io/unit.c (set_internal_uit): Look for the stashed internal
589         unit and use it if found.
591 2017-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
593         PR libfortran/79956
594         * m4/iforeach.m4:  Change exit condition from loop for
595         increasing dimension to >=.  Fix type in comment.
596         * m4/ifunction.m4:  Likewise.
597         * m4/ifunction_logical.m4: Likewise.
598         * generated/all_l1.c: Regenerated.
599         * generated/all_l16.c: Regenerated.
600         * generated/all_l2.c: Regenerated.
601         * generated/all_l4.c: Regenerated.
602         * generated/all_l8.c: Regenerated.
603         * generated/any_l1.c: Regenerated.
604         * generated/any_l16.c: Regenerated.
605         * generated/any_l2.c: Regenerated.
606         * generated/any_l4.c: Regenerated.
607         * generated/any_l8.c: Regenerated.
608         * generated/count_16_l.c: Regenerated.
609         * generated/count_1_l.c: Regenerated.
610         * generated/count_2_l.c: Regenerated.
611         * generated/count_4_l.c: Regenerated.
612         * generated/count_8_l.c: Regenerated.
613         * generated/iall_i1.c: Regenerated.
614         * generated/iall_i16.c: Regenerated.
615         * generated/iall_i2.c: Regenerated.
616         * generated/iall_i4.c: Regenerated.
617         * generated/iall_i8.c: Regenerated.
618         * generated/iany_i1.c: Regenerated.
619         * generated/iany_i16.c: Regenerated.
620         * generated/iany_i2.c: Regenerated.
621         * generated/iany_i4.c: Regenerated.
622         * generated/iany_i8.c: Regenerated.
623         * generated/iparity_i1.c: Regenerated.
624         * generated/iparity_i16.c: Regenerated.
625         * generated/iparity_i2.c: Regenerated.
626         * generated/iparity_i4.c: Regenerated.
627         * generated/iparity_i8.c: Regenerated.
628         * generated/maxloc0_16_i1.c: Regenerated.
629         * generated/maxloc0_16_i16.c: Regenerated.
630         * generated/maxloc0_16_i2.c: Regenerated.
631         * generated/maxloc0_16_i4.c: Regenerated.
632         * generated/maxloc0_16_i8.c: Regenerated.
633         * generated/maxloc0_16_r10.c: Regenerated.
634         * generated/maxloc0_16_r16.c: Regenerated.
635         * generated/maxloc0_16_r4.c: Regenerated.
636         * generated/maxloc0_16_r8.c: Regenerated.
637         * generated/maxloc0_4_i1.c: Regenerated.
638         * generated/maxloc0_4_i16.c: Regenerated.
639         * generated/maxloc0_4_i2.c: Regenerated.
640         * generated/maxloc0_4_i4.c: Regenerated.
641         * generated/maxloc0_4_i8.c: Regenerated.
642         * generated/maxloc0_4_r10.c: Regenerated.
643         * generated/maxloc0_4_r16.c: Regenerated.
644         * generated/maxloc0_4_r4.c: Regenerated.
645         * generated/maxloc0_4_r8.c: Regenerated.
646         * generated/maxloc0_8_i1.c: Regenerated.
647         * generated/maxloc0_8_i16.c: Regenerated.
648         * generated/maxloc0_8_i2.c: Regenerated.
649         * generated/maxloc0_8_i4.c: Regenerated.
650         * generated/maxloc0_8_i8.c: Regenerated.
651         * generated/maxloc0_8_r10.c: Regenerated.
652         * generated/maxloc0_8_r16.c: Regenerated.
653         * generated/maxloc0_8_r4.c: Regenerated.
654         * generated/maxloc0_8_r8.c: Regenerated.
655         * generated/maxloc1_16_i1.c: Regenerated.
656         * generated/maxloc1_16_i16.c: Regenerated.
657         * generated/maxloc1_16_i2.c: Regenerated.
658         * generated/maxloc1_16_i4.c: Regenerated.
659         * generated/maxloc1_16_i8.c: Regenerated.
660         * generated/maxloc1_16_r10.c: Regenerated.
661         * generated/maxloc1_16_r16.c: Regenerated.
662         * generated/maxloc1_16_r4.c: Regenerated.
663         * generated/maxloc1_16_r8.c: Regenerated.
664         * generated/maxloc1_4_i1.c: Regenerated.
665         * generated/maxloc1_4_i16.c: Regenerated.
666         * generated/maxloc1_4_i2.c: Regenerated.
667         * generated/maxloc1_4_i4.c: Regenerated.
668         * generated/maxloc1_4_i8.c: Regenerated.
669         * generated/maxloc1_4_r10.c: Regenerated.
670         * generated/maxloc1_4_r16.c: Regenerated.
671         * generated/maxloc1_4_r4.c: Regenerated.
672         * generated/maxloc1_4_r8.c: Regenerated.
673         * generated/maxloc1_8_i1.c: Regenerated.
674         * generated/maxloc1_8_i16.c: Regenerated.
675         * generated/maxloc1_8_i2.c: Regenerated.
676         * generated/maxloc1_8_i4.c: Regenerated.
677         * generated/maxloc1_8_i8.c: Regenerated.
678         * generated/maxloc1_8_r10.c: Regenerated.
679         * generated/maxloc1_8_r16.c: Regenerated.
680         * generated/maxloc1_8_r4.c: Regenerated.
681         * generated/maxloc1_8_r8.c: Regenerated.
682         * generated/maxval_i1.c: Regenerated.
683         * generated/maxval_i16.c: Regenerated.
684         * generated/maxval_i2.c: Regenerated.
685         * generated/maxval_i4.c: Regenerated.
686         * generated/maxval_i8.c: Regenerated.
687         * generated/maxval_r10.c: Regenerated.
688         * generated/maxval_r16.c: Regenerated.
689         * generated/maxval_r4.c: Regenerated.
690         * generated/maxval_r8.c: Regenerated.
691         * generated/minloc0_16_i1.c: Regenerated.
692         * generated/minloc0_16_i16.c: Regenerated.
693         * generated/minloc0_16_i2.c: Regenerated.
694         * generated/minloc0_16_i4.c: Regenerated.
695         * generated/minloc0_16_i8.c: Regenerated.
696         * generated/minloc0_16_r10.c: Regenerated.
697         * generated/minloc0_16_r16.c: Regenerated.
698         * generated/minloc0_16_r4.c: Regenerated.
699         * generated/minloc0_16_r8.c: Regenerated.
700         * generated/minloc0_4_i1.c: Regenerated.
701         * generated/minloc0_4_i16.c: Regenerated.
702         * generated/minloc0_4_i2.c: Regenerated.
703         * generated/minloc0_4_i4.c: Regenerated.
704         * generated/minloc0_4_i8.c: Regenerated.
705         * generated/minloc0_4_r10.c: Regenerated.
706         * generated/minloc0_4_r16.c: Regenerated.
707         * generated/minloc0_4_r4.c: Regenerated.
708         * generated/minloc0_4_r8.c: Regenerated.
709         * generated/minloc0_8_i1.c: Regenerated.
710         * generated/minloc0_8_i16.c: Regenerated.
711         * generated/minloc0_8_i2.c: Regenerated.
712         * generated/minloc0_8_i4.c: Regenerated.
713         * generated/minloc0_8_i8.c: Regenerated.
714         * generated/minloc0_8_r10.c: Regenerated.
715         * generated/minloc0_8_r16.c: Regenerated.
716         * generated/minloc0_8_r4.c: Regenerated.
717         * generated/minloc0_8_r8.c: Regenerated.
718         * generated/minloc1_16_i1.c: Regenerated.
719         * generated/minloc1_16_i16.c: Regenerated.
720         * generated/minloc1_16_i2.c: Regenerated.
721         * generated/minloc1_16_i4.c: Regenerated.
722         * generated/minloc1_16_i8.c: Regenerated.
723         * generated/minloc1_16_r10.c: Regenerated.
724         * generated/minloc1_16_r16.c: Regenerated.
725         * generated/minloc1_16_r4.c: Regenerated.
726         * generated/minloc1_16_r8.c: Regenerated.
727         * generated/minloc1_4_i1.c: Regenerated.
728         * generated/minloc1_4_i16.c: Regenerated.
729         * generated/minloc1_4_i2.c: Regenerated.
730         * generated/minloc1_4_i4.c: Regenerated.
731         * generated/minloc1_4_i8.c: Regenerated.
732         * generated/minloc1_4_r10.c: Regenerated.
733         * generated/minloc1_4_r16.c: Regenerated.
734         * generated/minloc1_4_r4.c: Regenerated.
735         * generated/minloc1_4_r8.c: Regenerated.
736         * generated/minloc1_8_i1.c: Regenerated.
737         * generated/minloc1_8_i16.c: Regenerated.
738         * generated/minloc1_8_i2.c: Regenerated.
739         * generated/minloc1_8_i4.c: Regenerated.
740         * generated/minloc1_8_i8.c: Regenerated.
741         * generated/minloc1_8_r10.c: Regenerated.
742         * generated/minloc1_8_r16.c: Regenerated.
743         * generated/minloc1_8_r4.c: Regenerated.
744         * generated/minloc1_8_r8.c: Regenerated.
745         * generated/minval_i1.c: Regenerated.
746         * generated/minval_i16.c: Regenerated.
747         * generated/minval_i2.c: Regenerated.
748         * generated/minval_i4.c: Regenerated.
749         * generated/minval_i8.c: Regenerated.
750         * generated/minval_r10.c: Regenerated.
751         * generated/minval_r16.c: Regenerated.
752         * generated/minval_r4.c: Regenerated.
753         * generated/minval_r8.c: Regenerated.
754         * generated/norm2_r10.c: Regenerated.
755         * generated/norm2_r16.c: Regenerated.
756         * generated/norm2_r4.c: Regenerated.
757         * generated/norm2_r8.c: Regenerated.
758         * generated/parity_l1.c: Regenerated.
759         * generated/parity_l16.c: Regenerated.
760         * generated/parity_l2.c: Regenerated.
761         * generated/parity_l4.c: Regenerated.
762         * generated/parity_l8.c: Regenerated.
763         * generated/product_c10.c: Regenerated.
764         * generated/product_c16.c: Regenerated.
765         * generated/product_c4.c: Regenerated.
766         * generated/product_c8.c: Regenerated.
767         * generated/product_i1.c: Regenerated.
768         * generated/product_i16.c: Regenerated.
769         * generated/product_i2.c: Regenerated.
770         * generated/product_i4.c: Regenerated.
771         * generated/product_i8.c: Regenerated.
772         * generated/product_r10.c: Regenerated.
773         * generated/product_r16.c: Regenerated.
774         * generated/product_r4.c: Regenerated.
775         * generated/product_r8.c: Regenerated.
776         * generated/sum_c10.c: Regenerated.
777         * generated/sum_c16.c: Regenerated.
778         * generated/sum_c4.c: Regenerated.
779         * generated/sum_c8.c: Regenerated.
780         * generated/sum_i1.c: Regenerated.
781         * generated/sum_i16.c: Regenerated.
782         * generated/sum_i2.c: Regenerated.
783         * generated/sum_i4.c: Regenerated.
784         * generated/sum_i8.c: Regenerated.
785         * generated/sum_r10.c: Regenerated.
786         * generated/sum_r16.c: Regenerated.
787         * generated/sum_r4.c: Regenerated.
788         * generated/sum_r8.c: Regenerated.
790 2017-03-05  Andre Vehreschild  <vehre@gcc.gnu.org>
791             Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
793         * caf/libcaf.h: Added prototypes and stat codes for failed and stopped
794         images.
795         * caf/single.c (void _gfortran_caf_fail_image): Add the routine.
796         (int _gfortran_caf_image_status): Same.
797         (_gfortran_caf_failed_images): Same.
798         (_gfortran_caf_stopped_images): Same.
800 2017-03-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
801             Jakub Jelinek  <jakub@redhat.com>
803         * m4/matmul.m4 (matmul_'rtype_code`):  Avoid
804         race condition on storing function pointer.
805         * generated/matmul_c10.c: Regenerated.
806         * generated/matmul_c16.c: Regenerated.
807         * generated/matmul_c4.c: Regenerated.
808         * generated/matmul_c8.c: Regenerated.
809         * generated/matmul_i1.c: Regenerated.
810         * generated/matmul_i16.c: Regenerated.
811         * generated/matmul_i2.c: Regenerated.
812         * generated/matmul_i4.c: Regenerated.
813         * generated/matmul_i8.c: Regenerated.
814         * generated/matmul_r10.c: Regenerated.
815         * generated/matmul_r16.c: Regenerated.
816         * generated/matmul_r4.c: Regenerated.
817         * generated/matmul_r8.c: Regenerated.
819 2017-03-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
821         PR fortran/78379
822         * m4/matmul.m4: (matmul_'rtype_code`_avx2): Also generate for
823         reals.  Add fma to target options.
824         (matmul_'rtype_code`):  Call AVX2 only if FMA is available.
825         * generated/matmul_c10.c: Regenerated.
826         * generated/matmul_c16.c: Regenerated.
827         * generated/matmul_c4.c: Regenerated.
828         * generated/matmul_c8.c: Regenerated.
829         * generated/matmul_i1.c: Regenerated.
830         * generated/matmul_i16.c: Regenerated.
831         * generated/matmul_i2.c: Regenerated.
832         * generated/matmul_i4.c: Regenerated.
833         * generated/matmul_i8.c: Regenerated.
834         * generated/matmul_r10.c: Regenerated.
835         * generated/matmul_r16.c: Regenerated.
836         * generated/matmul_r4.c: Regenerated.
837         * generated/matmul_r8.c: Regenerated.
839 2017-02-27  Janne Blomqvist  <jb@gcc.gnu.org>
841         * intrinsics/random.c (getosrandom): Don't try to use rand_s on
842         CYGWIN.
844 2017-02-16  Paul Thomas  <pault@gcc.gnu.org>
846         PR fortran/79382
847         * io/transfer.c (check_dtio_proc): New function.
848         (formatted_transfer_scalar_read): Use it.
849         (formatted_transfer_scalar_write): ditto.
851 2017-01-31  Steven G. Kargl  <kargl@gcc.gnu.org>
853         PR fortran/79305
854         * c99_protos.h: Spell HAVE_EXPL correctly.
855         * intrinsics/c99_functions.c: Ditto.
857 2017-01-19  Uros Bizjak  <ubizjak@gmail.com>
859         PR target/78478
860         * acinclude.m4: Include ../config/ax_check_define.m4
861         * configure.ac: Check if _SOFT_FLOAT is defined.
862         * configure.host (i?86 | x86_64): Use fpu-generic when
863         have_soft_float is set.
864         * configure: Regenerate.
866 2017-01-19  Jakub Jelinek  <jakub@redhat.com>
868         PR target/79127
869         * acinclude.m4 (LIBGFOR_CHECK_AVX512F): Ensure the test clobbers
870         some zmm16+ registers to verify they are handled by unwind info
871         properly if needed.
872         * configure: Regenerated.
874 2017-01-17  Jakub Jelinek  <jakub@redhat.com>
876         PR other/79046
877         * configure.ac: Add GCC_BASE_VER.
878         * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
879         get version from BASE-VER file.
880         * configure: Regenerated.
881         * Makefile.in: Regenerated.
883 2017-01-13  Andre Vehreschild  <vehre@gcc.gnu.org>
885         PR fortran/70696
886         * caf/single.c (_gfortran_caf_register): Allocate enough memory for
887         the event counter.
889 2017-01-07  Andre Vehreschild  <vehre@gcc.gnu.org>
891         PR fortran/78781
892         PR fortran/78935
893         * caf/single.c (send_by_ref): Fix addressing of non-allocatable scalar
894         destination components.
896 2017-01-01  Jakub Jelinek  <jakub@redhat.com>
898         Update copyright years.
900 Copyright (C) 2017 Free Software Foundation, Inc.
902 Copying and distribution of this file, with or without modification,
903 are permitted in any medium without royalty provided the copyright
904 notice and this notice are preserved.