2018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
[official-gcc.git] / libgfortran / ChangeLog
blob4e9c5c7c7a46d6af7719eb0593dba2ac544c3c24
1 2018-06-01  Steven G. Kargl  <kargl@gcc.gnu.org>
3         PR fortran/85816
4         PR fortran/85975
5         * libgfortran.h: Remove the GFC_DTYPE_COPY_SETRANK macro.
6         * intrinsics/reshape_generic.c: Directly assign rank.
7         * intrinsics/spread_generic.c: Ditto.
8         * m4/iforeach-s.m4: Ditto.
9         * m4/iforeach.m4: Ditto.
10         * m4/ifunction-s.m4: Ditto.
11         * m4/ifunction-s2.m4: Ditto.
12         * m4/ifunction.m4: Ditto.
13         * m4/ifunction_logical.m4: Ditto.
14         * m4/reshape.m4: Ditto.
15         * m4/spread.m4: Ditto.
16         * generated/all_l1.c: Regenerated from m4 files.
17         * generated/all_l16.c: Ditto.
18         * generated/all_l2.c: Ditto.
19         * generated/all_l4.c: Ditto.
20         * generated/all_l8.c: Ditto.
21         * generated/any_l1.c: Ditto.
22         * generated/any_l16.c: Ditto.
23         * generated/any_l2.c: Ditto.
24         * generated/any_l4.c: Ditto.
25         * generated/any_l8.c: Ditto.
26         * generated/count_16_l.c: Ditto.
27         * generated/count_1_l.c: Ditto.
28         * generated/count_2_l.c: Ditto.
29         * generated/count_4_l.c: Ditto.
30         * generated/count_8_l.c: Ditto.
31         * generated/iall_i1.c: Ditto.
32         * generated/iall_i16.c: Ditto.
33         * generated/iall_i2.c: Ditto.
34         * generated/iall_i4.c: Ditto.
35         * generated/iall_i8.c: Ditto.
36         * generated/iany_i1.c: Ditto.
37         * generated/iany_i16.c: Ditto.
38         * generated/iany_i2.c: Ditto.
39         * generated/iany_i4.c: Ditto.
40         * generated/iany_i8.c: Ditto.
41         * generated/iparity_i1.c: Ditto.
42         * generated/iparity_i16.c: Ditto.
43         * generated/iparity_i2.c: Ditto.
44         * generated/iparity_i4.c: Ditto.
45         * generated/iparity_i8.c: Ditto.
46         * generated/maxloc0_16_i1.c: Ditto.
47         * generated/maxloc0_16_i16.c: Ditto.
48         * generated/maxloc0_16_i2.c: Ditto.
49         * generated/maxloc0_16_i4.c: Ditto.
50         * generated/maxloc0_16_i8.c: Ditto.
51         * generated/maxloc0_16_r10.c: Ditto.
52         * generated/maxloc0_16_r16.c: Ditto.
53         * generated/maxloc0_16_r4.c: Ditto.
54         * generated/maxloc0_16_r8.c: Ditto.
55         * generated/maxloc0_16_s1.c: Ditto.
56         * generated/maxloc0_16_s4.c: Ditto.
57         * generated/maxloc0_4_i1.c: Ditto.
58         * generated/maxloc0_4_i16.c: Ditto.
59         * generated/maxloc0_4_i2.c: Ditto.
60         * generated/maxloc0_4_i4.c: Ditto.
61         * generated/maxloc0_4_i8.c: Ditto.
62         * generated/maxloc0_4_r10.c: Ditto.
63         * generated/maxloc0_4_r16.c: Ditto.
64         * generated/maxloc0_4_r4.c: Ditto.
65         * generated/maxloc0_4_r8.c: Ditto.
66         * generated/maxloc0_4_s1.c: Ditto.
67         * generated/maxloc0_4_s4.c: Ditto.
68         * generated/maxloc0_8_i1.c: Ditto.
69         * generated/maxloc0_8_i16.c: Ditto.
70         * generated/maxloc0_8_i2.c: Ditto.
71         * generated/maxloc0_8_i4.c: Ditto.
72         * generated/maxloc0_8_i8.c: Ditto.
73         * generated/maxloc0_8_r10.c: Ditto.
74         * generated/maxloc0_8_r16.c: Ditto.
75         * generated/maxloc0_8_r4.c: Ditto.
76         * generated/maxloc0_8_r8.c: Ditto.
77         * generated/maxloc0_8_s1.c: Ditto.
78         * generated/maxloc0_8_s4.c: Ditto.
79         * generated/maxloc1_16_i1.c: Ditto.
80         * generated/maxloc1_16_i16.c: Ditto.
81         * generated/maxloc1_16_i2.c: Ditto.
82         * generated/maxloc1_16_i4.c: Ditto.
83         * generated/maxloc1_16_i8.c: Ditto.
84         * generated/maxloc1_16_r10.c: Ditto.
85         * generated/maxloc1_16_r16.c: Ditto.
86         * generated/maxloc1_16_r4.c: Ditto.
87         * generated/maxloc1_16_r8.c: Ditto.
88         * generated/maxloc1_16_s1.c: Ditto.
89         * generated/maxloc1_16_s4.c: Ditto.
90         * generated/maxloc1_4_i1.c: Ditto.
91         * generated/maxloc1_4_i16.c: Ditto.
92         * generated/maxloc1_4_i2.c: Ditto.
93         * generated/maxloc1_4_i4.c: Ditto.
94         * generated/maxloc1_4_i8.c: Ditto.
95         * generated/maxloc1_4_r10.c: Ditto.
96         * generated/maxloc1_4_r16.c: Ditto.
97         * generated/maxloc1_4_r4.c: Ditto.
98         * generated/maxloc1_4_r8.c: Ditto.
99         * generated/maxloc1_4_s1.c: Ditto.
100         * generated/maxloc1_4_s4.c: Ditto.
101         * generated/maxloc1_8_i1.c: Ditto.
102         * generated/maxloc1_8_i16.c: Ditto.
103         * generated/maxloc1_8_i2.c: Ditto.
104         * generated/maxloc1_8_i4.c: Ditto.
105         * generated/maxloc1_8_i8.c: Ditto.
106         * generated/maxloc1_8_r10.c: Ditto.
107         * generated/maxloc1_8_r16.c: Ditto.
108         * generated/maxloc1_8_r4.c: Ditto.
109         * generated/maxloc1_8_r8.c: Ditto.
110         * generated/maxloc1_8_s1.c: Ditto.
111         * generated/maxloc1_8_s4.c: Ditto.
112         * generated/maxval1_s1.c: Ditto.
113         * generated/maxval1_s4.c: Ditto.
114         * generated/maxval_i1.c: Ditto.
115         * generated/maxval_i16.c: Ditto.
116         * generated/maxval_i2.c: Ditto.
117         * generated/maxval_i4.c: Ditto.
118         * generated/maxval_i8.c: Ditto.
119         * generated/maxval_r10.c: Ditto.
120         * generated/maxval_r16.c: Ditto.
121         * generated/maxval_r4.c: Ditto.
122         * generated/maxval_r8.c: Ditto.
123         * generated/minloc0_16_i1.c: Ditto.
124         * generated/minloc0_16_i16.c: Ditto.
125         * generated/minloc0_16_i2.c: Ditto.
126         * generated/minloc0_16_i4.c: Ditto.
127         * generated/minloc0_16_i8.c: Ditto.
128         * generated/minloc0_16_r10.c: Ditto.
129         * generated/minloc0_16_r16.c: Ditto.
130         * generated/minloc0_16_r4.c: Ditto.
131         * generated/minloc0_16_r8.c: Ditto.
132         * generated/minloc0_16_s1.c: Ditto.
133         * generated/minloc0_16_s4.c: Ditto.
134         * generated/minloc0_4_i1.c: Ditto.
135         * generated/minloc0_4_i16.c: Ditto.
136         * generated/minloc0_4_i2.c: Ditto.
137         * generated/minloc0_4_i4.c: Ditto.
138         * generated/minloc0_4_i8.c: Ditto.
139         * generated/minloc0_4_r10.c: Ditto.
140         * generated/minloc0_4_r16.c: Ditto.
141         * generated/minloc0_4_r4.c: Ditto.
142         * generated/minloc0_4_r8.c: Ditto.
143         * generated/minloc0_4_s1.c: Ditto.
144         * generated/minloc0_4_s4.c: Ditto.
145         * generated/minloc0_8_i1.c: Ditto.
146         * generated/minloc0_8_i16.c: Ditto.
147         * generated/minloc0_8_i2.c: Ditto.
148         * generated/minloc0_8_i4.c: Ditto.
149         * generated/minloc0_8_i8.c: Ditto.
150         * generated/minloc0_8_r10.c: Ditto.
151         * generated/minloc0_8_r16.c: Ditto.
152         * generated/minloc0_8_r4.c: Ditto.
153         * generated/minloc0_8_r8.c: Ditto.
154         * generated/minloc0_8_s1.c: Ditto.
155         * generated/minloc0_8_s4.c: Ditto.
156         * generated/minloc1_16_i1.c: Ditto.
157         * generated/minloc1_16_i16.c: Ditto.
158         * generated/minloc1_16_i2.c: Ditto.
159         * generated/minloc1_16_i4.c: Ditto.
160         * generated/minloc1_16_i8.c: Ditto.
161         * generated/minloc1_16_r10.c: Ditto.
162         * generated/minloc1_16_r16.c: Ditto.
163         * generated/minloc1_16_r4.c: Ditto.
164         * generated/minloc1_16_r8.c: Ditto.
165         * generated/minloc1_16_s1.c: Ditto.
166         * generated/minloc1_16_s4.c: Ditto.
167         * generated/minloc1_4_i1.c: Ditto.
168         * generated/minloc1_4_i16.c: Ditto.
169         * generated/minloc1_4_i2.c: Ditto.
170         * generated/minloc1_4_i4.c: Ditto.
171         * generated/minloc1_4_i8.c: Ditto.
172         * generated/minloc1_4_r10.c: Ditto.
173         * generated/minloc1_4_r16.c: Ditto.
174         * generated/minloc1_4_r4.c: Ditto.
175         * generated/minloc1_4_r8.c: Ditto.
176         * generated/minloc1_4_s1.c: Ditto.
177         * generated/minloc1_4_s4.c: Ditto.
178         * generated/minloc1_8_i1.c: Ditto.
179         * generated/minloc1_8_i16.c: Ditto.
180         * generated/minloc1_8_i2.c: Ditto.
181         * generated/minloc1_8_i4.c: Ditto.
182         * generated/minloc1_8_i8.c: Ditto.
183         * generated/minloc1_8_r10.c: Ditto.
184         * generated/minloc1_8_r16.c: Ditto.
185         * generated/minloc1_8_r4.c: Ditto.
186         * generated/minloc1_8_r8.c: Ditto.
187         * generated/minloc1_8_s1.c: Ditto.
188         * generated/minloc1_8_s4.c: Ditto.
189         * generated/minval1_s1.c: Ditto.
190         * generated/minval1_s4.c: Ditto.
191         * generated/minval_i1.c: Ditto.
192         * generated/minval_i16.c: Ditto.
193         * generated/minval_i2.c: Ditto.
194         * generated/minval_i4.c: Ditto.
195         * generated/minval_i8.c: Ditto.
196         * generated/minval_r10.c: Ditto.
197         * generated/minval_r16.c: Ditto.
198         * generated/minval_r4.c: Ditto.
199         * generated/minval_r8.c: Ditto.
200         * generated/norm2_r10.c: Ditto.
201         * generated/norm2_r16.c: Ditto.
202         * generated/norm2_r4.c: Ditto.
203         * generated/norm2_r8.c: Ditto.
204         * generated/parity_l1.c: Ditto.
205         * generated/parity_l16.c: Ditto.
206         * generated/parity_l2.c: Ditto.
207         * generated/parity_l4.c: Ditto.
208         * generated/parity_l8.c: Ditto.
209         * generated/product_c10.c: Ditto.
210         * generated/product_c16.c: Ditto.
211         * generated/product_c4.c: Ditto.
212         * generated/product_c8.c: Ditto.
213         * generated/product_i1.c: Ditto.
214         * generated/product_i16.c: Ditto.
215         * generated/product_i2.c: Ditto.
216         * generated/product_i4.c: Ditto.
217         * generated/product_i8.c: Ditto.
218         * generated/product_r10.c: Ditto.
219         * generated/product_r16.c: Ditto.
220         * generated/product_r4.c: Ditto.
221         * generated/product_r8.c: Ditto.
222         * generated/reshape_c10.c: Ditto.
223         * generated/reshape_c16.c: Ditto.
224         * generated/reshape_c4.c: Ditto.
225         * generated/reshape_c8.c: Ditto.
226         * generated/reshape_i16.c: Ditto.
227         * generated/reshape_i4.c: Ditto.
228         * generated/reshape_i8.c: Ditto.
229         * generated/reshape_r10.c: Ditto.
230         * generated/reshape_r16.c: Ditto.
231         * generated/reshape_r4.c: Ditto.
232         * generated/reshape_r8.c: Ditto.
233         * generated/spread_c10.c: Ditto.
234         * generated/spread_c16.c: Ditto.
235         * generated/spread_c4.c: Ditto.
236         * generated/spread_c8.c: Ditto.
237         * generated/spread_i1.c: Ditto.
238         * generated/spread_i16.c: Ditto.
239         * generated/spread_i2.c: Ditto.
240         * generated/spread_i4.c: Ditto.
241         * generated/spread_i8.c: Ditto.
242         * generated/spread_r10.c: Ditto.
243         * generated/spread_r16.c: Ditto.
244         * generated/spread_r4.c: Ditto.
245         * generated/spread_r8.c: Ditto.
246         * generated/sum_c10.c: Ditto.
247         * generated/sum_c16.c: Ditto.
248         * generated/sum_c4.c: Ditto.
249         * generated/sum_c8.c: Ditto.
250         * generated/sum_i1.c: Ditto.
251         * generated/sum_i16.c: Ditto.
252         * generated/sum_i2.c: Ditto.
253         * generated/sum_i4.c: Ditto.
254         * generated/sum_i8.c: Ditto.
255         * generated/sum_r10.c: Ditto.
256         * generated/sum_r16.c: Ditto.
257         * generated/sum_r4.c: Ditto.
258         * generated/sum_r8.c: Ditto.
260 2018-06-01  Steven G. Kargl  <kargl@gcc.gnu.org>
262         PR fortran/63570
263         * libgfortran/Makefile.am: Add random_init.f90 to build.
264         * libgfortran/Makefile.in: Regenerated.
265         * libgfortran/gfortran.map: Expose symbol for _gfortran_random_init.
266         * libgfortran/intrinsics/random_init.f90: Implementation.
268 2018-05-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
270         PR libgfortran/85840
271         * io/write.c (write_real, write_real_g0, write_complex): Use
272         separate local variables for the float string length.
274 2018-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
276         PR libgfortran/85906
277         * io/write.c (write_integer): Initialise the fnode format to
278         FMT_NONE, used for list directed write.
279         (BUF_STACK_SZ): Bump default buffer size up to avoid allocs on
280         small stuff.
282 2018-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
284         PR libgfortran/85840
285         * io/write.c (write_float_0): Use separate local variable for
286         the float string length.
288 2018-05-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
290         PR fortran/54613
291         * m4/iforeach-s.m4: Remove assertion that back is zero.
292         * m4/iforeach.m4: Likewise.  Remove leading 'do'
293         before implementation start.
294         * m4/ifunction-s.m4: Remove assertion that back is zero.
295         * m4/ifunction.m4: Likewise.  Remove for loop if HAVE_BACK_ARG
296         is defined.
297         * m4/maxloc0.m4: Reorganize loops. Split loops between >= and =,
298         depending if back is true.  Mark the condition of having
299         found a value which exceeds the limit as unlikely.
300         * m4/minloc0.m4: Likewise.
301         * m4/maxloc1.m4: Likewise.
302         * m4/minloc1.m4: Likewise.
303         * m4/maxloc1s.m4: Handle back argument.
304         * m4/minloc1s.m4: Likewise.
305         * m4/maxloc2s.m4: Remove assertion that back is zero.
306         Remove special handling of loop start. Handle back argument.
307         * m4/minloc2s.m4: Likewise.
308         * generated/iall_i1.c: Regenerated.
309         * generated/iall_i16.c: Regenerated.
310         * generated/iall_i2.c: Regenerated.
311         * generated/iall_i4.c: Regenerated.
312         * generated/iall_i8.c: Regenerated.
313         * generated/iany_i1.c: Regenerated.
314         * generated/iany_i16.c: Regenerated.
315         * generated/iany_i2.c: Regenerated.
316         * generated/iany_i4.c: Regenerated.
317         * generated/iany_i8.c: Regenerated.
318         * generated/iparity_i1.c: Regenerated.
319         * generated/iparity_i16.c: Regenerated.
320         * generated/iparity_i2.c: Regenerated.
321         * generated/iparity_i4.c: Regenerated.
322         * generated/iparity_i8.c: Regenerated.
323         * generated/maxloc0_16_i1.c: Regenerated.
324         * generated/maxloc0_16_i16.c: Regenerated.
325         * generated/maxloc0_16_i2.c: Regenerated.
326         * generated/maxloc0_16_i4.c: Regenerated.
327         * generated/maxloc0_16_i8.c: Regenerated.
328         * generated/maxloc0_16_r10.c: Regenerated.
329         * generated/maxloc0_16_r16.c: Regenerated.
330         * generated/maxloc0_16_r4.c: Regenerated.
331         * generated/maxloc0_16_r8.c: Regenerated.
332         * generated/maxloc0_16_s1.c: Regenerated.
333         * generated/maxloc0_16_s4.c: Regenerated.
334         * generated/maxloc0_4_i1.c: Regenerated.
335         * generated/maxloc0_4_i16.c: Regenerated.
336         * generated/maxloc0_4_i2.c: Regenerated.
337         * generated/maxloc0_4_i4.c: Regenerated.
338         * generated/maxloc0_4_i8.c: Regenerated.
339         * generated/maxloc0_4_r10.c: Regenerated.
340         * generated/maxloc0_4_r16.c: Regenerated.
341         * generated/maxloc0_4_r4.c: Regenerated.
342         * generated/maxloc0_4_r8.c: Regenerated.
343         * generated/maxloc0_4_s1.c: Regenerated.
344         * generated/maxloc0_4_s4.c: Regenerated.
345         * generated/maxloc0_8_i1.c: Regenerated.
346         * generated/maxloc0_8_i16.c: Regenerated.
347         * generated/maxloc0_8_i2.c: Regenerated.
348         * generated/maxloc0_8_i4.c: Regenerated.
349         * generated/maxloc0_8_i8.c: Regenerated.
350         * generated/maxloc0_8_r10.c: Regenerated.
351         * generated/maxloc0_8_r16.c: Regenerated.
352         * generated/maxloc0_8_r4.c: Regenerated.
353         * generated/maxloc0_8_r8.c: Regenerated.
354         * generated/maxloc0_8_s1.c: Regenerated.
355         * generated/maxloc0_8_s4.c: Regenerated.
356         * generated/maxloc1_16_i1.c: Regenerated.
357         * generated/maxloc1_16_i16.c: Regenerated.
358         * generated/maxloc1_16_i2.c: Regenerated.
359         * generated/maxloc1_16_i4.c: Regenerated.
360         * generated/maxloc1_16_i8.c: Regenerated.
361         * generated/maxloc1_16_r10.c: Regenerated.
362         * generated/maxloc1_16_r16.c: Regenerated.
363         * generated/maxloc1_16_r4.c: Regenerated.
364         * generated/maxloc1_16_r8.c: Regenerated.
365         * generated/maxloc1_16_s1.c: Regenerated.
366         * generated/maxloc1_16_s4.c: Regenerated.
367         * generated/maxloc1_4_i1.c: Regenerated.
368         * generated/maxloc1_4_i16.c: Regenerated.
369         * generated/maxloc1_4_i2.c: Regenerated.
370         * generated/maxloc1_4_i4.c: Regenerated.
371         * generated/maxloc1_4_i8.c: Regenerated.
372         * generated/maxloc1_4_r10.c: Regenerated.
373         * generated/maxloc1_4_r16.c: Regenerated.
374         * generated/maxloc1_4_r4.c: Regenerated.
375         * generated/maxloc1_4_r8.c: Regenerated.
376         * generated/maxloc1_4_s1.c: Regenerated.
377         * generated/maxloc1_4_s4.c: Regenerated.
378         * generated/maxloc1_8_i1.c: Regenerated.
379         * generated/maxloc1_8_i16.c: Regenerated.
380         * generated/maxloc1_8_i2.c: Regenerated.
381         * generated/maxloc1_8_i4.c: Regenerated.
382         * generated/maxloc1_8_i8.c: Regenerated.
383         * generated/maxloc1_8_r10.c: Regenerated.
384         * generated/maxloc1_8_r16.c: Regenerated.
385         * generated/maxloc1_8_r4.c: Regenerated.
386         * generated/maxloc1_8_r8.c: Regenerated.
387         * generated/maxloc1_8_s1.c: Regenerated.
388         * generated/maxloc1_8_s4.c: Regenerated.
389         * generated/maxloc2_16_s1.c: Regenerated.
390         * generated/maxloc2_16_s4.c: Regenerated.
391         * generated/maxloc2_4_s1.c: Regenerated.
392         * generated/maxloc2_4_s4.c: Regenerated.
393         * generated/maxloc2_8_s1.c: Regenerated.
394         * generated/maxloc2_8_s4.c: Regenerated.
395         * generated/maxval_i1.c: Regenerated.
396         * generated/maxval_i16.c: Regenerated.
397         * generated/maxval_i2.c: Regenerated.
398         * generated/maxval_i4.c: Regenerated.
399         * generated/maxval_i8.c: Regenerated.
400         * generated/maxval_r10.c: Regenerated.
401         * generated/maxval_r16.c: Regenerated.
402         * generated/maxval_r4.c: Regenerated.
403         * generated/maxval_r8.c: Regenerated.
404         * generated/minloc0_16_i1.c: Regenerated.
405         * generated/minloc0_16_i16.c: Regenerated.
406         * generated/minloc0_16_i2.c: Regenerated.
407         * generated/minloc0_16_i4.c: Regenerated.
408         * generated/minloc0_16_i8.c: Regenerated.
409         * generated/minloc0_16_r10.c: Regenerated.
410         * generated/minloc0_16_r16.c: Regenerated.
411         * generated/minloc0_16_r4.c: Regenerated.
412         * generated/minloc0_16_r8.c: Regenerated.
413         * generated/minloc0_16_s1.c: Regenerated.
414         * generated/minloc0_16_s4.c: Regenerated.
415         * generated/minloc0_4_i1.c: Regenerated.
416         * generated/minloc0_4_i16.c: Regenerated.
417         * generated/minloc0_4_i2.c: Regenerated.
418         * generated/minloc0_4_i4.c: Regenerated.
419         * generated/minloc0_4_i8.c: Regenerated.
420         * generated/minloc0_4_r10.c: Regenerated.
421         * generated/minloc0_4_r16.c: Regenerated.
422         * generated/minloc0_4_r4.c: Regenerated.
423         * generated/minloc0_4_r8.c: Regenerated.
424         * generated/minloc0_4_s1.c: Regenerated.
425         * generated/minloc0_4_s4.c: Regenerated.
426         * generated/minloc0_8_i1.c: Regenerated.
427         * generated/minloc0_8_i16.c: Regenerated.
428         * generated/minloc0_8_i2.c: Regenerated.
429         * generated/minloc0_8_i4.c: Regenerated.
430         * generated/minloc0_8_i8.c: Regenerated.
431         * generated/minloc0_8_r10.c: Regenerated.
432         * generated/minloc0_8_r16.c: Regenerated.
433         * generated/minloc0_8_r4.c: Regenerated.
434         * generated/minloc0_8_r8.c: Regenerated.
435         * generated/minloc0_8_s1.c: Regenerated.
436         * generated/minloc0_8_s4.c: Regenerated.
437         * generated/minloc1_16_i1.c: Regenerated.
438         * generated/minloc1_16_i16.c: Regenerated.
439         * generated/minloc1_16_i2.c: Regenerated.
440         * generated/minloc1_16_i4.c: Regenerated.
441         * generated/minloc1_16_i8.c: Regenerated.
442         * generated/minloc1_16_r10.c: Regenerated.
443         * generated/minloc1_16_r16.c: Regenerated.
444         * generated/minloc1_16_r4.c: Regenerated.
445         * generated/minloc1_16_r8.c: Regenerated.
446         * generated/minloc1_16_s1.c: Regenerated.
447         * generated/minloc1_16_s4.c: Regenerated.
448         * generated/minloc1_4_i1.c: Regenerated.
449         * generated/minloc1_4_i16.c: Regenerated.
450         * generated/minloc1_4_i2.c: Regenerated.
451         * generated/minloc1_4_i4.c: Regenerated.
452         * generated/minloc1_4_i8.c: Regenerated.
453         * generated/minloc1_4_r10.c: Regenerated.
454         * generated/minloc1_4_r16.c: Regenerated.
455         * generated/minloc1_4_r4.c: Regenerated.
456         * generated/minloc1_4_r8.c: Regenerated.
457         * generated/minloc1_4_s1.c: Regenerated.
458         * generated/minloc1_4_s4.c: Regenerated.
459         * generated/minloc1_8_i1.c: Regenerated.
460         * generated/minloc1_8_i16.c: Regenerated.
461         * generated/minloc1_8_i2.c: Regenerated.
462         * generated/minloc1_8_i4.c: Regenerated.
463         * generated/minloc1_8_i8.c: Regenerated.
464         * generated/minloc1_8_r10.c: Regenerated.
465         * generated/minloc1_8_r16.c: Regenerated.
466         * generated/minloc1_8_r4.c: Regenerated.
467         * generated/minloc1_8_r8.c: Regenerated.
468         * generated/minloc1_8_s1.c: Regenerated.
469         * generated/minloc1_8_s4.c: Regenerated.
470         * generated/minloc2_16_s1.c: Regenerated.
471         * generated/minloc2_16_s4.c: Regenerated.
472         * generated/minloc2_4_s1.c: Regenerated.
473         * generated/minloc2_4_s4.c: Regenerated.
474         * generated/minloc2_8_s1.c: Regenerated.
475         * generated/minloc2_8_s4.c: Regenerated.
476         * generated/minval_i1.c: Regenerated.
477         * generated/minval_i16.c: Regenerated.
478         * generated/minval_i2.c: Regenerated.
479         * generated/minval_i4.c: Regenerated.
480         * generated/minval_i8.c: Regenerated.
481         * generated/minval_r10.c: Regenerated.
482         * generated/minval_r16.c: Regenerated.
483         * generated/minval_r4.c: Regenerated.
484         * generated/minval_r8.c: Regenerated.
485         * generated/norm2_r10.c: Regenerated.
486         * generated/norm2_r16.c: Regenerated.
487         * generated/norm2_r4.c: Regenerated.
488         * generated/norm2_r8.c: Regenerated.
489         * generated/parity_l1.c: Regenerated.
490         * generated/parity_l16.c: Regenerated.
491         * generated/parity_l2.c: Regenerated.
492         * generated/parity_l4.c: Regenerated.
493         * generated/parity_l8.c: Regenerated.
494         * generated/product_c10.c: Regenerated.
495         * generated/product_c16.c: Regenerated.
496         * generated/product_c4.c: Regenerated.
497         * generated/product_c8.c: Regenerated.
498         * generated/product_i1.c: Regenerated.
499         * generated/product_i16.c: Regenerated.
500         * generated/product_i2.c: Regenerated.
501         * generated/product_i4.c: Regenerated.
502         * generated/product_i8.c: Regenerated.
503         * generated/product_r10.c: Regenerated.
504         * generated/product_r16.c: Regenerated.
505         * generated/product_r4.c: Regenerated.
506         * generated/product_r8.c: Regenerated.
507         * generated/sum_c10.c: Regenerated.
508         * generated/sum_c16.c: Regenerated.
509         * generated/sum_c4.c: Regenerated.
510         * generated/sum_c8.c: Regenerated.
511         * generated/sum_i1.c: Regenerated.
512         * generated/sum_i16.c: Regenerated.
513         * generated/sum_i2.c: Regenerated.
514         * generated/sum_i4.c: Regenerated.
515         * generated/sum_i8.c: Regenerated.
516         * generated/sum_r10.c: Regenerated.
517         * generated/sum_r16.c: Regenerated.
518         * generated/sum_r4.c: Regenerated.
519         * generated/sum_r8.c: Regenerated.
521 2018-04-24  H.J. Lu  <hongjiu.lu@intel.com>
523         * configure: Regenerated.
525 2018-04-19  Thomas Schwinge  <thomas@codesourcery.com>
527         PR libfortran/85166
528         PR libgomp/85463
529         * runtime/minimal.c (stop_numeric): Reimplement.
530         (stop_string, error_stop_string, error_stop_numeric): New
531         functions.
533 2018-04-19  Jakub Jelinek  <jakub@redhat.com>
535         * configure: Regenerated.
537 2018-04-18  David Malcolm  <dmalcolm@redhat.com>
539         PR jit/85384
540         * configure: Regenerate.
542 2018-04-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
544         PR libfortran/85253
545         * m4/matmul_internal.m4: If ycount == 1, add one more row to
546         the internal buffer.
547         * generated/matmul_c10.c: Regenerated.
548         * generated/matmul_c16.c: Regenerated.
549         * generated/matmul_c4.c: Regenerated.
550         * generated/matmul_c8.c: Regenerated.
551         * generated/matmul_i1.c: Regenerated.
552         * generated/matmul_i16.c: Regenerated.
553         * generated/matmul_i2.c: Regenerated.
554         * generated/matmul_i4.c: Regenerated.
555         * generated/matmul_i8.c: Regenerated.
556         * generated/matmul_r10.c: Regenerated.
557         * generated/matmul_r16.c: Regenerated.
558         * generated/matmul_r4.c: Regenerated.
559         * generated/matmul_r8.c: Regenerated.
560         * generated/matmulavx128_c10.c: Regenerated.
561         * generated/matmulavx128_c16.c: Regenerated.
562         * generated/matmulavx128_c4.c: Regenerated.
563         * generated/matmulavx128_c8.c: Regenerated.
564         * generated/matmulavx128_i1.c: Regenerated.
565         * generated/matmulavx128_i16.c: Regenerated.
566         * generated/matmulavx128_i2.c: Regenerated.
567         * generated/matmulavx128_i4.c: Regenerated.
568         * generated/matmulavx128_i8.c: Regenerated.
569         * generated/matmulavx128_r10.c: Regenerated.
570         * generated/matmulavx128_r16.c: Regenerated.
571         * generated/matmulavx128_r4.c: Regenerated.
572         * generated/matmulavx128_r8.c: Regenerated.
574 2018-04-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
576         PR libfortran/85166
577         * runtime/minimal.c (stop_numeric): Add new function in order to
578         implement numeric stop on minimal targets.
580 2018-03-28  Jakub Jelinek  <jakub@redhat.com>
582         * io/io.h (IOPARM_DT_DEFAULT_EXP): Rename to ...
583         (IOPARM_DT_DEC_EXT): ... this.
584         * io/list_read.c (parse_real): Adjust for IOPARM_DT_DEFAULT_EXP
585         renaming to IOPARM_DT_DEC_EXT.
586         (read_real): Likewise.
587         * io/read.c (read_f): Likewise.
589 2018-03-15  Jakub Jelinek  <jakub@redhat.com>
591         PR libgfortran/84880
592         * intrinsics/kill.c (kill): Rename to...
593         (PREFIX (kill)): ... this.  Use export_proto_np instead of export_proto.
595 2018-03-13  Steven G. Kargl  <kargl@gcc.gnu.org>
597         * libgfortran/gfortran.map: Remove _gfortran_kill_i4,
598         _gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
599         Add _gfortran_kill and _gfortran_kill_sub.
600         * libgfortran/intrinsics/kill.c: Eliminate _gfortran_kill_i4,
601         _gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
602         Add _gfortran_kill and _gfortran_kill_sub.
604 2018-02-23  Janne Blomqvist  <jb@gcc.gnu.org>
606         PR fortran/84519
607         * caf/libcaf.h (_gfortran_caf_stop_numeric): Add bool argument.
608         (_gfortran_caf_stop_str): Likewise.
609         (_gfortran_caf_error_stop_str): Likewise.
610         (_gfortran_caf_error_stop): Likewise.
611         * caf/mpi.c (_gfortran_caf_error_stop_str): Handle new argument.
612         (_gfortran_caf_error_stop): Likewise.
613         * caf/single.c (_gfortran_caf_stop_numeric): Likewise.
614         (_gfortran_caf_stop_str): Likewise.
615         (_gfortran_caf_error_stop_str): Likewise.
616         (_gfortran_caf_error_stop): Likewise.
617         (_gfortran_caf_lock): Likewise.
618         (_gfortran_caf_unlock): Likewise.
619         * libgfortran.h (stop_string): Add bool argument.
620         * runtime/pause.c (do_pause): Add false argument.
621         * runtime/stop.c (stop_numeric): Handle new argument.
622         (stop_string): Likewise.
623         (error_stop_string): Likewise.
624         (error_stop_numeric): Likewise.
626 2018-02-22  Janne Blomqvist  <jb@gcc.gnu.org>
628         PR 78534
629         PR 84509
630         * runtime/pause.c (pause_numeric): Modify to take GFC_INTEGER_8
631         argument.
632         (pause_string): Modify to take size_t character length argument.
634 2018-02-22  Janne Blomqvist  <jb@gcc.gnu.org>
636         * libgfortran.h (stop_string): Use size_t for character length.
637         * runtime/stop.c (stop_string): Likewise.
638         (error_stop_string): Likewise.
639         (stop_numeric): Use int for exit code.
640         (error_stop_numeric): Likewise.
641         * caf/libcaf.h: Remove stdint.h include.
642         (_gfortran_caf_register): Use size_t for character length.
643         (_gfortran_caf_deregister): Likewise.
644         (_gfortran_caf_sync_all): Likewise.
645         (_gfortran_caf_sync_memory): Likewise.
646         (_gfortran_caf_sync_images): Likewise.
647         (_gfortran_caf_stop_numeric): Use int for exit code.
648         (_gfortran_caf_stop_str): Use size_t for character length.
649         (_gfortran_caf_error_stop_str): Likewise.
650         (_gfortran_caf_error_stop): Use int for exit code.
651         (_gfortran_caf_co_broadcast): Use size_t for character length.
652         (_gfortran_caf_co_sum): Likewise.
653         (_gfortran_caf_co_min): Likewise.
654         (_gfortran_caf_co_max): Likewise.
655         (_gfortran_caf_co_reduce): Likewise.
656         (_gfortran_caf_lock): Likewise.
657         (_gfortran_caf_unlock): Likewise.
658         (_gfortran_caf_event_post): Likewise.
659         (_gfortran_caf_event_wait): Likewise.
660         * caf/mpi.c (_gfortran_caf_register): Update implementation to
661         match prototype.
662         (_gfortran_caf_deregister): Likewise.
663         (_gfortran_caf_sync_all): Likewise.
664         (_gfortran_caf_sync_images): Likewise.
665         (_gfortran_caf_error_stop_str): Likewise.
666         (_gfortran_caf_error_stop): Likewise.
667         * caf/single.c (caf_internal_error): Likewise.
668         (_gfortran_caf_register): Likewise.
669         (_gfortran_caf_deregister): Likewise.
670         (_gfortran_caf_sync_all): Likewise.
671         (_gfortran_caf_sync_memory): Likewise.
672         (_gfortran_caf_sync_images): Likewise.
673         (_gfortran_caf_stop_numeric): Likewise.
674         (_gfortran_caf_stop_str): Likewise.
675         (_gfortran_caf_error_stop_str): Likewise.
676         (_gfortran_caf_error_stop): Likewise.
677         (_gfortran_caf_co_broadcast): Likewise.
678         (_gfortran_caf_co_sum): Likewise.
679         (_gfortran_caf_co_min): Likewise.
680         (_gfortran_caf_co_max): Likewise.
681         (_gfortran_caf_co_reduce): Likewise.
682         (_gfortran_caf_event_post): Likewise.
683         (_gfortran_caf_event_wait): Likewise.
684         (_gfortran_caf_lock): Likewise.
685         (_gfortran_caf_unlock): Likewise.
687 2018-02-19  Andre Vehreschild  <vehre@gcc.gnu.org>
689         * caf/libcaf.h: Add type parameters to the caf_*_by_ref prototypes.
690         * caf/single.c (get_for_ref): Simplifications and now respecting
691         the type argument.
692         (_gfortran_caf_get_by_ref): Added source type handing to get_for_ref().
693         (send_by_ref): Simplifications and respecting the dst_type now.
694         (_gfortran_caf_send_by_ref): Added destination type hand over to
695         send_by_ref().
696         (_gfortran_caf_sendget_by_ref): Added general support and fixed stack
697         corruption.  The function is now really usable.
699 2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
701         PR target/84148
702         * configure: Regenerate.
704 2018-02-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
706         PR libgfortran/84412
707         * io/transfer.c (finalize_transfer): After completng an internal unit
708         I/O operation, clear internal_unit_kind.
710 2018-02-12  Thomas Koenig  <tkoenig@gcc.gnu.org>
712         * libgfortran.h (GFC_ARRAY_DESCRIPTOR): Remove dimension
713         of descriptor to use vaiable members for dim.
714         Change usage of GFC_ARRAY_DESCRIPTOR accordingly.
715         (GFC_FILL_ARRAY_DESCRIPTOR): New macro.
716         (gfc_full_array_i4): New type.
717         * intrinsics/date_and_time.c (secnds): Use sizeof
718         (gfc_array_i4) + sizeof (descriptor_dimension) for memory
719         allocation.
720         * intrinsics/reshape_generic.c: Use GFC_FULL_ARRAY_DESCRIPTOR.
721         * io/format.c: Use sizeof (gfc_array_i4) + sizeof
722         (descriptor_dimension) for memoy allocation.
723         * io/list_read.c (list_formatted_read_scalar): Use
724         gfc_full_array_i4 for variable.
725         (nml_read_obj): Likewise.
726         * io/write.c (list_formatted_write_scalar): Likewise.
727         (nml_write_obj): Likewise.
728         * m4/reshape.m4: Use GFC_FULL_ARRAY_DESCRIPTOR.
729         * generated/reshape_c10.c: Regenerated.
730         * generated/reshape_c16.c: Regenerated.
731         * generated/reshape_c4.c: Regenerated.
732         * generated/reshape_c8.c: Regenerated.
733         * generated/reshape_i16.c: Regenerated.
734         * generated/reshape_i4.c: Regenerated.
735         * generated/reshape_i8.c: Regenerated.
736         * generated/reshape_r10.c: Regenerated.
737         * generated/reshape_r16.c: Regenerated.
738         * generated/reshape_r4.c: Regenerated.
739         * generated/reshape_r8.c: Regenerated.
741 2018-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
743         * generated/cshift1_16.c (cshift1): Regenerated.
744         * generated/cshift1_4.c (cshift1): Regenerated.
745         * generated/cshift1_8.c (cshift1): Regenerated.
746         * generated/eoshift1_16.c (eoshift1): Regenerated.
747         * generated/eoshift1_4.c (eoshift1): Regenerated.
748         * generated/eoshift1_8.c (eoshift1): Regenerated.
749         * generated/eoshift3_16.c (eoshift3): Regenerated.
750         * generated/eoshift3_4.c (eoshift3): Regenerated.
751         * generated/eoshift3_8.c (eoshift3): Regenerated.
752         * generated/in_pack_c10.c (internal_pack_c10): Regenerated.
753         * generated/in_pack_c16.c (internal_pack_c16): Regenerated.
754         * generated/in_pack_c4.c (internal_pack_c4): Regenerated.
755         * generated/in_pack_c8.c (internal_pack_c8): Regenerated.
756         * generated/in_pack_i1.c (internal_pack_1): Regenerated.
757         * generated/in_pack_i16.c (internal_pack_16): Regenerated.
758         * generated/in_pack_i2.c (internal_pack_2): Regenerated.
759         * generated/in_pack_i4.c (internal_pack_4): Regenerated.
760         * generated/in_pack_i8.c (internal_pack_8): Regenerated.
761         * generated/in_pack_r10.c (internal_pack_r10): Regenerated.
762         * generated/in_pack_r16.c (internal_pack_r16): Regenerated.
763         * generated/in_pack_r4.c (internal_pack_r4): Regenerated.
764         * generated/in_pack_r8.c (internal_pack_r8): Regenerated.
765         * generated/in_unpack_c10.c (internal_unpack_c10): Regenerated.
766         * generated/in_unpack_c16.c (internal_unpack_c16): Regenerated.
767         * generated/in_unpack_c4.c (internal_unpack_c4): Regenerated.
768         * generated/in_unpack_c8.c (internal_unpack_c8): Regenerated.
769         * generated/in_unpack_i1.c (internal_unpack_1): Regenerated.
770         * generated/in_unpack_i16.c (internal_unpack_16): Regenerated.
771         * generated/in_unpack_i2.c (internal_unpack_2): Regenerated.
772         * generated/in_unpack_i4.c (internal_unpack_4): Regenerated.
773         * generated/in_unpack_i8.c (internal_unpack_8): Regenerated.
774         * generated/in_unpack_r10.c (internal_unpack_r10): Regenerated.
775         * generated/in_unpack_r16.c (internal_unpack_r16): Regenerated.
776         * generated/in_unpack_r4.c (internal_unpack_r4): Regenerated.
777         * generated/in_unpack_r8.c (internal_unpack_r8): Regenerated.
778         * generated/reshape_c10.c (reshape_c10): Regenerated.
779         * generated/reshape_c16.c (reshape_c16): Regenerated.
780         * generated/reshape_c4.c (reshape_c4): Regenerated.
781         * generated/reshape_c8.c (reshape_c8): Regenerated.
782         * generated/reshape_i16.c (reshape_16): Regenerated.
783         * generated/reshape_i4.c (reshape_4): Regenerated.
784         * generated/reshape_i8.c (reshape_8): Regenerated.
785         * generated/reshape_r10.c (reshape_r10): Regenerated.
786         * generated/reshape_r16.c (reshape_r16): Regenerated.
787         * generated/reshape_r4.c (reshape_r4): Regenerated.
788         * generated/reshape_r8.c (reshape_r8): Regenerated.
789         * generated/shape_i1.c (shape_1): Regenerated.
790         * generated/shape_i16.c (shape_16): Regenerated.
791         * generated/shape_i2.c (shape_2): Regenerated.
792         * generated/shape_i4.c (shape_4): Regenerated.
793         * generated/shape_i8.c (shape_8): Regenerated.
794         * generated/spread_c10.c (spread_scalar_c10): Regenerated.
795         * generated/spread_c16.c (spread_scalar_c16): Regenerated.
796         * generated/spread_c4.c (spread_scalar_c4): Regenerated.
797         * generated/spread_c8.c (spread_scalar_c8): Regenerated.
798         * generated/spread_i1.c (spread_scalar_i1): Regenerated.
799         * generated/spread_i16.c (spread_scalar_i16): Regenerated.
800         * generated/spread_i2.c (spread_scalar_i2): Regenerated.
801         * generated/spread_i4.c (spread_scalar_i4): Regenerated.
802         * generated/spread_i8.c (spread_scalar_i8): Regenerated.
803         * generated/spread_r10.c (spread_scalar_r10): Regenerated.
804         * generated/spread_r16.c (spread_scalar_r16): Regenerated.
805         * generated/spread_r4.c (spread_scalar_r4): Regenerated.
806         * generated/spread_r8.c (spread_scalar_r8): Regenerated.
807         * intrinsics/random.c (jump): Use size_t for array index in loop.
808         (getosrandom): Likewise.
809         (arandom_r4): Make n an index_type.
810         (arandom_r8): Likewise.
811         (arandom_r10): Likewise.
812         (arandom_r16): Likewise.
813         (scramble_seed): Use size_t for array index in loop.
814         * m4/cshift1.m4: Make i an index_type.
815         * m4/eoshift1.m4: Likewise.
816         * m4/eoshift3.m4: Likewise.
817         * m4/in_pack.m4: Make n an index_type.
818         * m4/in_unpack.m4: Likewise.
819         * m4/reshape.m4: Make n and dim index_type's.
820         * m4/shape.m4: Make n an index_type.
821         * m4/spread.m4: Likewise, use index_type argument rather than
822         copying to int.
823         * runtime/bounds.c (bounds_ifunction_return): Make n an
824         index_type.
825         * runtime/in_pack_generic.c (internal_pack): Likewise.
826         * runtime/in_unpack_generic.c (internal_unpack): Make n and size
827         index_type's.
829 2018-01-30  Thomas Koenig  <tkoenig@gcc.gnu.org>
831         PR fortran/37577
832         * libgfortran.h: Remove GFC_DTYPE_DERIVED_1, GFC_DTYPE_DERIVED_2,
833         GFC_DTYPE_DERIVED_4, GFC_DTYPE_DERIVED_8 and GFC_DTYPE_DERIVED_16.
834         * m4/cshift1.m4: Remove GFC_DTYPE_DERIVED_1.
835         * generated/cshift1_16.c: Regenerated.
836         * generated/cshift1_4.c: Regenerated.
837         * generated/cshift1_8.c: Regenerated.
838         * intrinsics/cshift0.c: Remove GFC_DTYPE_DERIVED_1.
839         * intrinsics/pack_generic.c (pack): Move handling of other types
840         into separate switch statement.
841         * intrinsics/spread_generic.c (spread): Likewise.
842         (spread_scalar): Likewise.
843         * intrinsics/unpack_generic.c (unpack1): Likewise.
844         (unpack0): Likewise.
845         * runtime/in_pack_generic.c (internal_pack): Likewise.
846         * runtime/in_unpack_generic.c (internal_unpack): Likewise.
848 2018-01-25  Paul Thomas  <pault@gcc.gnu.org>
850         PR fortran/37577
851         * caf/single.c (_gfortran_caf_failed_images): Access the 'type'
852         and 'elem_len' fields of the dtype instead of the shifts.
853         (_gfortran_caf_stopped_images): Likewise.
854         * intrinsics/associated.c (associated): Compare the 'type' and
855         'elem_len' fields instead of the dtype.
856         * caf/date_and_time.c : Access the dtype fields rather using
857         shifts and masks.
858         * io/transfer.c (transfer_array ): Comment on item count.
859         (set_nml_var,st_set_nml_var): Change dtype type and use fields.
860         (st_set_nml_dtio_var): Likewise.
861         * libgfortran.h : Change definition of GFC_ARRAY_DESCRIPTOR and
862         add a typedef for the dtype_type. Change the GFC_DTYPE_* macros
863         to access the dtype fields.
865 2018-01-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
867         PR fortran/54613
868         * m4/iparm.m4: Add back_arg macro if in minloc or maxloc.
869         * m4/iforeach-s.m4: Add optional argument back with back_arg
870         macro. Improve m4 quoting. If HAVE_BACK_ARG is defined, assert
871         that back is non-true.
872         * m4/iforeach.m4: Likewise.
873         * m4/ifunction-s.m4: Likewise.
874         * m4/ifunction.m4: Likewise.
875         * m4/maxloc0.m4: Include assert.h
876         * m4/minloc0.m4: Likewise.
877         * m4/maxloc0s.m4: #define HAVE_BACK_ARG.
878         * m4/minloc0s.m4: Likewise.
879         * m4/maxloc1s.m4: Likewise.
880         * m4/minloc1s.m4: Likewise.
881         * m4/maxloc1.m4: Include assert.h, #define HAVE_BACK_ARG.
882         * m4/minloc1.m4: Likewise.
883         * m4/maxloc2s.m4: Add assert.h, add back_arg, assert that
884         back is non-true.
885         * m4/minloc2s.m4: Likewise.
886         * generated/iall_i1.c: Regenerated.
887         * generated/iall_i16.c: Regenerated.
888         * generated/iall_i2.c: Regenerated.
889         * generated/iall_i4.c: Regenerated.
890         * generated/iall_i8.c: Regenerated.
891         * generated/iany_i1.c: Regenerated.
892         * generated/iany_i16.c: Regenerated.
893         * generated/iany_i2.c: Regenerated.
894         * generated/iany_i4.c: Regenerated.
895         * generated/iany_i8.c: Regenerated.
896         * generated/iparity_i1.c: Regenerated.
897         * generated/iparity_i16.c: Regenerated.
898         * generated/iparity_i2.c: Regenerated.
899         * generated/iparity_i4.c: Regenerated.
900         * generated/iparity_i8.c: Regenerated.
901         * generated/maxloc0_16_i1.c: Regenerated.
902         * generated/maxloc0_16_i16.c: Regenerated.
903         * generated/maxloc0_16_i2.c: Regenerated.
904         * generated/maxloc0_16_i4.c: Regenerated.
905         * generated/maxloc0_16_i8.c: Regenerated.
906         * generated/maxloc0_16_r10.c: Regenerated.
907         * generated/maxloc0_16_r16.c: Regenerated.
908         * generated/maxloc0_16_r4.c: Regenerated.
909         * generated/maxloc0_16_r8.c: Regenerated.
910         * generated/maxloc0_16_s1.c: Regenerated.
911         * generated/maxloc0_16_s4.c: Regenerated.
912         * generated/maxloc0_4_i1.c: Regenerated.
913         * generated/maxloc0_4_i16.c: Regenerated.
914         * generated/maxloc0_4_i2.c: Regenerated.
915         * generated/maxloc0_4_i4.c: Regenerated.
916         * generated/maxloc0_4_i8.c: Regenerated.
917         * generated/maxloc0_4_r10.c: Regenerated.
918         * generated/maxloc0_4_r16.c: Regenerated.
919         * generated/maxloc0_4_r4.c: Regenerated.
920         * generated/maxloc0_4_r8.c: Regenerated.
921         * generated/maxloc0_4_s1.c: Regenerated.
922         * generated/maxloc0_4_s4.c: Regenerated.
923         * generated/maxloc0_8_i1.c: Regenerated.
924         * generated/maxloc0_8_i16.c: Regenerated.
925         * generated/maxloc0_8_i2.c: Regenerated.
926         * generated/maxloc0_8_i4.c: Regenerated.
927         * generated/maxloc0_8_i8.c: Regenerated.
928         * generated/maxloc0_8_r10.c: Regenerated.
929         * generated/maxloc0_8_r16.c: Regenerated.
930         * generated/maxloc0_8_r4.c: Regenerated.
931         * generated/maxloc0_8_r8.c: Regenerated.
932         * generated/maxloc0_8_s1.c: Regenerated.
933         * generated/maxloc0_8_s4.c: Regenerated.
934         * generated/maxloc1_16_i1.c: Regenerated.
935         * generated/maxloc1_16_i16.c: Regenerated.
936         * generated/maxloc1_16_i2.c: Regenerated.
937         * generated/maxloc1_16_i4.c: Regenerated.
938         * generated/maxloc1_16_i8.c: Regenerated.
939         * generated/maxloc1_16_r10.c: Regenerated.
940         * generated/maxloc1_16_r16.c: Regenerated.
941         * generated/maxloc1_16_r4.c: Regenerated.
942         * generated/maxloc1_16_r8.c: Regenerated.
943         * generated/maxloc1_16_s1.c: Regenerated.
944         * generated/maxloc1_16_s4.c: Regenerated.
945         * generated/maxloc1_4_i1.c: Regenerated.
946         * generated/maxloc1_4_i16.c: Regenerated.
947         * generated/maxloc1_4_i2.c: Regenerated.
948         * generated/maxloc1_4_i4.c: Regenerated.
949         * generated/maxloc1_4_i8.c: Regenerated.
950         * generated/maxloc1_4_r10.c: Regenerated.
951         * generated/maxloc1_4_r16.c: Regenerated.
952         * generated/maxloc1_4_r4.c: Regenerated.
953         * generated/maxloc1_4_r8.c: Regenerated.
954         * generated/maxloc1_4_s1.c: Regenerated.
955         * generated/maxloc1_4_s4.c: Regenerated.
956         * generated/maxloc1_8_i1.c: Regenerated.
957         * generated/maxloc1_8_i16.c: Regenerated.
958         * generated/maxloc1_8_i2.c: Regenerated.
959         * generated/maxloc1_8_i4.c: Regenerated.
960         * generated/maxloc1_8_i8.c: Regenerated.
961         * generated/maxloc1_8_r10.c: Regenerated.
962         * generated/maxloc1_8_r16.c: Regenerated.
963         * generated/maxloc1_8_r4.c: Regenerated.
964         * generated/maxloc1_8_r8.c: Regenerated.
965         * generated/maxloc1_8_s1.c: Regenerated.
966         * generated/maxloc1_8_s4.c: Regenerated.
967         * generated/maxval_i1.c: Regenerated.
968         * generated/maxval_i16.c: Regenerated.
969         * generated/maxval_i2.c: Regenerated.
970         * generated/maxval_i4.c: Regenerated.
971         * generated/maxval_i8.c: Regenerated.
972         * generated/maxval_r10.c: Regenerated.
973         * generated/maxval_r16.c: Regenerated.
974         * generated/maxval_r4.c: Regenerated.
975         * generated/maxval_r8.c: Regenerated.
976         * generated/minloc0_16_i1.c: Regenerated.
977         * generated/minloc0_16_i16.c: Regenerated.
978         * generated/minloc0_16_i2.c: Regenerated.
979         * generated/minloc0_16_i4.c: Regenerated.
980         * generated/minloc0_16_i8.c: Regenerated.
981         * generated/minloc0_16_r10.c: Regenerated.
982         * generated/minloc0_16_r16.c: Regenerated.
983         * generated/minloc0_16_r4.c: Regenerated.
984         * generated/minloc0_16_r8.c: Regenerated.
985         * generated/minloc0_16_s1.c: Regenerated.
986         * generated/minloc0_16_s4.c: Regenerated.
987         * generated/minloc0_4_i1.c: Regenerated.
988         * generated/minloc0_4_i16.c: Regenerated.
989         * generated/minloc0_4_i2.c: Regenerated.
990         * generated/minloc0_4_i4.c: Regenerated.
991         * generated/minloc0_4_i8.c: Regenerated.
992         * generated/minloc0_4_r10.c: Regenerated.
993         * generated/minloc0_4_r16.c: Regenerated.
994         * generated/minloc0_4_r4.c: Regenerated.
995         * generated/minloc0_4_r8.c: Regenerated.
996         * generated/minloc0_4_s1.c: Regenerated.
997         * generated/minloc0_4_s4.c: Regenerated.
998         * generated/minloc0_8_i1.c: Regenerated.
999         * generated/minloc0_8_i16.c: Regenerated.
1000         * generated/minloc0_8_i2.c: Regenerated.
1001         * generated/minloc0_8_i4.c: Regenerated.
1002         * generated/minloc0_8_i8.c: Regenerated.
1003         * generated/minloc0_8_r10.c: Regenerated.
1004         * generated/minloc0_8_r16.c: Regenerated.
1005         * generated/minloc0_8_r4.c: Regenerated.
1006         * generated/minloc0_8_r8.c: Regenerated.
1007         * generated/minloc0_8_s1.c: Regenerated.
1008         * generated/minloc0_8_s4.c: Regenerated.
1009         * generated/minloc1_16_i1.c: Regenerated.
1010         * generated/minloc1_16_i16.c: Regenerated.
1011         * generated/minloc1_16_i2.c: Regenerated.
1012         * generated/minloc1_16_i4.c: Regenerated.
1013         * generated/minloc1_16_i8.c: Regenerated.
1014         * generated/minloc1_16_r10.c: Regenerated.
1015         * generated/minloc1_16_r16.c: Regenerated.
1016         * generated/minloc1_16_r4.c: Regenerated.
1017         * generated/minloc1_16_r8.c: Regenerated.
1018         * generated/minloc1_16_s1.c: Regenerated.
1019         * generated/minloc1_16_s4.c: Regenerated.
1020         * generated/minloc1_4_i1.c: Regenerated.
1021         * generated/minloc1_4_i16.c: Regenerated.
1022         * generated/minloc1_4_i2.c: Regenerated.
1023         * generated/minloc1_4_i4.c: Regenerated.
1024         * generated/minloc1_4_i8.c: Regenerated.
1025         * generated/minloc1_4_r10.c: Regenerated.
1026         * generated/minloc1_4_r16.c: Regenerated.
1027         * generated/minloc1_4_r4.c: Regenerated.
1028         * generated/minloc1_4_r8.c: Regenerated.
1029         * generated/minloc1_4_s1.c: Regenerated.
1030         * generated/minloc1_4_s4.c: Regenerated.
1031         * generated/minloc1_8_i1.c: Regenerated.
1032         * generated/minloc1_8_i16.c: Regenerated.
1033         * generated/minloc1_8_i2.c: Regenerated.
1034         * generated/minloc1_8_i4.c: Regenerated.
1035         * generated/minloc1_8_i8.c: Regenerated.
1036         * generated/minloc1_8_r10.c: Regenerated.
1037         * generated/minloc1_8_r16.c: Regenerated.
1038         * generated/minloc1_8_r4.c: Regenerated.
1039         * generated/minloc1_8_r8.c: Regenerated.
1040         * generated/minloc1_8_s1.c: Regenerated.
1041         * generated/minloc1_8_s4.c: Regenerated.
1042         * generated/minval_i1.c: Regenerated.
1043         * generated/minval_i16.c: Regenerated.
1044         * generated/minval_i2.c: Regenerated.
1045         * generated/minval_i4.c: Regenerated.
1046         * generated/minval_i8.c: Regenerated.
1047         * generated/minval_r10.c: Regenerated.
1048         * generated/minval_r16.c: Regenerated.
1049         * generated/minval_r4.c: Regenerated.
1050         * generated/minval_r8.c: Regenerated.
1051         * generated/norm2_r10.c: Regenerated.
1052         * generated/norm2_r16.c: Regenerated.
1053         * generated/norm2_r4.c: Regenerated.
1054         * generated/norm2_r8.c: Regenerated.
1055         * generated/parity_l1.c: Regenerated.
1056         * generated/parity_l16.c: Regenerated.
1057         * generated/parity_l2.c: Regenerated.
1058         * generated/parity_l4.c: Regenerated.
1059         * generated/parity_l8.c: Regenerated.
1060         * generated/product_c10.c: Regenerated.
1061         * generated/product_c16.c: Regenerated.
1062         * generated/product_c4.c: Regenerated.
1063         * generated/product_c8.c: Regenerated.
1064         * generated/product_i1.c: Regenerated.
1065         * generated/product_i16.c: Regenerated.
1066         * generated/product_i2.c: Regenerated.
1067         * generated/product_i4.c: Regenerated.
1068         * generated/product_i8.c: Regenerated.
1069         * generated/product_r10.c: Regenerated.
1070         * generated/product_r16.c: Regenerated.
1071         * generated/product_r4.c: Regenerated.
1072         * generated/product_r8.c: Regenerated.
1073         * generated/sum_c10.c: Regenerated.
1074         * generated/sum_c16.c: Regenerated.
1075         * generated/sum_c4.c: Regenerated.
1076         * generated/sum_c8.c: Regenerated.
1077         * generated/sum_i1.c: Regenerated.
1078         * generated/sum_i16.c: Regenerated.
1079         * generated/sum_i2.c: Regenerated.
1080         * generated/sum_i4.c: Regenerated.
1081         * generated/sum_i8.c: Regenerated.
1082         * generated/sum_r10.c: Regenerated.
1083         * generated/sum_r16.c: Regenerated.
1084         * generated/sum_r4.c: Regenerated.
1085         * generated/sum_r8.c: Regenerated.
1087 2018-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1089         PR libgfortran/83811
1090         * write.c (select_buffer): Adjust buffer size up by 1.
1092 2018-01-08  Janne Blomqvist  <jb@gcc.gnu.org>
1094         PR 78534, bugfix for r256322
1095         * io/transfer.c (next_record_w): Use correct type for return value
1096         of next_array_record.
1098 2018-01-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
1100         * libgfortran.h (GFC_DTYPE_COPY): New macro.
1101         (GFC_DTYPE_COPY_SETRANK): New macro.
1102         (GFC_DTYPE_IS_UNSET): New macro.
1103         * intrinsics/cshift0.c (cshift0): Use new macros.
1104         * intrinsics/eoshift0.c (eoshift0): Likewise.
1105         * intrinsics/eoshift2.c (eoshift2): Likewise.
1106         * intrinsics/move_alloc.c (move_alloc): Likewise.
1107         * intrinsics/reshape_generic.c (reshape_internal): Likewise.
1108         * intrinsics/spread_generic.c (spread_internal): Likewise.
1109         * intrinsics/spread_generic.c (spread_scalar): Likewise.
1110         * intrinsics/spread_generic.c (spread_char_scalar): Likewise.
1111         * intrinsics/spread_generic.c (spread_char4_scalar): Likewise.
1112         * intrinsics/unpack_generic.c (unpack0): Likewise.
1113         * intrinsics/unpack_generic.c (unpack0_char): Likewise.
1114         * intrinsics/unpack_generic.c (unpack0_char4): Likewise.
1115         * m4/cshift1.m4 (cshift1): Likewise.
1116         * m4/eoshift1.m4 (eoshift1): Likewise.
1117         * m4/eoshift3.m4 (eoshift3): Likewise.
1118         * m4/iforeach-s.m4: Likewise.
1119         * m4/iforeach.m4: Likewise.
1120         * m4/ifunction-s.m4: Likewise.
1121         * m4/ifunction-s2.m4: Likewise.
1122         * m4/ifunction.m4: Likewise.
1123         * m4/ifunction_logical.m4: Likewise.
1124         * m4/reshape.m4: Likewise.
1125         * m4/spread.m4: Likewise.
1126         * generated/all_l1.c : Regenerated.
1127         * generated/all_l16.c : Regenerated.
1128         * generated/all_l2.c : Regenerated.
1129         * generated/all_l4.c : Regenerated.
1130         * generated/all_l8.c : Regenerated.
1131         * generated/any_l1.c : Regenerated.
1132         * generated/any_l16.c : Regenerated.
1133         * generated/any_l2.c : Regenerated.
1134         * generated/any_l4.c : Regenerated.
1135         * generated/any_l8.c : Regenerated.
1136         * generated/count_16_l.c : Regenerated.
1137         * generated/count_1_l.c : Regenerated.
1138         * generated/count_2_l.c : Regenerated.
1139         * generated/count_4_l.c : Regenerated.
1140         * generated/count_8_l.c : Regenerated.
1141         * generated/cshift1_16.c : Regenerated.
1142         * generated/cshift1_4.c : Regenerated.
1143         * generated/cshift1_8.c : Regenerated.
1144         * generated/eoshift1_16.c : Regenerated.
1145         * generated/eoshift1_4.c : Regenerated.
1146         * generated/eoshift1_8.c : Regenerated.
1147         * generated/eoshift3_16.c : Regenerated.
1148         * generated/eoshift3_4.c : Regenerated.
1149         * generated/eoshift3_8.c : Regenerated.
1150         * generated/iall_i1.c : Regenerated.
1151         * generated/iall_i16.c : Regenerated.
1152         * generated/iall_i2.c : Regenerated.
1153         * generated/iall_i4.c : Regenerated.
1154         * generated/iall_i8.c : Regenerated.
1155         * generated/iany_i1.c : Regenerated.
1156         * generated/iany_i16.c : Regenerated.
1157         * generated/iany_i2.c : Regenerated.
1158         * generated/iany_i4.c : Regenerated.
1159         * generated/iany_i8.c : Regenerated.
1160         * generated/iparity_i1.c : Regenerated.
1161         * generated/iparity_i16.c : Regenerated.
1162         * generated/iparity_i2.c : Regenerated.
1163         * generated/iparity_i4.c : Regenerated.
1164         * generated/iparity_i8.c : Regenerated.
1165         * generated/maxloc0_16_i1.c : Regenerated.
1166         * generated/maxloc0_16_i16.c : Regenerated.
1167         * generated/maxloc0_16_i2.c : Regenerated.
1168         * generated/maxloc0_16_i4.c : Regenerated.
1169         * generated/maxloc0_16_i8.c : Regenerated.
1170         * generated/maxloc0_16_r10.c : Regenerated.
1171         * generated/maxloc0_16_r16.c : Regenerated.
1172         * generated/maxloc0_16_r4.c : Regenerated.
1173         * generated/maxloc0_16_r8.c : Regenerated.
1174         * generated/maxloc0_16_s1.c : Regenerated.
1175         * generated/maxloc0_16_s4.c : Regenerated.
1176         * generated/maxloc0_4_i1.c : Regenerated.
1177         * generated/maxloc0_4_i16.c : Regenerated.
1178         * generated/maxloc0_4_i2.c : Regenerated.
1179         * generated/maxloc0_4_i4.c : Regenerated.
1180         * generated/maxloc0_4_i8.c : Regenerated.
1181         * generated/maxloc0_4_r10.c : Regenerated.
1182         * generated/maxloc0_4_r16.c : Regenerated.
1183         * generated/maxloc0_4_r4.c : Regenerated.
1184         * generated/maxloc0_4_r8.c : Regenerated.
1185         * generated/maxloc0_4_s1.c : Regenerated.
1186         * generated/maxloc0_4_s4.c : Regenerated.
1187         * generated/maxloc0_8_i1.c : Regenerated.
1188         * generated/maxloc0_8_i16.c : Regenerated.
1189         * generated/maxloc0_8_i2.c : Regenerated.
1190         * generated/maxloc0_8_i4.c : Regenerated.
1191         * generated/maxloc0_8_i8.c : Regenerated.
1192         * generated/maxloc0_8_r10.c : Regenerated.
1193         * generated/maxloc0_8_r16.c : Regenerated.
1194         * generated/maxloc0_8_r4.c : Regenerated.
1195         * generated/maxloc0_8_r8.c : Regenerated.
1196         * generated/maxloc0_8_s1.c : Regenerated.
1197         * generated/maxloc0_8_s4.c : Regenerated.
1198         * generated/maxloc1_16_i1.c : Regenerated.
1199         * generated/maxloc1_16_i16.c : Regenerated.
1200         * generated/maxloc1_16_i2.c : Regenerated.
1201         * generated/maxloc1_16_i4.c : Regenerated.
1202         * generated/maxloc1_16_i8.c : Regenerated.
1203         * generated/maxloc1_16_r10.c : Regenerated.
1204         * generated/maxloc1_16_r16.c : Regenerated.
1205         * generated/maxloc1_16_r4.c : Regenerated.
1206         * generated/maxloc1_16_r8.c : Regenerated.
1207         * generated/maxloc1_16_s1.c : Regenerated.
1208         * generated/maxloc1_16_s4.c : Regenerated.
1209         * generated/maxloc1_4_i1.c : Regenerated.
1210         * generated/maxloc1_4_i16.c : Regenerated.
1211         * generated/maxloc1_4_i2.c : Regenerated.
1212         * generated/maxloc1_4_i4.c : Regenerated.
1213         * generated/maxloc1_4_i8.c : Regenerated.
1214         * generated/maxloc1_4_r10.c : Regenerated.
1215         * generated/maxloc1_4_r16.c : Regenerated.
1216         * generated/maxloc1_4_r4.c : Regenerated.
1217         * generated/maxloc1_4_r8.c : Regenerated.
1218         * generated/maxloc1_4_s1.c : Regenerated.
1219         * generated/maxloc1_4_s4.c : Regenerated.
1220         * generated/maxloc1_8_i1.c : Regenerated.
1221         * generated/maxloc1_8_i16.c : Regenerated.
1222         * generated/maxloc1_8_i2.c : Regenerated.
1223         * generated/maxloc1_8_i4.c : Regenerated.
1224         * generated/maxloc1_8_i8.c : Regenerated.
1225         * generated/maxloc1_8_r10.c : Regenerated.
1226         * generated/maxloc1_8_r16.c : Regenerated.
1227         * generated/maxloc1_8_r4.c : Regenerated.
1228         * generated/maxloc1_8_r8.c : Regenerated.
1229         * generated/maxloc1_8_s1.c : Regenerated.
1230         * generated/maxloc1_8_s4.c : Regenerated.
1231         * generated/maxval1_s1.c : Regenerated.
1232         * generated/maxval1_s4.c : Regenerated.
1233         * generated/maxval_i1.c : Regenerated.
1234         * generated/maxval_i16.c : Regenerated.
1235         * generated/maxval_i2.c : Regenerated.
1236         * generated/maxval_i4.c : Regenerated.
1237         * generated/maxval_i8.c : Regenerated.
1238         * generated/maxval_r10.c : Regenerated.
1239         * generated/maxval_r16.c : Regenerated.
1240         * generated/maxval_r4.c : Regenerated.
1241         * generated/maxval_r8.c : Regenerated.
1242         * generated/minloc0_16_i1.c : Regenerated.
1243         * generated/minloc0_16_i16.c : Regenerated.
1244         * generated/minloc0_16_i2.c : Regenerated.
1245         * generated/minloc0_16_i4.c : Regenerated.
1246         * generated/minloc0_16_i8.c : Regenerated.
1247         * generated/minloc0_16_r10.c : Regenerated.
1248         * generated/minloc0_16_r16.c : Regenerated.
1249         * generated/minloc0_16_r4.c : Regenerated.
1250         * generated/minloc0_16_r8.c : Regenerated.
1251         * generated/minloc0_16_s1.c : Regenerated.
1252         * generated/minloc0_16_s4.c : Regenerated.
1253         * generated/minloc0_4_i1.c : Regenerated.
1254         * generated/minloc0_4_i16.c : Regenerated.
1255         * generated/minloc0_4_i2.c : Regenerated.
1256         * generated/minloc0_4_i4.c : Regenerated.
1257         * generated/minloc0_4_i8.c : Regenerated.
1258         * generated/minloc0_4_r10.c : Regenerated.
1259         * generated/minloc0_4_r16.c : Regenerated.
1260         * generated/minloc0_4_r4.c : Regenerated.
1261         * generated/minloc0_4_r8.c : Regenerated.
1262         * generated/minloc0_4_s1.c : Regenerated.
1263         * generated/minloc0_4_s4.c : Regenerated.
1264         * generated/minloc0_8_i1.c : Regenerated.
1265         * generated/minloc0_8_i16.c : Regenerated.
1266         * generated/minloc0_8_i2.c : Regenerated.
1267         * generated/minloc0_8_i4.c : Regenerated.
1268         * generated/minloc0_8_i8.c : Regenerated.
1269         * generated/minloc0_8_r10.c : Regenerated.
1270         * generated/minloc0_8_r16.c : Regenerated.
1271         * generated/minloc0_8_r4.c : Regenerated.
1272         * generated/minloc0_8_r8.c : Regenerated.
1273         * generated/minloc0_8_s1.c : Regenerated.
1274         * generated/minloc0_8_s4.c : Regenerated.
1275         * generated/minloc1_16_i1.c : Regenerated.
1276         * generated/minloc1_16_i16.c : Regenerated.
1277         * generated/minloc1_16_i2.c : Regenerated.
1278         * generated/minloc1_16_i4.c : Regenerated.
1279         * generated/minloc1_16_i8.c : Regenerated.
1280         * generated/minloc1_16_r10.c : Regenerated.
1281         * generated/minloc1_16_r16.c : Regenerated.
1282         * generated/minloc1_16_r4.c : Regenerated.
1283         * generated/minloc1_16_r8.c : Regenerated.
1284         * generated/minloc1_16_s1.c : Regenerated.
1285         * generated/minloc1_16_s4.c : Regenerated.
1286         * generated/minloc1_4_i1.c : Regenerated.
1287         * generated/minloc1_4_i16.c : Regenerated.
1288         * generated/minloc1_4_i2.c : Regenerated.
1289         * generated/minloc1_4_i4.c : Regenerated.
1290         * generated/minloc1_4_i8.c : Regenerated.
1291         * generated/minloc1_4_r10.c : Regenerated.
1292         * generated/minloc1_4_r16.c : Regenerated.
1293         * generated/minloc1_4_r4.c : Regenerated.
1294         * generated/minloc1_4_r8.c : Regenerated.
1295         * generated/minloc1_4_s1.c : Regenerated.
1296         * generated/minloc1_4_s4.c : Regenerated.
1297         * generated/minloc1_8_i1.c : Regenerated.
1298         * generated/minloc1_8_i16.c : Regenerated.
1299         * generated/minloc1_8_i2.c : Regenerated.
1300         * generated/minloc1_8_i4.c : Regenerated.
1301         * generated/minloc1_8_i8.c : Regenerated.
1302         * generated/minloc1_8_r10.c : Regenerated.
1303         * generated/minloc1_8_r16.c : Regenerated.
1304         * generated/minloc1_8_r4.c : Regenerated.
1305         * generated/minloc1_8_r8.c : Regenerated.
1306         * generated/minloc1_8_s1.c : Regenerated.
1307         * generated/minloc1_8_s4.c : Regenerated.
1308         * generated/minval1_s1.c : Regenerated.
1309         * generated/minval1_s4.c : Regenerated.
1310         * generated/minval_i1.c : Regenerated.
1311         * generated/minval_i16.c : Regenerated.
1312         * generated/minval_i2.c : Regenerated.
1313         * generated/minval_i4.c : Regenerated.
1314         * generated/minval_i8.c : Regenerated.
1315         * generated/minval_r10.c : Regenerated.
1316         * generated/minval_r16.c : Regenerated.
1317         * generated/minval_r4.c : Regenerated.
1318         * generated/minval_r8.c : Regenerated.
1319         * generated/norm2_r10.c : Regenerated.
1320         * generated/norm2_r16.c : Regenerated.
1321         * generated/norm2_r4.c : Regenerated.
1322         * generated/norm2_r8.c : Regenerated.
1323         * generated/parity_l1.c : Regenerated.
1324         * generated/parity_l16.c : Regenerated.
1325         * generated/parity_l2.c : Regenerated.
1326         * generated/parity_l4.c : Regenerated.
1327         * generated/parity_l8.c : Regenerated.
1328         * generated/product_c10.c : Regenerated.
1329         * generated/product_c16.c : Regenerated.
1330         * generated/product_c4.c : Regenerated.
1331         * generated/product_c8.c : Regenerated.
1332         * generated/product_i1.c : Regenerated.
1333         * generated/product_i16.c : Regenerated.
1334         * generated/product_i2.c : Regenerated.
1335         * generated/product_i4.c : Regenerated.
1336         * generated/product_i8.c : Regenerated.
1337         * generated/product_r10.c : Regenerated.
1338         * generated/product_r16.c : Regenerated.
1339         * generated/product_r4.c : Regenerated.
1340         * generated/product_r8.c : Regenerated.
1341         * generated/reshape_c10.c : Regenerated.
1342         * generated/reshape_c16.c : Regenerated.
1343         * generated/reshape_c4.c : Regenerated.
1344         * generated/reshape_c8.c : Regenerated.
1345         * generated/reshape_i16.c : Regenerated.
1346         * generated/reshape_i4.c : Regenerated.
1347         * generated/reshape_i8.c : Regenerated.
1348         * generated/reshape_r10.c : Regenerated.
1349         * generated/reshape_r16.c : Regenerated.
1350         * generated/reshape_r4.c : Regenerated.
1351         * generated/reshape_r8.c : Regenerated.
1352         * generated/spread_c10.c : Regenerated.
1353         * generated/spread_c16.c : Regenerated.
1354         * generated/spread_c4.c : Regenerated.
1355         * generated/spread_c8.c : Regenerated.
1356         * generated/spread_i1.c : Regenerated.
1357         * generated/spread_i16.c : Regenerated.
1358         * generated/spread_i2.c : Regenerated.
1359         * generated/spread_i4.c : Regenerated.
1360         * generated/spread_i8.c : Regenerated.
1361         * generated/spread_r10.c : Regenerated.
1362         * generated/spread_r16.c : Regenerated.
1363         * generated/spread_r4.c : Regenerated.
1364         * generated/spread_r8.c : Regenerated.
1365         * generated/sum_c10.c : Regenerated.
1366         * generated/sum_c16.c : Regenerated.
1367         * generated/sum_c4.c : Regenerated.
1368         * generated/sum_c8.c : Regenerated.
1369         * generated/sum_i1.c : Regenerated.
1370         * generated/sum_i16.c : Regenerated.
1371         * generated/sum_i2.c : Regenerated.
1372         * generated/sum_i4.c : Regenerated.
1373         * generated/sum_i8.c : Regenerated.
1374         * generated/sum_r10.c : Regenerated.
1375         * generated/sum_r16.c : Regenerated.
1376         * generated/sum_r4.c : Regenerated.
1377         * generated/sum_r8.c : Regenerated.
1379 2018-01-07  Janne Blomqvist  <jb@gcc.gnu.org>
1381         PR fortran/78534
1382         PR fortran/83704
1383         * io/fbuf.c (fbuf_init): Use size_t instead of int for length.
1384         (fbuf_debug): Convert debug output to unsigned long.
1385         (fbuf_reset): Use ptrdiff_t for return value.
1386         (fbuf_alloc): Use size_t for length argument.
1387         (fbuf_flush): Handle large buffers.
1388         (fbuf_flush_list): Likewise.
1389         (fbuf_seek): Use ptrdiff_t for offset and return value.
1390         (fbuf_read): Use size_t for length argument.
1391         (fbuf_getc_refill): Use size_t to match fbuf_read.
1392         * io/fbuf.h (struct fbuf): Use size_t for lengths.
1393         (fbuf_init): Use size_t instead of int for length.
1394         (fbuf_reset): Use ptrdiff_t for return value.
1395         (fbuf_alloc): Use size_t for length argument.
1396         (fbuf_seek): Use ptrdiff_t for offset and return value.
1397         (fbuf_read): Use size_t for length argument.
1398         * io/io.h (read_block_form): Likewise.
1399         (read_block_form4): Likewise.
1400         (write_block): Likewise.
1401         (read_a): Likewise.
1402         (read_a_char4): Likewise.
1403         (read_x): Likewise.
1404         (write_a): Likewise.
1405         (write_a_char4): Likewise.
1406         * io/list_read.c (list_formatted_read_scalar): Use size_t to
1407         handle large buffers.
1408         * io/read.c (read_l): Likewise.
1409         (read_utf8): Likewise.
1410         (read_utf8_char1): Likewise.
1411         (read_default_char1): Likewise.
1412         (read_utf8_char4): Likewise.
1413         (read_default_char4): Likewise.
1414         (read_a): Likewise.
1415         (read_a_char4): Likewise.
1416         (eat_leading_spaces): Likewise.
1417         (next_char): Likewise.
1418         (read_decimal): Likewise.
1419         (read_radix): Likewise.
1420         (read_f): Likewise.
1421         (read_x): Likewise.
1422         * io/transfer.c (read_sf_internal): Likewise.
1423         (read_sf): Likewise.
1424         (read_block_form): Likewise.
1425         (read_block_form4): Likewise.
1426         (write_block): Likewise.
1427         (formatted_transfer_scalar_write): Likewise.
1428         (next_record_w): Likewise.
1429         * io/unix.c (mem_alloc_r): Likewise.
1430         (mem_alloc_r4): Likewise.
1431         (mem_alloc_w): Likewise.
1432         (mem_alloc_w4): Likewise.
1433         (mem_read): Likewise.
1434         (mem_read4): Likewise.
1435         (mem_write): Likewise.
1436         (mem_write4): Likewise.
1437         (open_internal): Likewise.
1438         (open_internal4): Likewise.
1439         * io/unix.h (open_internal): Likewise.
1440         (open_internal4): Likewise.
1441         (mem_alloc_w): Likewise.
1442         (mem_alloc_r): Likewise.
1443         (mem_alloc_w4): Likewise.
1444         (mem_alloc_r4): Likewise.
1445         * io/write.c (write_check_cc): Likewise.
1446         (write_cc): Likewise.
1447         (write_a): Likewise.
1448         (write_a_char4): Likewise.
1450 2018-01-06  Janne Blomqvist  <jb@gcc.gnu.org>
1452         * io/write.c (namelist_write): Remove unused variable "i".
1454 2018-01-06  Dominique d'Humieres  <dominiq@lps.ens.fr>
1455             Janne Blomqvist  <jb@gcc.gnu.org>
1457         PR fortran/83704
1458         * io/write.c (write_character): Use size_t instead of int for
1459         length.
1461 2018-01-05  Janne Blomqvist  <jb@gcc.gnu.org>
1463         PR fortran/78534
1464         * intrinsics/args.c (getarg_i4): Use gfc_charlen_type.
1465         (get_command_argument_i4): Likewise.
1466         (get_command_i4): Likewise.
1467         * intrinsics/chmod.c (chmod_internal): Likewise.
1468         * intrinsics/env.c (get_environment_variable_i4): Likewise.
1469         * intrinsics/extends_type_of.c (struct vtype): Use size_t for size
1470         member.
1471         * intrinsics/gerror.c (gerror): Use gfc_charlen_type.
1472         * intrinsics/getlog.c (getlog): Likewise.
1473         * intrinsics/hostnm.c (hostnm_0): Likewise.
1474         * intrinsics/string_intrinsics_inc.c (string_len_trim): Rework to
1475         work if gfc_charlen_type is unsigned.
1476         (string_scan): Likewise.
1477         * io/transfer.c (transfer_character): Modify prototype.
1478         (transfer_character_write): Likewise.
1479         (transfer_character_wide): Likewise.
1480         (transfer_character_wide_write): Likewise.
1481         (transfer_array): Typecast to avoid signed-unsigned comparison.
1482         * io/unit.c (is_trim_ok): Use gfc_charlen_type.
1483         * io/write.c (namelist_write): Likewise.
1484         * libgfortran.h (gfc_charlen_type): Change typedef to size_t.
1486 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
1488         Update copyright years.
1490 2018-01-02  Janne Blomqvist  <jb@gcc.gnu.org>
1492         PR libgfortran/83649
1493         * io/unix.c (MAX_CHUNK): New define.
1494         (raw_read): For reads larger than MAX_CHUNK, loop.
1495         (raw_write): Write no more than MAX_CHUNK bytes per iteration.
1497 Copyright (C) 2018 Free Software Foundation, Inc.
1499 Copying and distribution of this file, with or without modification,
1500 are permitted in any medium without royalty provided the copyright
1501 notice and this notice are preserved.