xref: /netbsd-src/external/gpl3/gcc/dist/libgfortran/ChangeLog-2018 (revision 181254a7b1bdde6873432bffef2d2decc4b5c22f)
1*181254a7Smrg2018-12-31  Thomas Koenig  <tkoenig@gcc.gnu.org>
2*181254a7Smrg
3*181254a7Smrg	PR fortran/82995
4*181254a7Smrg        * m4/ifindloc0.m4: Handle case of absend optional argument, passed
5*181254a7Smrg	as a NULL pointer.  Correct allocation of retarray->base_addr.
6*181254a7Smrg        * m4/ifindloc1.m4: Likewise.
7*181254a7Smrg        * m4/ifindloc2.m4: Handle case of absend optional argument, passed
8*181254a7Smrg	as a NULL pointer.
9*181254a7Smrg        * m4/iforeach-s.m4: Likewise.
10*181254a7Smrg        * m4/iforeach-s2.m4: Likewise.
11*181254a7Smrg        * m4/iforeach.m4: Likewise.
12*181254a7Smrg        * m4/ifunction-s.m4: Likewise.
13*181254a7Smrg        * m4/ifunction-s2.m4: Likewise.
14*181254a7Smrg        * m4/ifunction.m4: Likewise.
15*181254a7Smrg        * generated/findloc0_c16.c: Regenerated.
16*181254a7Smrg        * generated/findloc0_c4.c: Regenerated.
17*181254a7Smrg        * generated/findloc0_c8.c: Regenerated.
18*181254a7Smrg        * generated/findloc0_i1.c: Regenerated.
19*181254a7Smrg        * generated/findloc0_i16.c: Regenerated.
20*181254a7Smrg        * generated/findloc0_i2.c: Regenerated.
21*181254a7Smrg        * generated/findloc0_i4.c: Regenerated.
22*181254a7Smrg        * generated/findloc0_i8.c: Regenerated.
23*181254a7Smrg        * generated/findloc0_r16.c: Regenerated.
24*181254a7Smrg        * generated/findloc0_r4.c: Regenerated.
25*181254a7Smrg        * generated/findloc0_r8.c: Regenerated.
26*181254a7Smrg        * generated/findloc0_s1.c: Regenerated.
27*181254a7Smrg        * generated/findloc0_s4.c: Regenerated.
28*181254a7Smrg        * generated/findloc1_c16.c: Regenerated.
29*181254a7Smrg        * generated/findloc1_c4.c: Regenerated.
30*181254a7Smrg        * generated/findloc1_c8.c: Regenerated.
31*181254a7Smrg        * generated/findloc1_i1.c: Regenerated.
32*181254a7Smrg        * generated/findloc1_i16.c: Regenerated.
33*181254a7Smrg        * generated/findloc1_i2.c: Regenerated.
34*181254a7Smrg        * generated/findloc1_i4.c: Regenerated.
35*181254a7Smrg        * generated/findloc1_i8.c: Regenerated.
36*181254a7Smrg        * generated/findloc1_r16.c: Regenerated.
37*181254a7Smrg        * generated/findloc1_r4.c: Regenerated.
38*181254a7Smrg        * generated/findloc1_r8.c: Regenerated.
39*181254a7Smrg        * generated/findloc1_s1.c: Regenerated.
40*181254a7Smrg        * generated/findloc1_s4.c: Regenerated.
41*181254a7Smrg        * generated/findloc2_s1.c: Regenerated.
42*181254a7Smrg        * generated/findloc2_s4.c: Regenerated.
43*181254a7Smrg        * generated/iall_i1.c: Regenerated.
44*181254a7Smrg        * generated/iall_i16.c: Regenerated.
45*181254a7Smrg        * generated/iall_i2.c: Regenerated.
46*181254a7Smrg        * generated/iall_i4.c: Regenerated.
47*181254a7Smrg        * generated/iall_i8.c: Regenerated.
48*181254a7Smrg        * generated/iany_i1.c: Regenerated.
49*181254a7Smrg        * generated/iany_i16.c: Regenerated.
50*181254a7Smrg        * generated/iany_i2.c: Regenerated.
51*181254a7Smrg        * generated/iany_i4.c: Regenerated.
52*181254a7Smrg        * generated/iany_i8.c: Regenerated.
53*181254a7Smrg        * generated/iparity_i1.c: Regenerated.
54*181254a7Smrg        * generated/iparity_i16.c: Regenerated.
55*181254a7Smrg        * generated/iparity_i2.c: Regenerated.
56*181254a7Smrg        * generated/iparity_i4.c: Regenerated.
57*181254a7Smrg        * generated/iparity_i8.c: Regenerated.
58*181254a7Smrg        * generated/maxloc0_16_i1.c: Regenerated.
59*181254a7Smrg        * generated/maxloc0_16_i16.c: Regenerated.
60*181254a7Smrg        * generated/maxloc0_16_i2.c: Regenerated.
61*181254a7Smrg        * generated/maxloc0_16_i4.c: Regenerated.
62*181254a7Smrg        * generated/maxloc0_16_i8.c: Regenerated.
63*181254a7Smrg        * generated/maxloc0_16_r10.c: Regenerated.
64*181254a7Smrg        * generated/maxloc0_16_r16.c: Regenerated.
65*181254a7Smrg        * generated/maxloc0_16_r4.c: Regenerated.
66*181254a7Smrg        * generated/maxloc0_16_r8.c: Regenerated.
67*181254a7Smrg        * generated/maxloc0_16_s1.c: Regenerated.
68*181254a7Smrg        * generated/maxloc0_16_s4.c: Regenerated.
69*181254a7Smrg        * generated/maxloc0_4_i1.c: Regenerated.
70*181254a7Smrg        * generated/maxloc0_4_i16.c: Regenerated.
71*181254a7Smrg        * generated/maxloc0_4_i2.c: Regenerated.
72*181254a7Smrg        * generated/maxloc0_4_i4.c: Regenerated.
73*181254a7Smrg        * generated/maxloc0_4_i8.c: Regenerated.
74*181254a7Smrg        * generated/maxloc0_4_r10.c: Regenerated.
75*181254a7Smrg        * generated/maxloc0_4_r16.c: Regenerated.
76*181254a7Smrg        * generated/maxloc0_4_r4.c: Regenerated.
77*181254a7Smrg        * generated/maxloc0_4_r8.c: Regenerated.
78*181254a7Smrg        * generated/maxloc0_4_s1.c: Regenerated.
79*181254a7Smrg        * generated/maxloc0_4_s4.c: Regenerated.
80*181254a7Smrg        * generated/maxloc0_8_i1.c: Regenerated.
81*181254a7Smrg        * generated/maxloc0_8_i16.c: Regenerated.
82*181254a7Smrg        * generated/maxloc0_8_i2.c: Regenerated.
83*181254a7Smrg        * generated/maxloc0_8_i4.c: Regenerated.
84*181254a7Smrg        * generated/maxloc0_8_i8.c: Regenerated.
85*181254a7Smrg        * generated/maxloc0_8_r10.c: Regenerated.
86*181254a7Smrg        * generated/maxloc0_8_r16.c: Regenerated.
87*181254a7Smrg        * generated/maxloc0_8_r4.c: Regenerated.
88*181254a7Smrg        * generated/maxloc0_8_r8.c: Regenerated.
89*181254a7Smrg        * generated/maxloc0_8_s1.c: Regenerated.
90*181254a7Smrg        * generated/maxloc0_8_s4.c: Regenerated.
91*181254a7Smrg        * generated/maxloc1_16_i1.c: Regenerated.
92*181254a7Smrg        * generated/maxloc1_16_i16.c: Regenerated.
93*181254a7Smrg        * generated/maxloc1_16_i2.c: Regenerated.
94*181254a7Smrg        * generated/maxloc1_16_i4.c: Regenerated.
95*181254a7Smrg        * generated/maxloc1_16_i8.c: Regenerated.
96*181254a7Smrg        * generated/maxloc1_16_r10.c: Regenerated.
97*181254a7Smrg        * generated/maxloc1_16_r16.c: Regenerated.
98*181254a7Smrg        * generated/maxloc1_16_r4.c: Regenerated.
99*181254a7Smrg        * generated/maxloc1_16_r8.c: Regenerated.
100*181254a7Smrg        * generated/maxloc1_16_s1.c: Regenerated.
101*181254a7Smrg        * generated/maxloc1_16_s4.c: Regenerated.
102*181254a7Smrg        * generated/maxloc1_4_i1.c: Regenerated.
103*181254a7Smrg        * generated/maxloc1_4_i16.c: Regenerated.
104*181254a7Smrg        * generated/maxloc1_4_i2.c: Regenerated.
105*181254a7Smrg        * generated/maxloc1_4_i4.c: Regenerated.
106*181254a7Smrg        * generated/maxloc1_4_i8.c: Regenerated.
107*181254a7Smrg        * generated/maxloc1_4_r10.c: Regenerated.
108*181254a7Smrg        * generated/maxloc1_4_r16.c: Regenerated.
109*181254a7Smrg        * generated/maxloc1_4_r4.c: Regenerated.
110*181254a7Smrg        * generated/maxloc1_4_r8.c: Regenerated.
111*181254a7Smrg        * generated/maxloc1_4_s1.c: Regenerated.
112*181254a7Smrg        * generated/maxloc1_4_s4.c: Regenerated.
113*181254a7Smrg        * generated/maxloc1_8_i1.c: Regenerated.
114*181254a7Smrg        * generated/maxloc1_8_i16.c: Regenerated.
115*181254a7Smrg        * generated/maxloc1_8_i2.c: Regenerated.
116*181254a7Smrg        * generated/maxloc1_8_i4.c: Regenerated.
117*181254a7Smrg        * generated/maxloc1_8_i8.c: Regenerated.
118*181254a7Smrg        * generated/maxloc1_8_r10.c: Regenerated.
119*181254a7Smrg        * generated/maxloc1_8_r16.c: Regenerated.
120*181254a7Smrg        * generated/maxloc1_8_r4.c: Regenerated.
121*181254a7Smrg        * generated/maxloc1_8_r8.c: Regenerated.
122*181254a7Smrg        * generated/maxloc1_8_s1.c: Regenerated.
123*181254a7Smrg        * generated/maxloc1_8_s4.c: Regenerated.
124*181254a7Smrg        * generated/maxval0_s1.c: Regenerated.
125*181254a7Smrg        * generated/maxval0_s4.c: Regenerated.
126*181254a7Smrg        * generated/maxval1_s1.c: Regenerated.
127*181254a7Smrg        * generated/maxval1_s4.c: Regenerated.
128*181254a7Smrg        * generated/maxval_i1.c: Regenerated.
129*181254a7Smrg        * generated/maxval_i16.c: Regenerated.
130*181254a7Smrg        * generated/maxval_i2.c: Regenerated.
131*181254a7Smrg        * generated/maxval_i4.c: Regenerated.
132*181254a7Smrg        * generated/maxval_i8.c: Regenerated.
133*181254a7Smrg        * generated/maxval_r10.c: Regenerated.
134*181254a7Smrg        * generated/maxval_r16.c: Regenerated.
135*181254a7Smrg        * generated/maxval_r4.c: Regenerated.
136*181254a7Smrg        * generated/maxval_r8.c: Regenerated.
137*181254a7Smrg        * generated/minloc0_16_i1.c: Regenerated.
138*181254a7Smrg        * generated/minloc0_16_i16.c: Regenerated.
139*181254a7Smrg        * generated/minloc0_16_i2.c: Regenerated.
140*181254a7Smrg        * generated/minloc0_16_i4.c: Regenerated.
141*181254a7Smrg        * generated/minloc0_16_i8.c: Regenerated.
142*181254a7Smrg        * generated/minloc0_16_r10.c: Regenerated.
143*181254a7Smrg        * generated/minloc0_16_r16.c: Regenerated.
144*181254a7Smrg        * generated/minloc0_16_r4.c: Regenerated.
145*181254a7Smrg        * generated/minloc0_16_r8.c: Regenerated.
146*181254a7Smrg        * generated/minloc0_16_s1.c: Regenerated.
147*181254a7Smrg        * generated/minloc0_16_s4.c: Regenerated.
148*181254a7Smrg        * generated/minloc0_4_i1.c: Regenerated.
149*181254a7Smrg        * generated/minloc0_4_i16.c: Regenerated.
150*181254a7Smrg        * generated/minloc0_4_i2.c: Regenerated.
151*181254a7Smrg        * generated/minloc0_4_i4.c: Regenerated.
152*181254a7Smrg        * generated/minloc0_4_i8.c: Regenerated.
153*181254a7Smrg        * generated/minloc0_4_r10.c: Regenerated.
154*181254a7Smrg        * generated/minloc0_4_r16.c: Regenerated.
155*181254a7Smrg        * generated/minloc0_4_r4.c: Regenerated.
156*181254a7Smrg        * generated/minloc0_4_r8.c: Regenerated.
157*181254a7Smrg        * generated/minloc0_4_s1.c: Regenerated.
158*181254a7Smrg        * generated/minloc0_4_s4.c: Regenerated.
159*181254a7Smrg        * generated/minloc0_8_i1.c: Regenerated.
160*181254a7Smrg        * generated/minloc0_8_i16.c: Regenerated.
161*181254a7Smrg        * generated/minloc0_8_i2.c: Regenerated.
162*181254a7Smrg        * generated/minloc0_8_i4.c: Regenerated.
163*181254a7Smrg        * generated/minloc0_8_i8.c: Regenerated.
164*181254a7Smrg        * generated/minloc0_8_r10.c: Regenerated.
165*181254a7Smrg        * generated/minloc0_8_r16.c: Regenerated.
166*181254a7Smrg        * generated/minloc0_8_r4.c: Regenerated.
167*181254a7Smrg        * generated/minloc0_8_r8.c: Regenerated.
168*181254a7Smrg        * generated/minloc0_8_s1.c: Regenerated.
169*181254a7Smrg        * generated/minloc0_8_s4.c: Regenerated.
170*181254a7Smrg        * generated/minloc1_16_i1.c: Regenerated.
171*181254a7Smrg        * generated/minloc1_16_i16.c: Regenerated.
172*181254a7Smrg        * generated/minloc1_16_i2.c: Regenerated.
173*181254a7Smrg        * generated/minloc1_16_i4.c: Regenerated.
174*181254a7Smrg        * generated/minloc1_16_i8.c: Regenerated.
175*181254a7Smrg        * generated/minloc1_16_r10.c: Regenerated.
176*181254a7Smrg        * generated/minloc1_16_r16.c: Regenerated.
177*181254a7Smrg        * generated/minloc1_16_r4.c: Regenerated.
178*181254a7Smrg        * generated/minloc1_16_r8.c: Regenerated.
179*181254a7Smrg        * generated/minloc1_16_s1.c: Regenerated.
180*181254a7Smrg        * generated/minloc1_16_s4.c: Regenerated.
181*181254a7Smrg        * generated/minloc1_4_i1.c: Regenerated.
182*181254a7Smrg        * generated/minloc1_4_i16.c: Regenerated.
183*181254a7Smrg        * generated/minloc1_4_i2.c: Regenerated.
184*181254a7Smrg        * generated/minloc1_4_i4.c: Regenerated.
185*181254a7Smrg        * generated/minloc1_4_i8.c: Regenerated.
186*181254a7Smrg        * generated/minloc1_4_r10.c: Regenerated.
187*181254a7Smrg        * generated/minloc1_4_r16.c: Regenerated.
188*181254a7Smrg        * generated/minloc1_4_r4.c: Regenerated.
189*181254a7Smrg        * generated/minloc1_4_r8.c: Regenerated.
190*181254a7Smrg        * generated/minloc1_4_s1.c: Regenerated.
191*181254a7Smrg        * generated/minloc1_4_s4.c: Regenerated.
192*181254a7Smrg        * generated/minloc1_8_i1.c: Regenerated.
193*181254a7Smrg        * generated/minloc1_8_i16.c: Regenerated.
194*181254a7Smrg        * generated/minloc1_8_i2.c: Regenerated.
195*181254a7Smrg        * generated/minloc1_8_i4.c: Regenerated.
196*181254a7Smrg        * generated/minloc1_8_i8.c: Regenerated.
197*181254a7Smrg        * generated/minloc1_8_r10.c: Regenerated.
198*181254a7Smrg        * generated/minloc1_8_r16.c: Regenerated.
199*181254a7Smrg        * generated/minloc1_8_r4.c: Regenerated.
200*181254a7Smrg        * generated/minloc1_8_r8.c: Regenerated.
201*181254a7Smrg        * generated/minloc1_8_s1.c: Regenerated.
202*181254a7Smrg        * generated/minloc1_8_s4.c: Regenerated.
203*181254a7Smrg        * generated/minval0_s1.c: Regenerated.
204*181254a7Smrg        * generated/minval0_s4.c: Regenerated.
205*181254a7Smrg        * generated/minval1_s1.c: Regenerated.
206*181254a7Smrg        * generated/minval1_s4.c: Regenerated.
207*181254a7Smrg        * generated/minval_i1.c: Regenerated.
208*181254a7Smrg        * generated/minval_i16.c: Regenerated.
209*181254a7Smrg        * generated/minval_i2.c: Regenerated.
210*181254a7Smrg        * generated/minval_i4.c: Regenerated.
211*181254a7Smrg        * generated/minval_i8.c: Regenerated.
212*181254a7Smrg        * generated/minval_r10.c: Regenerated.
213*181254a7Smrg        * generated/minval_r16.c: Regenerated.
214*181254a7Smrg        * generated/minval_r4.c: Regenerated.
215*181254a7Smrg        * generated/minval_r8.c: Regenerated.
216*181254a7Smrg        * generated/product_c10.c: Regenerated.
217*181254a7Smrg        * generated/product_c16.c: Regenerated.
218*181254a7Smrg        * generated/product_c4.c: Regenerated.
219*181254a7Smrg        * generated/product_c8.c: Regenerated.
220*181254a7Smrg        * generated/product_i1.c: Regenerated.
221*181254a7Smrg        * generated/product_i16.c: Regenerated.
222*181254a7Smrg        * generated/product_i2.c: Regenerated.
223*181254a7Smrg        * generated/product_i4.c: Regenerated.
224*181254a7Smrg        * generated/product_i8.c: Regenerated.
225*181254a7Smrg        * generated/product_r10.c: Regenerated.
226*181254a7Smrg        * generated/product_r16.c: Regenerated.
227*181254a7Smrg        * generated/product_r4.c: Regenerated.
228*181254a7Smrg        * generated/product_r8.c: Regenerated.
229*181254a7Smrg        * generated/sum_c10.c: Regenerated.
230*181254a7Smrg        * generated/sum_c16.c: Regenerated.
231*181254a7Smrg        * generated/sum_c4.c: Regenerated.
232*181254a7Smrg        * generated/sum_c8.c: Regenerated.
233*181254a7Smrg        * generated/sum_i1.c: Regenerated.
234*181254a7Smrg        * generated/sum_i16.c: Regenerated.
235*181254a7Smrg        * generated/sum_i2.c: Regenerated.
236*181254a7Smrg        * generated/sum_i4.c: Regenerated.
237*181254a7Smrg        * generated/sum_i8.c: Regenerated.
238*181254a7Smrg        * generated/sum_r10.c: Regenerated.
239*181254a7Smrg        * generated/sum_r16.c: Regenerated.
240*181254a7Smrg        * generated/sum_r4.c: Regenerated.
241*181254a7Smrg        * generated/sum_r8.c: Regenerated.
242*181254a7Smrg
243*181254a7Smrg2018-12-29  Steven G. Kargl  <kargl@gcc.gnu.org>
244*181254a7Smrg
245*181254a7Smrg	* gfortran.map: Expose subnormal functions in dynamic library.
246*181254a7Smrg	* ieee/ieee_arithmetic.F90: Add support for IEEE_SUBNORMAL,
247*181254a7Smrg	IEEE_POSITIVE_SUBNORMAL, and IEEE_NEGATIVE_SUBNORMAL.
248*181254a7Smrg	* ieee/ieee_helper.c: Ditto.
249*181254a7Smrg	* ieee/ieee_features.F90:  Add IEEE_SUBNORMAL.
250*181254a7Smrg
251*181254a7Smrg2018-12-29  Steven G. Kargl  <kargl@gcc.gnu.org>
252*181254a7Smrg
253*181254a7Smrg	PR fortran/88342
254*181254a7Smrg	* ieee/ieee_arithmetic.F90: Prevent exceptions in IEEE_VALUE if
255*181254a7Smrg	-ffpe-trap=invalid or -ffpe-trap=overflow is used.
256*181254a7Smrg
257*181254a7Smrg2018-12-28  Steven G. Kargl  <kargl@gcc.gnu.org>
258*181254a7Smrg
259*181254a7Smrg	PR fortran/81984
260*181254a7Smrg	* intrinsics/string_intrinsics_inc.c: Placate the sanitizer.
261*181254a7Smrg
262*181254a7Smrg2018-12-21  Steven G. Kargl  <kargl@gcc.gnu.org>
263*181254a7Smrg
264*181254a7Smrg	PR fortran/69121
265*181254a7Smrg	* ieee/ieee_arithmetic.F90: Provide missing interfaces for IEEE_SCALB.
266*181254a7Smrg
267*181254a7Smrg2018-12-20  Steven G. Kargl  <kargl@gcc.gnu.org>
268*181254a7Smrg
269*181254a7Smrg	* ieee/ieee_arithmetic.F90: Re-organize file to
270*181254a7Smrg	eliminate #ifdef ... #endif.  No functional change.
271*181254a7Smrg
272*181254a7Smrg2018-12-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
273*181254a7Smrg
274*181254a7Smrg	PR fortran/88411
275*181254a7Smrg	* io/transfer.c (dta_transfer_init): Do not treat as an
276*181254a7Smrg	asynchronous statement unless the statement has
277*181254a7Smrg	ASYNCHRONOUS="YES".
278*181254a7Smrg	(st_write_done): Likewise.
279*181254a7Smrg	(st_read_done): Do not perform async_wait for synchronous I/O
280*181254a7Smrg	on an async unit.
281*181254a7Smrg	(st_read_done): Likewise.
282*181254a7Smrg
283*181254a7Smrg2018-12-02  Janne Blomqvist  <jb@gcc.gnu.org>
284*181254a7Smrg
285*181254a7Smrg	PR libfortran/88137
286*181254a7Smrg	* runtime/backtrace.c (show_backtrace): Use atomic load/store to
287*181254a7Smrg	access the static lbstate pointer.
288*181254a7Smrg
289*181254a7Smrg2018-11-30  Janne Blomqvist  <jb@gcc.gnu.org>
290*181254a7Smrg
291*181254a7Smrg	PR libfortran/88137
292*181254a7Smrg	* runtime/backtrace.c (show_backtrace): Make lbstate a static
293*181254a7Smrg	variable, initialize once.
294*181254a7Smrg
295*181254a7Smrg2018-11-23  Janne Blomqvist  <jb@gcc.gnu.org>
296*181254a7Smrg
297*181254a7Smrg	* runtime/error.c (MAGIC): Remove.
298*181254a7Smrg	(recursion_key): New variable.
299*181254a7Smrg	(recursion_check): Use thread-specific variable for recursion
300*181254a7Smrg	check if threads are active.
301*181254a7Smrg	(constructor_recursion_check): New function.
302*181254a7Smrg	(destructor_recursion_check): New funcion.
303*181254a7Smrg
304*181254a7Smrg2018-11-22  Janne Blomqvist  <jb@gcc.gnu.org>
305*181254a7Smrg
306*181254a7Smrg	* acinclude.m4 (LIBGFOR_CHECK_ATOMIC_FETCH_ADD): Rename and test
307*181254a7Smrg	presence of atomic builtins instead of sync builtins.
308*181254a7Smrg	* configure.ac (LIBGFOR_CHECK_ATOMIC_FETCH_ADD): Call new test.
309*181254a7Smrg	* io/io.h (inc_waiting_locked): Use __atomic_fetch_add.
310*181254a7Smrg	(predec_waiting_locked): Use __atomic_add_fetch.
311*181254a7Smrg	(dec_waiting_unlocked): Use __atomic_fetch_add.
312*181254a7Smrg	* config.h.in: Regenerated.
313*181254a7Smrg	* configure: Regenerated.
314*181254a7Smrg	* Makefile.in: Regenerated.
315*181254a7Smrg
316*181254a7Smrg2018-11-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
317*181254a7Smrg
318*181254a7Smrg	PR libfortran/78351
319*181254a7Smrg	* io/transfer.c (read_sf_internal): Delete leftover
320*181254a7Smrg	debug code.
321*181254a7Smrg
322*181254a7Smrg2018-11-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
323*181254a7Smrg
324*181254a7Smrg	PR libfortran/78351
325*181254a7Smrg	* io/transfer.c (read_sf_internal): Add support for early
326*181254a7Smrg	comma termination of internal unit formatted reads.
327*181254a7Smrg
328*181254a7Smrg2018-10-31  Joseph Myers  <joseph@codesourcery.com>
329*181254a7Smrg
330*181254a7Smrg	PR bootstrap/82856
331*181254a7Smrg	* Makefile.am: Include multilib.am.
332*181254a7Smrg	* configure.ac: Remove AC_PREREQ.
333*181254a7Smrg	* Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
334*181254a7Smrg
335*181254a7Smrg2017-10-28  Thomas Koenig  <tkoenig@gcc.gnu.org>
336*181254a7Smrg
337*181254a7Smrg	PR fortran/54613
338*181254a7Smrg	* Makefile.am: Add files for findloc.
339*181254a7Smrg	* Makefile.in: Regenerated.
340*181254a7Smrg	* libgfortran.h (gfc_array_index_type): Add.
341*181254a7Smrg	(gfc_array_s1): Add using GFC_UINTEGER_1.
342*181254a7Smrg	(gfc_array_s4): Likewise.
343*181254a7Smrg	Replace unnecessary comment.
344*181254a7Smrg	(HAVE_GFC_UINTEGER_1): Define.
345*181254a7Smrg	(HAVE_GFC_UINTEGER_4): Define.
346*181254a7Smrg	* m4/findloc0.m4: New file.
347*181254a7Smrg	* m4/findloc0s.m4: New file.
348*181254a7Smrg	* m4/findloc1.m4: New file.
349*181254a7Smrg	* m4/findloc1s.m4: New file.
350*181254a7Smrg	* m4/findloc2s.m4: New file.
351*181254a7Smrg	* m4/ifindloc0.m4: New file.
352*181254a7Smrg	* m4/ifindloc1.m4: New file.
353*181254a7Smrg	* m4/ifindloc2.m4: New file.
354*181254a7Smrg	* m4/iparm.m4: Use unsigned integer for characters.
355*181254a7Smrg        * generated/findloc0_c16.c: New file.
356*181254a7Smrg        * generated/findloc0_c4.c: New file.
357*181254a7Smrg        * generated/findloc0_c8.c: New file.
358*181254a7Smrg        * generated/findloc0_i1.c: New file.
359*181254a7Smrg        * generated/findloc0_i16.c: New file.
360*181254a7Smrg        * generated/findloc0_i2.c: New file.
361*181254a7Smrg        * generated/findloc0_i4.c: New file.
362*181254a7Smrg        * generated/findloc0_i8.c: New file.
363*181254a7Smrg        * generated/findloc0_r16.c: New file.
364*181254a7Smrg        * generated/findloc0_r4.c: New file.
365*181254a7Smrg        * generated/findloc0_r8.c: New file.
366*181254a7Smrg        * generated/findloc0_s1.c: New file.
367*181254a7Smrg        * generated/findloc0_s4.c: New file.
368*181254a7Smrg        * generated/findloc1_c16.c: New file.
369*181254a7Smrg        * generated/findloc1_c4.c: New file.
370*181254a7Smrg        * generated/findloc1_c8.c: New file.
371*181254a7Smrg        * generated/findloc1_i1.c: New file.
372*181254a7Smrg        * generated/findloc1_i16.c: New file.
373*181254a7Smrg        * generated/findloc1_i2.c: New file.
374*181254a7Smrg        * generated/findloc1_i4.c: New file.
375*181254a7Smrg        * generated/findloc1_i8.c: New file.
376*181254a7Smrg        * generated/findloc1_r16.c: New file.
377*181254a7Smrg        * generated/findloc1_r4.c: New file.
378*181254a7Smrg        * generated/findloc1_r8.c: New file.
379*181254a7Smrg        * generated/findloc1_s1.c: New file.
380*181254a7Smrg        * generated/findloc1_s4.c: New file.
381*181254a7Smrg        * generated/findloc2_s1.c: New file.
382*181254a7Smrg        * generated/findloc2_s4.c: New file.
383*181254a7Smrg        * generated/maxloc0_16_s1.c: Regenerated.
384*181254a7Smrg        * generated/maxloc0_16_s4.c: Regenerated.
385*181254a7Smrg        * generated/maxloc0_4_s1.c: Regenerated.
386*181254a7Smrg        * generated/maxloc0_4_s4.c: Regenerated.
387*181254a7Smrg        * generated/maxloc0_8_s1.c: Regenerated.
388*181254a7Smrg        * generated/maxloc0_8_s4.c: Regenerated.
389*181254a7Smrg        * generated/maxloc1_16_s1.c: Regenerated.
390*181254a7Smrg        * generated/maxloc1_16_s4.c: Regenerated.
391*181254a7Smrg        * generated/maxloc1_4_s1.c: Regenerated.
392*181254a7Smrg        * generated/maxloc1_4_s4.c: Regenerated.
393*181254a7Smrg        * generated/maxloc1_8_s1.c: Regenerated.
394*181254a7Smrg        * generated/maxloc1_8_s4.c: Regenerated.
395*181254a7Smrg        * generated/maxloc2_16_s1.c: Regenerated.
396*181254a7Smrg        * generated/maxloc2_16_s4.c: Regenerated.
397*181254a7Smrg        * generated/maxloc2_4_s1.c: Regenerated.
398*181254a7Smrg        * generated/maxloc2_4_s4.c: Regenerated.
399*181254a7Smrg        * generated/maxloc2_8_s1.c: Regenerated.
400*181254a7Smrg        * generated/maxloc2_8_s4.c: Regenerated.
401*181254a7Smrg        * generated/maxval0_s1.c: Regenerated.
402*181254a7Smrg        * generated/maxval0_s4.c: Regenerated.
403*181254a7Smrg        * generated/maxval1_s1.c: Regenerated.
404*181254a7Smrg        * generated/maxval1_s4.c: Regenerated.
405*181254a7Smrg        * generated/minloc0_16_s1.c: Regenerated.
406*181254a7Smrg        * generated/minloc0_16_s4.c: Regenerated.
407*181254a7Smrg        * generated/minloc0_4_s1.c: Regenerated.
408*181254a7Smrg        * generated/minloc0_4_s4.c: Regenerated.
409*181254a7Smrg        * generated/minloc0_8_s1.c: Regenerated.
410*181254a7Smrg        * generated/minloc0_8_s4.c: Regenerated.
411*181254a7Smrg        * generated/minloc1_16_s1.c: Regenerated.
412*181254a7Smrg        * generated/minloc1_16_s4.c: Regenerated.
413*181254a7Smrg        * generated/minloc1_4_s1.c: Regenerated.
414*181254a7Smrg        * generated/minloc1_4_s4.c: Regenerated.
415*181254a7Smrg        * generated/minloc1_8_s1.c: Regenerated.
416*181254a7Smrg        * generated/minloc1_8_s4.c: Regenerated.
417*181254a7Smrg        * generated/minloc2_16_s1.c: Regenerated.
418*181254a7Smrg        * generated/minloc2_16_s4.c: Regenerated.
419*181254a7Smrg        * generated/minloc2_4_s1.c: Regenerated.
420*181254a7Smrg        * generated/minloc2_4_s4.c: Regenerated.
421*181254a7Smrg        * generated/minloc2_8_s1.c: Regenerated.
422*181254a7Smrg        * generated/minloc2_8_s4.c: Regenerated.
423*181254a7Smrg        * generated/minval0_s1.c: Regenerated.
424*181254a7Smrg        * generated/minval0_s4.c: Regenerated.
425*181254a7Smrg        * generated/minval1_s1.c: Regenerated.
426*181254a7Smrg        * generated/minval1_s4.c: Regenerated.
427*181254a7Smrg
428*181254a7Smrg2018-10-06  Janne Blomqvist  <jb@gcc.gnu.org>
429*181254a7Smrg
430*181254a7Smrg	* io/unix.c (compare_file_filename): Use gfc_charlen_type instead
431*181254a7Smrg	of int for string length.
432*181254a7Smrg	(inquire_sequential): Likewise.
433*181254a7Smrg	(inquire_direct): Likewise.
434*181254a7Smrg	(inquire_formatted): Likewise.
435*181254a7Smrg	(inquire_unformatted): Likewise.
436*181254a7Smrg	(inquire_access): Likewise.
437*181254a7Smrg	(inquire_read): Likewise.
438*181254a7Smrg	(inquire_write): Likewise.
439*181254a7Smrg	(inquire_readwrite): Likewise.
440*181254a7Smrg	* io/unix.h (compare_file_filename): Likewise.
441*181254a7Smrg	(inquire_sequential): Likewise.
442*181254a7Smrg	(inquire_direct): Likewise.
443*181254a7Smrg	(inquire_formatted): Likewise.
444*181254a7Smrg	(inquire_unformatted): Likewise.
445*181254a7Smrg	(inquire_read): Likewise.
446*181254a7Smrg	(inquire_write): Likewise.
447*181254a7Smrg	(inquire_readwrite): Likewise.
448*181254a7Smrg
449*181254a7Smrg2018-10-02  Gerald Pfeifer  <gerald@pfeifer.com>
450*181254a7Smrg
451*181254a7Smrg	* io/close.c [!HAVE_UNLINK_OPEN_FILE]: Include <string.h>.
452*181254a7Smrg
453*181254a7Smrg2018-09-21  Janne Blomqvist  <jb@gcc.gnu.org>
454*181254a7Smrg
455*181254a7Smrg	* config.h.in: Regenerated.
456*181254a7Smrg	* configure: Regenerated.
457*181254a7Smrg	* configure.ac: Check for writev and sys/uio.h.
458*181254a7Smrg	* libgfortran.h: Include sys/uio.h.
459*181254a7Smrg	(st_vprintf): Remove prototype.
460*181254a7Smrg	(struct iovec): Define if not available.
461*181254a7Smrg	(estr_writev): New prototype.
462*181254a7Smrg	* runtime/backtrace.c (error_callback): Use estr_writev.
463*181254a7Smrg	* runtime/error.c (ST_VPRINTF_SIZE): Remove.
464*181254a7Smrg	(estr_writev): New function.
465*181254a7Smrg	(st_vprintf): Remove.
466*181254a7Smrg	(gf_vsnprintf): New function.
467*181254a7Smrg	(ST_ERRBUF_SIZE): New macro.
468*181254a7Smrg	(st_printf): Use vsnprintf.
469*181254a7Smrg	(os_error): Use estr_writev.
470*181254a7Smrg	(runtime_error): Use vsnprintf and estr_writev.
471*181254a7Smrg	(runtime_error_at): Likewise.
472*181254a7Smrg	(runtime_warning_at): Likewise.
473*181254a7Smrg	(internal_error): Use estr_writev.
474*181254a7Smrg	(generate_error_common): Likewise.
475*181254a7Smrg	(generate_warning): Likewise.
476*181254a7Smrg	(notify_std): Likewise.
477*181254a7Smrg	* runtime/pause.c (pause_string): Likewise.
478*181254a7Smrg	* runtime/stop.c (report_exception): Likewise.
479*181254a7Smrg	(stop_string): Likewise.
480*181254a7Smrg	(error_stop_string): Likewise.
481*181254a7Smrg
482*181254a7Smrg2018-09-16  Thomas Koenig  <tkoenig@gcc.gnu.org>
483*181254a7Smrg
484*181254a7Smrg	PR fortran/37802
485*181254a7Smrg	* m4/matmul_internal.m4: Adjust error messages.
486*181254a7Smrg        * generated/matmul_c10.c: Regenerated.
487*181254a7Smrg        * generated/matmul_c16.c: Regenerated.
488*181254a7Smrg        * generated/matmul_c4.c: Regenerated.
489*181254a7Smrg        * generated/matmul_c8.c: Regenerated.
490*181254a7Smrg        * generated/matmul_i1.c: Regenerated.
491*181254a7Smrg        * generated/matmul_i16.c: Regenerated.
492*181254a7Smrg        * generated/matmul_i2.c: Regenerated.
493*181254a7Smrg        * generated/matmul_i4.c: Regenerated.
494*181254a7Smrg        * generated/matmul_i8.c: Regenerated.
495*181254a7Smrg        * generated/matmul_r10.c: Regenerated.
496*181254a7Smrg        * generated/matmul_r16.c: Regenerated.
497*181254a7Smrg        * generated/matmul_r4.c: Regenerated.
498*181254a7Smrg        * generated/matmul_r8.c: Regenerated.
499*181254a7Smrg        * generated/matmulavx128_c10.c: Regenerated.
500*181254a7Smrg        * generated/matmulavx128_c16.c: Regenerated.
501*181254a7Smrg        * generated/matmulavx128_c4.c: Regenerated.
502*181254a7Smrg        * generated/matmulavx128_c8.c: Regenerated.
503*181254a7Smrg        * generated/matmulavx128_i1.c: Regenerated.
504*181254a7Smrg        * generated/matmulavx128_i16.c: Regenerated.
505*181254a7Smrg        * generated/matmulavx128_i2.c: Regenerated.
506*181254a7Smrg        * generated/matmulavx128_i4.c: Regenerated.
507*181254a7Smrg        * generated/matmulavx128_i8.c: Regenerated.
508*181254a7Smrg        * generated/matmulavx128_r10.c: Regenerated.
509*181254a7Smrg        * generated/matmulavx128_r16.c: Regenerated.
510*181254a7Smrg        * generated/matmulavx128_r4.c: Regenerated.
511*181254a7Smrg        * generated/matmulavx128_r8.c: Regenerated.
512*181254a7Smrg
513*181254a7Smrg2018-09-14  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
514*181254a7Smrg
515*181254a7Smrg	* io/unix.c (fallback_access): Avoid calling close on
516*181254a7Smrg	uninitialized file descriptor.
517*181254a7Smrg
518*181254a7Smrg2018-09-12  Kwok Cheung Yeung  <kcy@codesourcery.com>
519*181254a7Smrg
520*181254a7Smrg	* runtime/minimal.c (estr_write): Define in terms of write.
521*181254a7Smrg
522*181254a7Smrg2018-09-12  Andrew Stubbs  <ams@codesourcery.com>
523*181254a7Smrg
524*181254a7Smrg	* runtime/minimal.c (exit): Only work around nvptx bugs on nvptx.
525*181254a7Smrg
526*181254a7Smrg2018-09-07  Janne Blomqvist  <jb@gcc.gnu.org>
527*181254a7Smrg
528*181254a7Smrg	* runtime/environ.c (init_unsigned_integer): Remove.
529*181254a7Smrg
530*181254a7Smrg2018-09-05  Hans-Peter Nilsson  <hp@axis.com>
531*181254a7Smrg
532*181254a7Smrg	* io/async.h: Use __gthread_mutex_t, not pthread_mutex_t.
533*181254a7Smrg
534*181254a7Smrg2018-09-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
535*181254a7Smrg
536*181254a7Smrg	* io/io.h: Change declaration of vlist type to
537*181254a7Smrg	gfc_full_array_i4 to eliminate warning for mismatched type.
538*181254a7Smrg	* io/format.c ((parse_format_list): Use gfc_full_array_i4.
539*181254a7Smrg	* io/io.h: Use gfc_full_array_i4.
540*181254a7Smrg
541*181254a7Smrg2018-08-25  Thomas Koenig  <tkoenig@gcc.gnu.org>
542*181254a7Smrg
543*181254a7Smrg	PR libfortran/86704
544*181254a7Smrg	* m4/matmul_internal.m4: Correct calculation of needed buffer size
545*181254a7Smrg	for arrays of shape (1,n).
546*181254a7Smrg	* generated/matmul_c10.c: Regenerated
547*181254a7Smrg	* generated/matmul_c16.c: Regenerated
548*181254a7Smrg	* generated/matmul_c4.c: Regenerated
549*181254a7Smrg	* generated/matmul_c8.c: Regenerated
550*181254a7Smrg	* generated/matmul_i1.c: Regenerated
551*181254a7Smrg	* generated/matmul_i16.c: Regenerated
552*181254a7Smrg	* generated/matmul_i2.c: Regenerated
553*181254a7Smrg	* generated/matmul_i4.c: Regenerated
554*181254a7Smrg	* generated/matmul_i8.c: Regenerated
555*181254a7Smrg	* generated/matmul_r10.c: Regenerated
556*181254a7Smrg	* generated/matmul_r16.c: Regenerated
557*181254a7Smrg	* generated/matmul_r4.c: Regenerated
558*181254a7Smrg	* generated/matmul_r8.c: Regenerated
559*181254a7Smrg	* generated/matmulavx128_c10.c: Regenerated
560*181254a7Smrg	* generated/matmulavx128_c16.c: Regenerated
561*181254a7Smrg	* generated/matmulavx128_c4.c: Regenerated
562*181254a7Smrg	* generated/matmulavx128_c8.c: Regenerated
563*181254a7Smrg	* generated/matmulavx128_i1.c: Regenerated
564*181254a7Smrg	* generated/matmulavx128_i16.c: Regenerated
565*181254a7Smrg	* generated/matmulavx128_i2.c: Regenerated
566*181254a7Smrg	* generated/matmulavx128_i4.c: Regenerated
567*181254a7Smrg	* generated/matmulavx128_i8.c: Regenerated
568*181254a7Smrg	* generated/matmulavx128_r10.c: Regenerated
569*181254a7Smrg	* generated/matmulavx128_r16.c: Regenerated
570*181254a7Smrg	* generated/matmulavx128_r4.c: Regenerated
571*181254a7Smrg	* generated/matmulavx128_r8.c: Regenerated
572*181254a7Smrg
573*181254a7Smrg2018-08-23  David Edelsohn  <dje.gcc@gmail.com>
574*181254a7Smrg
575*181254a7Smrg	* async.h (ASYNC_IO): Revert _AIX test.
576*181254a7Smrg
577*181254a7Smrg2018-08-22  Thomas Koenig  <tkoenig@gcc.gnu.org>
578*181254a7Smrg
579*181254a7Smrg	* async.h: Set ASYNC_IO to zero if _AIX is defined.
580*181254a7Smrg	(struct adv_cond): If ASYNC_IO is zero, the struct has no members.
581*181254a7Smrg	(async_unit): If ASYNC_IO is zero, remove unneeded members.
582*181254a7Smrg
583*181254a7Smrg2018-08-21  Nicolas Koenig  <koenigni@gcc.gnu.org>
584*181254a7Smrg	Thomas Koenig <tkoenig@gcc.gnu.org>
585*181254a7Smrg
586*181254a7Smrg	PR fortran/25829
587*181254a7Smrg	* Makefile.am: Add async.c to gfor_io_src.
588*181254a7Smrg	Add async.h to gfor_io_headers.
589*181254a7Smrg	* Makefile.in: Regenerated.
590*181254a7Smrg	* gfortran.map: Add _gfortran_st_wait_async.
591*181254a7Smrg	* io/async.c: New file.
592*181254a7Smrg	* io/async.h: New file.
593*181254a7Smrg	* io/close.c: Include async.h.
594*181254a7Smrg	(st_close): Call async_wait for an asynchronous unit.
595*181254a7Smrg	* io/file_pos.c (st_backspace): Likewise.
596*181254a7Smrg	(st_endfile): Likewise.
597*181254a7Smrg	(st_rewind): Likewise.
598*181254a7Smrg	(st_flush): Likewise.
599*181254a7Smrg	* io/inquire.c: Add handling for asynchronous PENDING
600*181254a7Smrg	and ID arguments.
601*181254a7Smrg	* io/io.h (st_parameter_dt): Add async bit.
602*181254a7Smrg	(st_parameter_wait): Correct.
603*181254a7Smrg	(gfc_unit): Add au pointer.
604*181254a7Smrg	(st_wait_async): Add prototype.
605*181254a7Smrg	(transfer_array_inner): Likewise.
606*181254a7Smrg	(st_write_done_worker): Likewise.
607*181254a7Smrg	* io/open.c: Include async.h.
608*181254a7Smrg	(new_unit): Initialize asynchronous unit.
609*181254a7Smrg	* io/transfer.c (async_opt): New struct.
610*181254a7Smrg	(wrap_scalar_transfer): New function.
611*181254a7Smrg	(transfer_integer): Call wrap_scalar_transfer to do the work.
612*181254a7Smrg	(transfer_real): Likewise.
613*181254a7Smrg	(transfer_real_write): Likewise.
614*181254a7Smrg	(transfer_character): Likewise.
615*181254a7Smrg	(transfer_character_wide): Likewise.
616*181254a7Smrg	(transfer_complex): Likewise.
617*181254a7Smrg	(transfer_array_inner): New function.
618*181254a7Smrg	(transfer_array): Call transfer_array_inner.
619*181254a7Smrg	(transfer_derived): Call wrap_scalar_transfer.
620*181254a7Smrg	(data_transfer_init): Check for asynchronous I/O.
621*181254a7Smrg	Perform a wait operation on any pending asynchronous I/O
622*181254a7Smrg	if the data transfer is synchronous. Copy PDT and enqueue
623*181254a7Smrg	thread for data transfer.
624*181254a7Smrg	(st_read_done_worker): New function.
625*181254a7Smrg	(st_read_done): Enqueue transfer or call st_read_done_worker.
626*181254a7Smrg	(st_write_done_worker): New function.
627*181254a7Smrg	(st_write_done): Enqueue transfer or call st_read_done_worker.
628*181254a7Smrg	(st_wait): Document as no-op for compatibility reasons.
629*181254a7Smrg	(st_wait_async): New function.
630*181254a7Smrg	* io/unit.c (insert_unit): Use macros LOCK, UNLOCK and TRYLOCK;
631*181254a7Smrg	add NOTE where necessary.
632*181254a7Smrg	(get_gfc_unit): Likewise.
633*181254a7Smrg	(init_units): Likewise.
634*181254a7Smrg	(close_unit_1): Likewise. Call async_close if asynchronous.
635*181254a7Smrg	(close_unit): Use macros LOCK and UNLOCK.
636*181254a7Smrg	(finish_last_advance_record): Likewise.
637*181254a7Smrg	(newunit_alloc): Likewise.
638*181254a7Smrg	* io/unix.c (find_file): Likewise.
639*181254a7Smrg	(flush_all_units_1): Likewise.
640*181254a7Smrg	(flush_all_units): Likewise.
641*181254a7Smrg	* libgfortran.h (generate_error_common): Add prototype.
642*181254a7Smrg	* runtime/error.c: Include io.h and async.h.
643*181254a7Smrg	(generate_error_common): New function.
644*181254a7Smrg
645*181254a7Smrg2018-08-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
646*181254a7Smrg
647*181254a7Smrg	* configure.ac: Check for <sys/random.h>.
648*181254a7Smrg	* configure, config.h.in: Regenerate.
649*181254a7Smrg	* intrinsics/random.c [HAVE_SYS_RANDOM_H]: Include <sys/random.h>.
650*181254a7Smrg
651*181254a7Smrg2018-08-13  Janne Blomqvist  <jb@gcc.gnu.org>
652*181254a7Smrg
653*181254a7Smrg	* configure.ac: Check for getentropy.
654*181254a7Smrg	* intrinsics/random.c (getosrandom): Use getentropy if available.
655*181254a7Smrg	* config.h.in: Regenerated.
656*181254a7Smrg	* configure: Regenerated.
657*181254a7Smrg
658*181254a7Smrg2018-07-31  Andre Vieira  <andre.simoesdiasvieira@arm.com>
659*181254a7Smrg
660*181254a7Smrg	Revert 'AsyncI/O patch committed'
661*181254a7Smrg	2018-07-25  Nicolas Koenig  <koenigni@gcc.gnu.org>
662*181254a7Smrg		Thomas Koenig <tkoenig@gcc.gnu.org>
663*181254a7Smrg
664*181254a7Smrg	PR fortran/25829
665*181254a7Smrg	* Makefile.am: Add async.c to gfor_io_src.
666*181254a7Smrg	Add async.h to gfor_io_headers.
667*181254a7Smrg	* Makefile.in: Regenerated.
668*181254a7Smrg	* gfortran.map: Add _gfortran_st_wait_async.
669*181254a7Smrg	* io/async.c: New file.
670*181254a7Smrg	* io/async.h: New file.
671*181254a7Smrg	* io/close.c: Include async.h.
672*181254a7Smrg	(st_close): Call async_wait for an asynchronous unit.
673*181254a7Smrg	* io/file_pos.c (st_backspace): Likewise.
674*181254a7Smrg	(st_endfile): Likewise.
675*181254a7Smrg	(st_rewind): Likewise.
676*181254a7Smrg	(st_flush): Likewise.
677*181254a7Smrg	* io/inquire.c: Add handling for asynchronous PENDING
678*181254a7Smrg	and ID arguments.
679*181254a7Smrg	* io/io.h (st_parameter_dt): Add async bit.
680*181254a7Smrg	(st_parameter_wait): Correct.
681*181254a7Smrg	(gfc_unit): Add au pointer.
682*181254a7Smrg	(st_wait_async): Add prototype.
683*181254a7Smrg	(transfer_array_inner): Likewise.
684*181254a7Smrg	(st_write_done_worker): Likewise.
685*181254a7Smrg	* io/open.c: Include async.h.
686*181254a7Smrg	(new_unit): Initialize asynchronous unit.
687*181254a7Smrg	* io/transfer.c (async_opt): New struct.
688*181254a7Smrg	(wrap_scalar_transfer): New function.
689*181254a7Smrg	(transfer_integer): Call wrap_scalar_transfer to do the work.
690*181254a7Smrg	(transfer_real): Likewise.
691*181254a7Smrg	(transfer_real_write): Likewise.
692*181254a7Smrg	(transfer_character): Likewise.
693*181254a7Smrg	(transfer_character_wide): Likewise.
694*181254a7Smrg	(transfer_complex): Likewise.
695*181254a7Smrg	(transfer_array_inner): New function.
696*181254a7Smrg	(transfer_array): Call transfer_array_inner.
697*181254a7Smrg	(transfer_derived): Call wrap_scalar_transfer.
698*181254a7Smrg	(data_transfer_init): Check for asynchronous I/O.
699*181254a7Smrg	Perform a wait operation on any pending asynchronous I/O
700*181254a7Smrg	if the data transfer is synchronous. Copy PDT and enqueue
701*181254a7Smrg	thread for data transfer.
702*181254a7Smrg	(st_read_done_worker): New function.
703*181254a7Smrg	(st_read_done): Enqueue transfer or call st_read_done_worker.
704*181254a7Smrg	(st_write_done_worker): New function.
705*181254a7Smrg	(st_write_done): Enqueue transfer or call st_read_done_worker.
706*181254a7Smrg	(st_wait): Document as no-op for compatibility reasons.
707*181254a7Smrg	(st_wait_async): New function.
708*181254a7Smrg	* io/unit.c (insert_unit): Use macros LOCK, UNLOCK and TRYLOCK;
709*181254a7Smrg	add NOTE where necessary.
710*181254a7Smrg	(get_gfc_unit): Likewise.
711*181254a7Smrg	(init_units): Likewise.
712*181254a7Smrg	(close_unit_1): Likewise. Call async_close if asynchronous.
713*181254a7Smrg	(close_unit): Use macros LOCK and UNLOCK.
714*181254a7Smrg	(finish_last_advance_record): Likewise.
715*181254a7Smrg	(newunit_alloc): Likewise.
716*181254a7Smrg	* io/unix.c (find_file): Likewise.
717*181254a7Smrg	(flush_all_units_1): Likewise.
718*181254a7Smrg	(flush_all_units): Likewise.
719*181254a7Smrg	* libgfortran.h (generate_error_common): Add prototype.
720*181254a7Smrg	* runtime/error.c: Include io.h and async.h.
721*181254a7Smrg	(generate_error_common): New function.
722*181254a7Smrg
723*181254a7Smrg2018-07-25  Nicolas Koenig  <koenigni@gcc.gnu.org>
724*181254a7Smrg	Thomas Koenig <tkoenig@gcc.gnu.org>
725*181254a7Smrg
726*181254a7Smrg	PR fortran/25829
727*181254a7Smrg	* Makefile.am: Add async.c to gfor_io_src.
728*181254a7Smrg	Add async.h to gfor_io_headers.
729*181254a7Smrg	* Makefile.in: Regenerated.
730*181254a7Smrg	* gfortran.map: Add _gfortran_st_wait_async.
731*181254a7Smrg	* io/async.c: New file.
732*181254a7Smrg	* io/async.h: New file.
733*181254a7Smrg	* io/close.c: Include async.h.
734*181254a7Smrg	(st_close): Call async_wait for an asynchronous unit.
735*181254a7Smrg	* io/file_pos.c (st_backspace): Likewise.
736*181254a7Smrg	(st_endfile): Likewise.
737*181254a7Smrg	(st_rewind): Likewise.
738*181254a7Smrg	(st_flush): Likewise.
739*181254a7Smrg	* io/inquire.c: Add handling for asynchronous PENDING
740*181254a7Smrg	and ID arguments.
741*181254a7Smrg	* io/io.h (st_parameter_dt): Add async bit.
742*181254a7Smrg	(st_parameter_wait): Correct.
743*181254a7Smrg	(gfc_unit): Add au pointer.
744*181254a7Smrg	(st_wait_async): Add prototype.
745*181254a7Smrg	(transfer_array_inner): Likewise.
746*181254a7Smrg	(st_write_done_worker): Likewise.
747*181254a7Smrg	* io/open.c: Include async.h.
748*181254a7Smrg	(new_unit): Initialize asynchronous unit.
749*181254a7Smrg	* io/transfer.c (async_opt): New struct.
750*181254a7Smrg	(wrap_scalar_transfer): New function.
751*181254a7Smrg	(transfer_integer): Call wrap_scalar_transfer to do the work.
752*181254a7Smrg	(transfer_real): Likewise.
753*181254a7Smrg	(transfer_real_write): Likewise.
754*181254a7Smrg	(transfer_character): Likewise.
755*181254a7Smrg	(transfer_character_wide): Likewise.
756*181254a7Smrg	(transfer_complex): Likewise.
757*181254a7Smrg	(transfer_array_inner): New function.
758*181254a7Smrg	(transfer_array): Call transfer_array_inner.
759*181254a7Smrg	(transfer_derived): Call wrap_scalar_transfer.
760*181254a7Smrg	(data_transfer_init): Check for asynchronous I/O.
761*181254a7Smrg	Perform a wait operation on any pending asynchronous I/O
762*181254a7Smrg	if the data transfer is synchronous. Copy PDT and enqueue
763*181254a7Smrg	thread for data transfer.
764*181254a7Smrg	(st_read_done_worker): New function.
765*181254a7Smrg	(st_read_done): Enqueue transfer or call st_read_done_worker.
766*181254a7Smrg	(st_write_done_worker): New function.
767*181254a7Smrg	(st_write_done): Enqueue transfer or call st_read_done_worker.
768*181254a7Smrg	(st_wait): Document as no-op for compatibility reasons.
769*181254a7Smrg	(st_wait_async): New function.
770*181254a7Smrg	* io/unit.c (insert_unit): Use macros LOCK, UNLOCK and TRYLOCK;
771*181254a7Smrg	add NOTE where necessary.
772*181254a7Smrg	(get_gfc_unit): Likewise.
773*181254a7Smrg	(init_units): Likewise.
774*181254a7Smrg	(close_unit_1): Likewise. Call async_close if asynchronous.
775*181254a7Smrg	(close_unit): Use macros LOCK and UNLOCK.
776*181254a7Smrg	(finish_last_advance_record): Likewise.
777*181254a7Smrg	(newunit_alloc): Likewise.
778*181254a7Smrg	* io/unix.c (find_file): Likewise.
779*181254a7Smrg	(flush_all_units_1): Likewise.
780*181254a7Smrg	(flush_all_units): Likewise.
781*181254a7Smrg	* libgfortran.h (generate_error_common): Add prototype.
782*181254a7Smrg	* runtime/error.c: Include io.h and async.h.
783*181254a7Smrg	(generate_error_common): New function.
784*181254a7Smrg
785*181254a7Smrg2018-06-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
786*181254a7Smrg
787*181254a7Smrg	PR libgfortran/86070
788*181254a7Smrg	* io/write_float.def (build_float_string): Initialize *len.
789*181254a7Smrg
790*181254a7Smrg2018-06-01  Steven G. Kargl  <kargl@gcc.gnu.org>
791*181254a7Smrg
792*181254a7Smrg	PR fortran/85816
793*181254a7Smrg	PR fortran/85975
794*181254a7Smrg	* libgfortran.h: Remove the GFC_DTYPE_COPY_SETRANK macro.
795*181254a7Smrg	* intrinsics/reshape_generic.c: Directly assign rank.
796*181254a7Smrg	* intrinsics/spread_generic.c: Ditto.
797*181254a7Smrg	* m4/iforeach-s.m4: Ditto.
798*181254a7Smrg	* m4/iforeach.m4: Ditto.
799*181254a7Smrg	* m4/ifunction-s.m4: Ditto.
800*181254a7Smrg	* m4/ifunction-s2.m4: Ditto.
801*181254a7Smrg	* m4/ifunction.m4: Ditto.
802*181254a7Smrg	* m4/ifunction_logical.m4: Ditto.
803*181254a7Smrg	* m4/reshape.m4: Ditto.
804*181254a7Smrg	* m4/spread.m4: Ditto.
805*181254a7Smrg	* generated/all_l1.c: Regenerated from m4 files.
806*181254a7Smrg	* generated/all_l16.c: Ditto.
807*181254a7Smrg	* generated/all_l2.c: Ditto.
808*181254a7Smrg	* generated/all_l4.c: Ditto.
809*181254a7Smrg	* generated/all_l8.c: Ditto.
810*181254a7Smrg	* generated/any_l1.c: Ditto.
811*181254a7Smrg	* generated/any_l16.c: Ditto.
812*181254a7Smrg	* generated/any_l2.c: Ditto.
813*181254a7Smrg	* generated/any_l4.c: Ditto.
814*181254a7Smrg	* generated/any_l8.c: Ditto.
815*181254a7Smrg	* generated/count_16_l.c: Ditto.
816*181254a7Smrg	* generated/count_1_l.c: Ditto.
817*181254a7Smrg	* generated/count_2_l.c: Ditto.
818*181254a7Smrg	* generated/count_4_l.c: Ditto.
819*181254a7Smrg	* generated/count_8_l.c: Ditto.
820*181254a7Smrg	* generated/iall_i1.c: Ditto.
821*181254a7Smrg	* generated/iall_i16.c: Ditto.
822*181254a7Smrg	* generated/iall_i2.c: Ditto.
823*181254a7Smrg	* generated/iall_i4.c: Ditto.
824*181254a7Smrg	* generated/iall_i8.c: Ditto.
825*181254a7Smrg	* generated/iany_i1.c: Ditto.
826*181254a7Smrg	* generated/iany_i16.c: Ditto.
827*181254a7Smrg	* generated/iany_i2.c: Ditto.
828*181254a7Smrg	* generated/iany_i4.c: Ditto.
829*181254a7Smrg	* generated/iany_i8.c: Ditto.
830*181254a7Smrg	* generated/iparity_i1.c: Ditto.
831*181254a7Smrg	* generated/iparity_i16.c: Ditto.
832*181254a7Smrg	* generated/iparity_i2.c: Ditto.
833*181254a7Smrg	* generated/iparity_i4.c: Ditto.
834*181254a7Smrg	* generated/iparity_i8.c: Ditto.
835*181254a7Smrg	* generated/maxloc0_16_i1.c: Ditto.
836*181254a7Smrg	* generated/maxloc0_16_i16.c: Ditto.
837*181254a7Smrg	* generated/maxloc0_16_i2.c: Ditto.
838*181254a7Smrg	* generated/maxloc0_16_i4.c: Ditto.
839*181254a7Smrg	* generated/maxloc0_16_i8.c: Ditto.
840*181254a7Smrg	* generated/maxloc0_16_r10.c: Ditto.
841*181254a7Smrg	* generated/maxloc0_16_r16.c: Ditto.
842*181254a7Smrg	* generated/maxloc0_16_r4.c: Ditto.
843*181254a7Smrg	* generated/maxloc0_16_r8.c: Ditto.
844*181254a7Smrg	* generated/maxloc0_16_s1.c: Ditto.
845*181254a7Smrg	* generated/maxloc0_16_s4.c: Ditto.
846*181254a7Smrg	* generated/maxloc0_4_i1.c: Ditto.
847*181254a7Smrg	* generated/maxloc0_4_i16.c: Ditto.
848*181254a7Smrg	* generated/maxloc0_4_i2.c: Ditto.
849*181254a7Smrg	* generated/maxloc0_4_i4.c: Ditto.
850*181254a7Smrg	* generated/maxloc0_4_i8.c: Ditto.
851*181254a7Smrg	* generated/maxloc0_4_r10.c: Ditto.
852*181254a7Smrg	* generated/maxloc0_4_r16.c: Ditto.
853*181254a7Smrg	* generated/maxloc0_4_r4.c: Ditto.
854*181254a7Smrg	* generated/maxloc0_4_r8.c: Ditto.
855*181254a7Smrg	* generated/maxloc0_4_s1.c: Ditto.
856*181254a7Smrg	* generated/maxloc0_4_s4.c: Ditto.
857*181254a7Smrg	* generated/maxloc0_8_i1.c: Ditto.
858*181254a7Smrg	* generated/maxloc0_8_i16.c: Ditto.
859*181254a7Smrg	* generated/maxloc0_8_i2.c: Ditto.
860*181254a7Smrg	* generated/maxloc0_8_i4.c: Ditto.
861*181254a7Smrg	* generated/maxloc0_8_i8.c: Ditto.
862*181254a7Smrg	* generated/maxloc0_8_r10.c: Ditto.
863*181254a7Smrg	* generated/maxloc0_8_r16.c: Ditto.
864*181254a7Smrg	* generated/maxloc0_8_r4.c: Ditto.
865*181254a7Smrg	* generated/maxloc0_8_r8.c: Ditto.
866*181254a7Smrg	* generated/maxloc0_8_s1.c: Ditto.
867*181254a7Smrg	* generated/maxloc0_8_s4.c: Ditto.
868*181254a7Smrg	* generated/maxloc1_16_i1.c: Ditto.
869*181254a7Smrg	* generated/maxloc1_16_i16.c: Ditto.
870*181254a7Smrg	* generated/maxloc1_16_i2.c: Ditto.
871*181254a7Smrg	* generated/maxloc1_16_i4.c: Ditto.
872*181254a7Smrg	* generated/maxloc1_16_i8.c: Ditto.
873*181254a7Smrg	* generated/maxloc1_16_r10.c: Ditto.
874*181254a7Smrg	* generated/maxloc1_16_r16.c: Ditto.
875*181254a7Smrg	* generated/maxloc1_16_r4.c: Ditto.
876*181254a7Smrg	* generated/maxloc1_16_r8.c: Ditto.
877*181254a7Smrg	* generated/maxloc1_16_s1.c: Ditto.
878*181254a7Smrg	* generated/maxloc1_16_s4.c: Ditto.
879*181254a7Smrg	* generated/maxloc1_4_i1.c: Ditto.
880*181254a7Smrg	* generated/maxloc1_4_i16.c: Ditto.
881*181254a7Smrg	* generated/maxloc1_4_i2.c: Ditto.
882*181254a7Smrg	* generated/maxloc1_4_i4.c: Ditto.
883*181254a7Smrg	* generated/maxloc1_4_i8.c: Ditto.
884*181254a7Smrg	* generated/maxloc1_4_r10.c: Ditto.
885*181254a7Smrg	* generated/maxloc1_4_r16.c: Ditto.
886*181254a7Smrg	* generated/maxloc1_4_r4.c: Ditto.
887*181254a7Smrg	* generated/maxloc1_4_r8.c: Ditto.
888*181254a7Smrg	* generated/maxloc1_4_s1.c: Ditto.
889*181254a7Smrg	* generated/maxloc1_4_s4.c: Ditto.
890*181254a7Smrg	* generated/maxloc1_8_i1.c: Ditto.
891*181254a7Smrg	* generated/maxloc1_8_i16.c: Ditto.
892*181254a7Smrg	* generated/maxloc1_8_i2.c: Ditto.
893*181254a7Smrg	* generated/maxloc1_8_i4.c: Ditto.
894*181254a7Smrg	* generated/maxloc1_8_i8.c: Ditto.
895*181254a7Smrg	* generated/maxloc1_8_r10.c: Ditto.
896*181254a7Smrg	* generated/maxloc1_8_r16.c: Ditto.
897*181254a7Smrg	* generated/maxloc1_8_r4.c: Ditto.
898*181254a7Smrg	* generated/maxloc1_8_r8.c: Ditto.
899*181254a7Smrg	* generated/maxloc1_8_s1.c: Ditto.
900*181254a7Smrg	* generated/maxloc1_8_s4.c: Ditto.
901*181254a7Smrg	* generated/maxval1_s1.c: Ditto.
902*181254a7Smrg	* generated/maxval1_s4.c: Ditto.
903*181254a7Smrg	* generated/maxval_i1.c: Ditto.
904*181254a7Smrg	* generated/maxval_i16.c: Ditto.
905*181254a7Smrg	* generated/maxval_i2.c: Ditto.
906*181254a7Smrg	* generated/maxval_i4.c: Ditto.
907*181254a7Smrg	* generated/maxval_i8.c: Ditto.
908*181254a7Smrg	* generated/maxval_r10.c: Ditto.
909*181254a7Smrg	* generated/maxval_r16.c: Ditto.
910*181254a7Smrg	* generated/maxval_r4.c: Ditto.
911*181254a7Smrg	* generated/maxval_r8.c: Ditto.
912*181254a7Smrg	* generated/minloc0_16_i1.c: Ditto.
913*181254a7Smrg	* generated/minloc0_16_i16.c: Ditto.
914*181254a7Smrg	* generated/minloc0_16_i2.c: Ditto.
915*181254a7Smrg	* generated/minloc0_16_i4.c: Ditto.
916*181254a7Smrg	* generated/minloc0_16_i8.c: Ditto.
917*181254a7Smrg	* generated/minloc0_16_r10.c: Ditto.
918*181254a7Smrg	* generated/minloc0_16_r16.c: Ditto.
919*181254a7Smrg	* generated/minloc0_16_r4.c: Ditto.
920*181254a7Smrg	* generated/minloc0_16_r8.c: Ditto.
921*181254a7Smrg	* generated/minloc0_16_s1.c: Ditto.
922*181254a7Smrg	* generated/minloc0_16_s4.c: Ditto.
923*181254a7Smrg	* generated/minloc0_4_i1.c: Ditto.
924*181254a7Smrg	* generated/minloc0_4_i16.c: Ditto.
925*181254a7Smrg	* generated/minloc0_4_i2.c: Ditto.
926*181254a7Smrg	* generated/minloc0_4_i4.c: Ditto.
927*181254a7Smrg	* generated/minloc0_4_i8.c: Ditto.
928*181254a7Smrg	* generated/minloc0_4_r10.c: Ditto.
929*181254a7Smrg	* generated/minloc0_4_r16.c: Ditto.
930*181254a7Smrg	* generated/minloc0_4_r4.c: Ditto.
931*181254a7Smrg	* generated/minloc0_4_r8.c: Ditto.
932*181254a7Smrg	* generated/minloc0_4_s1.c: Ditto.
933*181254a7Smrg	* generated/minloc0_4_s4.c: Ditto.
934*181254a7Smrg	* generated/minloc0_8_i1.c: Ditto.
935*181254a7Smrg	* generated/minloc0_8_i16.c: Ditto.
936*181254a7Smrg	* generated/minloc0_8_i2.c: Ditto.
937*181254a7Smrg	* generated/minloc0_8_i4.c: Ditto.
938*181254a7Smrg	* generated/minloc0_8_i8.c: Ditto.
939*181254a7Smrg	* generated/minloc0_8_r10.c: Ditto.
940*181254a7Smrg	* generated/minloc0_8_r16.c: Ditto.
941*181254a7Smrg	* generated/minloc0_8_r4.c: Ditto.
942*181254a7Smrg	* generated/minloc0_8_r8.c: Ditto.
943*181254a7Smrg	* generated/minloc0_8_s1.c: Ditto.
944*181254a7Smrg	* generated/minloc0_8_s4.c: Ditto.
945*181254a7Smrg	* generated/minloc1_16_i1.c: Ditto.
946*181254a7Smrg	* generated/minloc1_16_i16.c: Ditto.
947*181254a7Smrg	* generated/minloc1_16_i2.c: Ditto.
948*181254a7Smrg	* generated/minloc1_16_i4.c: Ditto.
949*181254a7Smrg	* generated/minloc1_16_i8.c: Ditto.
950*181254a7Smrg	* generated/minloc1_16_r10.c: Ditto.
951*181254a7Smrg	* generated/minloc1_16_r16.c: Ditto.
952*181254a7Smrg	* generated/minloc1_16_r4.c: Ditto.
953*181254a7Smrg	* generated/minloc1_16_r8.c: Ditto.
954*181254a7Smrg	* generated/minloc1_16_s1.c: Ditto.
955*181254a7Smrg	* generated/minloc1_16_s4.c: Ditto.
956*181254a7Smrg	* generated/minloc1_4_i1.c: Ditto.
957*181254a7Smrg	* generated/minloc1_4_i16.c: Ditto.
958*181254a7Smrg	* generated/minloc1_4_i2.c: Ditto.
959*181254a7Smrg	* generated/minloc1_4_i4.c: Ditto.
960*181254a7Smrg	* generated/minloc1_4_i8.c: Ditto.
961*181254a7Smrg	* generated/minloc1_4_r10.c: Ditto.
962*181254a7Smrg	* generated/minloc1_4_r16.c: Ditto.
963*181254a7Smrg	* generated/minloc1_4_r4.c: Ditto.
964*181254a7Smrg	* generated/minloc1_4_r8.c: Ditto.
965*181254a7Smrg	* generated/minloc1_4_s1.c: Ditto.
966*181254a7Smrg	* generated/minloc1_4_s4.c: Ditto.
967*181254a7Smrg	* generated/minloc1_8_i1.c: Ditto.
968*181254a7Smrg	* generated/minloc1_8_i16.c: Ditto.
969*181254a7Smrg	* generated/minloc1_8_i2.c: Ditto.
970*181254a7Smrg	* generated/minloc1_8_i4.c: Ditto.
971*181254a7Smrg	* generated/minloc1_8_i8.c: Ditto.
972*181254a7Smrg	* generated/minloc1_8_r10.c: Ditto.
973*181254a7Smrg	* generated/minloc1_8_r16.c: Ditto.
974*181254a7Smrg	* generated/minloc1_8_r4.c: Ditto.
975*181254a7Smrg	* generated/minloc1_8_r8.c: Ditto.
976*181254a7Smrg	* generated/minloc1_8_s1.c: Ditto.
977*181254a7Smrg	* generated/minloc1_8_s4.c: Ditto.
978*181254a7Smrg	* generated/minval1_s1.c: Ditto.
979*181254a7Smrg	* generated/minval1_s4.c: Ditto.
980*181254a7Smrg	* generated/minval_i1.c: Ditto.
981*181254a7Smrg	* generated/minval_i16.c: Ditto.
982*181254a7Smrg	* generated/minval_i2.c: Ditto.
983*181254a7Smrg	* generated/minval_i4.c: Ditto.
984*181254a7Smrg	* generated/minval_i8.c: Ditto.
985*181254a7Smrg	* generated/minval_r10.c: Ditto.
986*181254a7Smrg	* generated/minval_r16.c: Ditto.
987*181254a7Smrg	* generated/minval_r4.c: Ditto.
988*181254a7Smrg	* generated/minval_r8.c: Ditto.
989*181254a7Smrg	* generated/norm2_r10.c: Ditto.
990*181254a7Smrg	* generated/norm2_r16.c: Ditto.
991*181254a7Smrg	* generated/norm2_r4.c: Ditto.
992*181254a7Smrg	* generated/norm2_r8.c: Ditto.
993*181254a7Smrg	* generated/parity_l1.c: Ditto.
994*181254a7Smrg	* generated/parity_l16.c: Ditto.
995*181254a7Smrg	* generated/parity_l2.c: Ditto.
996*181254a7Smrg	* generated/parity_l4.c: Ditto.
997*181254a7Smrg	* generated/parity_l8.c: Ditto.
998*181254a7Smrg	* generated/product_c10.c: Ditto.
999*181254a7Smrg	* generated/product_c16.c: Ditto.
1000*181254a7Smrg	* generated/product_c4.c: Ditto.
1001*181254a7Smrg	* generated/product_c8.c: Ditto.
1002*181254a7Smrg	* generated/product_i1.c: Ditto.
1003*181254a7Smrg	* generated/product_i16.c: Ditto.
1004*181254a7Smrg	* generated/product_i2.c: Ditto.
1005*181254a7Smrg	* generated/product_i4.c: Ditto.
1006*181254a7Smrg	* generated/product_i8.c: Ditto.
1007*181254a7Smrg	* generated/product_r10.c: Ditto.
1008*181254a7Smrg	* generated/product_r16.c: Ditto.
1009*181254a7Smrg	* generated/product_r4.c: Ditto.
1010*181254a7Smrg	* generated/product_r8.c: Ditto.
1011*181254a7Smrg	* generated/reshape_c10.c: Ditto.
1012*181254a7Smrg	* generated/reshape_c16.c: Ditto.
1013*181254a7Smrg	* generated/reshape_c4.c: Ditto.
1014*181254a7Smrg	* generated/reshape_c8.c: Ditto.
1015*181254a7Smrg	* generated/reshape_i16.c: Ditto.
1016*181254a7Smrg	* generated/reshape_i4.c: Ditto.
1017*181254a7Smrg	* generated/reshape_i8.c: Ditto.
1018*181254a7Smrg	* generated/reshape_r10.c: Ditto.
1019*181254a7Smrg	* generated/reshape_r16.c: Ditto.
1020*181254a7Smrg	* generated/reshape_r4.c: Ditto.
1021*181254a7Smrg	* generated/reshape_r8.c: Ditto.
1022*181254a7Smrg	* generated/spread_c10.c: Ditto.
1023*181254a7Smrg	* generated/spread_c16.c: Ditto.
1024*181254a7Smrg	* generated/spread_c4.c: Ditto.
1025*181254a7Smrg	* generated/spread_c8.c: Ditto.
1026*181254a7Smrg	* generated/spread_i1.c: Ditto.
1027*181254a7Smrg	* generated/spread_i16.c: Ditto.
1028*181254a7Smrg	* generated/spread_i2.c: Ditto.
1029*181254a7Smrg	* generated/spread_i4.c: Ditto.
1030*181254a7Smrg	* generated/spread_i8.c: Ditto.
1031*181254a7Smrg	* generated/spread_r10.c: Ditto.
1032*181254a7Smrg	* generated/spread_r16.c: Ditto.
1033*181254a7Smrg	* generated/spread_r4.c: Ditto.
1034*181254a7Smrg	* generated/spread_r8.c: Ditto.
1035*181254a7Smrg	* generated/sum_c10.c: Ditto.
1036*181254a7Smrg	* generated/sum_c16.c: Ditto.
1037*181254a7Smrg	* generated/sum_c4.c: Ditto.
1038*181254a7Smrg	* generated/sum_c8.c: Ditto.
1039*181254a7Smrg	* generated/sum_i1.c: Ditto.
1040*181254a7Smrg	* generated/sum_i16.c: Ditto.
1041*181254a7Smrg	* generated/sum_i2.c: Ditto.
1042*181254a7Smrg	* generated/sum_i4.c: Ditto.
1043*181254a7Smrg	* generated/sum_i8.c: Ditto.
1044*181254a7Smrg	* generated/sum_r10.c: Ditto.
1045*181254a7Smrg	* generated/sum_r16.c: Ditto.
1046*181254a7Smrg	* generated/sum_r4.c: Ditto.
1047*181254a7Smrg	* generated/sum_r8.c: Ditto.
1048*181254a7Smrg
1049*181254a7Smrg2018-06-01  Steven G. Kargl  <kargl@gcc.gnu.org>
1050*181254a7Smrg
1051*181254a7Smrg	PR fortran/63570
1052*181254a7Smrg	* libgfortran/Makefile.am: Add random_init.f90 to build.
1053*181254a7Smrg	* libgfortran/Makefile.in: Regenerated.
1054*181254a7Smrg	* libgfortran/gfortran.map: Expose symbol for _gfortran_random_init.
1055*181254a7Smrg	* libgfortran/intrinsics/random_init.f90: Implementation.
1056*181254a7Smrg
1057*181254a7Smrg2018-05-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1058*181254a7Smrg
1059*181254a7Smrg	PR libgfortran/85840
1060*181254a7Smrg	* io/write.c (write_real, write_real_g0, write_complex): Use
1061*181254a7Smrg	separate local variables for the float string length.
1062*181254a7Smrg
1063*181254a7Smrg2018-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1064*181254a7Smrg
1065*181254a7Smrg	PR libgfortran/85906
1066*181254a7Smrg	* io/write.c (write_integer): Initialise the fnode format to
1067*181254a7Smrg	FMT_NONE, used for list directed write.
1068*181254a7Smrg	(BUF_STACK_SZ): Bump default buffer size up to avoid allocs on
1069*181254a7Smrg	small stuff.
1070*181254a7Smrg
1071*181254a7Smrg2018-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1072*181254a7Smrg
1073*181254a7Smrg	PR libgfortran/85840
1074*181254a7Smrg	* io/write.c (write_float_0): Use separate local variable for
1075*181254a7Smrg	the float string length.
1076*181254a7Smrg
1077*181254a7Smrg2018-05-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
1078*181254a7Smrg
1079*181254a7Smrg	PR fortran/54613
1080*181254a7Smrg	* m4/iforeach-s.m4: Remove assertion that back is zero.
1081*181254a7Smrg	* m4/iforeach.m4: Likewise.  Remove leading 'do'
1082*181254a7Smrg	before implementation start.
1083*181254a7Smrg	* m4/ifunction-s.m4: Remove assertion that back is zero.
1084*181254a7Smrg	* m4/ifunction.m4: Likewise.  Remove for loop if HAVE_BACK_ARG
1085*181254a7Smrg	is defined.
1086*181254a7Smrg	* m4/maxloc0.m4: Reorganize loops. Split loops between >= and =,
1087*181254a7Smrg	depending if back is true.  Mark the condition of having
1088*181254a7Smrg	found a value which exceeds the limit as unlikely.
1089*181254a7Smrg	* m4/minloc0.m4: Likewise.
1090*181254a7Smrg	* m4/maxloc1.m4: Likewise.
1091*181254a7Smrg	* m4/minloc1.m4: Likewise.
1092*181254a7Smrg	* m4/maxloc1s.m4: Handle back argument.
1093*181254a7Smrg	* m4/minloc1s.m4: Likewise.
1094*181254a7Smrg	* m4/maxloc2s.m4: Remove assertion that back is zero.
1095*181254a7Smrg	Remove special handling of loop start. Handle back argument.
1096*181254a7Smrg	* m4/minloc2s.m4: Likewise.
1097*181254a7Smrg	* generated/iall_i1.c: Regenerated.
1098*181254a7Smrg	* generated/iall_i16.c: Regenerated.
1099*181254a7Smrg	* generated/iall_i2.c: Regenerated.
1100*181254a7Smrg	* generated/iall_i4.c: Regenerated.
1101*181254a7Smrg	* generated/iall_i8.c: Regenerated.
1102*181254a7Smrg	* generated/iany_i1.c: Regenerated.
1103*181254a7Smrg	* generated/iany_i16.c: Regenerated.
1104*181254a7Smrg	* generated/iany_i2.c: Regenerated.
1105*181254a7Smrg	* generated/iany_i4.c: Regenerated.
1106*181254a7Smrg	* generated/iany_i8.c: Regenerated.
1107*181254a7Smrg	* generated/iparity_i1.c: Regenerated.
1108*181254a7Smrg	* generated/iparity_i16.c: Regenerated.
1109*181254a7Smrg	* generated/iparity_i2.c: Regenerated.
1110*181254a7Smrg	* generated/iparity_i4.c: Regenerated.
1111*181254a7Smrg	* generated/iparity_i8.c: Regenerated.
1112*181254a7Smrg	* generated/maxloc0_16_i1.c: Regenerated.
1113*181254a7Smrg	* generated/maxloc0_16_i16.c: Regenerated.
1114*181254a7Smrg	* generated/maxloc0_16_i2.c: Regenerated.
1115*181254a7Smrg	* generated/maxloc0_16_i4.c: Regenerated.
1116*181254a7Smrg	* generated/maxloc0_16_i8.c: Regenerated.
1117*181254a7Smrg	* generated/maxloc0_16_r10.c: Regenerated.
1118*181254a7Smrg	* generated/maxloc0_16_r16.c: Regenerated.
1119*181254a7Smrg	* generated/maxloc0_16_r4.c: Regenerated.
1120*181254a7Smrg	* generated/maxloc0_16_r8.c: Regenerated.
1121*181254a7Smrg	* generated/maxloc0_16_s1.c: Regenerated.
1122*181254a7Smrg	* generated/maxloc0_16_s4.c: Regenerated.
1123*181254a7Smrg	* generated/maxloc0_4_i1.c: Regenerated.
1124*181254a7Smrg	* generated/maxloc0_4_i16.c: Regenerated.
1125*181254a7Smrg	* generated/maxloc0_4_i2.c: Regenerated.
1126*181254a7Smrg	* generated/maxloc0_4_i4.c: Regenerated.
1127*181254a7Smrg	* generated/maxloc0_4_i8.c: Regenerated.
1128*181254a7Smrg	* generated/maxloc0_4_r10.c: Regenerated.
1129*181254a7Smrg	* generated/maxloc0_4_r16.c: Regenerated.
1130*181254a7Smrg	* generated/maxloc0_4_r4.c: Regenerated.
1131*181254a7Smrg	* generated/maxloc0_4_r8.c: Regenerated.
1132*181254a7Smrg	* generated/maxloc0_4_s1.c: Regenerated.
1133*181254a7Smrg	* generated/maxloc0_4_s4.c: Regenerated.
1134*181254a7Smrg	* generated/maxloc0_8_i1.c: Regenerated.
1135*181254a7Smrg	* generated/maxloc0_8_i16.c: Regenerated.
1136*181254a7Smrg	* generated/maxloc0_8_i2.c: Regenerated.
1137*181254a7Smrg	* generated/maxloc0_8_i4.c: Regenerated.
1138*181254a7Smrg	* generated/maxloc0_8_i8.c: Regenerated.
1139*181254a7Smrg	* generated/maxloc0_8_r10.c: Regenerated.
1140*181254a7Smrg	* generated/maxloc0_8_r16.c: Regenerated.
1141*181254a7Smrg	* generated/maxloc0_8_r4.c: Regenerated.
1142*181254a7Smrg	* generated/maxloc0_8_r8.c: Regenerated.
1143*181254a7Smrg	* generated/maxloc0_8_s1.c: Regenerated.
1144*181254a7Smrg	* generated/maxloc0_8_s4.c: Regenerated.
1145*181254a7Smrg	* generated/maxloc1_16_i1.c: Regenerated.
1146*181254a7Smrg	* generated/maxloc1_16_i16.c: Regenerated.
1147*181254a7Smrg	* generated/maxloc1_16_i2.c: Regenerated.
1148*181254a7Smrg	* generated/maxloc1_16_i4.c: Regenerated.
1149*181254a7Smrg	* generated/maxloc1_16_i8.c: Regenerated.
1150*181254a7Smrg	* generated/maxloc1_16_r10.c: Regenerated.
1151*181254a7Smrg	* generated/maxloc1_16_r16.c: Regenerated.
1152*181254a7Smrg	* generated/maxloc1_16_r4.c: Regenerated.
1153*181254a7Smrg	* generated/maxloc1_16_r8.c: Regenerated.
1154*181254a7Smrg	* generated/maxloc1_16_s1.c: Regenerated.
1155*181254a7Smrg	* generated/maxloc1_16_s4.c: Regenerated.
1156*181254a7Smrg	* generated/maxloc1_4_i1.c: Regenerated.
1157*181254a7Smrg	* generated/maxloc1_4_i16.c: Regenerated.
1158*181254a7Smrg	* generated/maxloc1_4_i2.c: Regenerated.
1159*181254a7Smrg	* generated/maxloc1_4_i4.c: Regenerated.
1160*181254a7Smrg	* generated/maxloc1_4_i8.c: Regenerated.
1161*181254a7Smrg	* generated/maxloc1_4_r10.c: Regenerated.
1162*181254a7Smrg	* generated/maxloc1_4_r16.c: Regenerated.
1163*181254a7Smrg	* generated/maxloc1_4_r4.c: Regenerated.
1164*181254a7Smrg	* generated/maxloc1_4_r8.c: Regenerated.
1165*181254a7Smrg	* generated/maxloc1_4_s1.c: Regenerated.
1166*181254a7Smrg	* generated/maxloc1_4_s4.c: Regenerated.
1167*181254a7Smrg	* generated/maxloc1_8_i1.c: Regenerated.
1168*181254a7Smrg	* generated/maxloc1_8_i16.c: Regenerated.
1169*181254a7Smrg	* generated/maxloc1_8_i2.c: Regenerated.
1170*181254a7Smrg	* generated/maxloc1_8_i4.c: Regenerated.
1171*181254a7Smrg	* generated/maxloc1_8_i8.c: Regenerated.
1172*181254a7Smrg	* generated/maxloc1_8_r10.c: Regenerated.
1173*181254a7Smrg	* generated/maxloc1_8_r16.c: Regenerated.
1174*181254a7Smrg	* generated/maxloc1_8_r4.c: Regenerated.
1175*181254a7Smrg	* generated/maxloc1_8_r8.c: Regenerated.
1176*181254a7Smrg	* generated/maxloc1_8_s1.c: Regenerated.
1177*181254a7Smrg	* generated/maxloc1_8_s4.c: Regenerated.
1178*181254a7Smrg	* generated/maxloc2_16_s1.c: Regenerated.
1179*181254a7Smrg	* generated/maxloc2_16_s4.c: Regenerated.
1180*181254a7Smrg	* generated/maxloc2_4_s1.c: Regenerated.
1181*181254a7Smrg	* generated/maxloc2_4_s4.c: Regenerated.
1182*181254a7Smrg	* generated/maxloc2_8_s1.c: Regenerated.
1183*181254a7Smrg	* generated/maxloc2_8_s4.c: Regenerated.
1184*181254a7Smrg	* generated/maxval_i1.c: Regenerated.
1185*181254a7Smrg	* generated/maxval_i16.c: Regenerated.
1186*181254a7Smrg	* generated/maxval_i2.c: Regenerated.
1187*181254a7Smrg	* generated/maxval_i4.c: Regenerated.
1188*181254a7Smrg	* generated/maxval_i8.c: Regenerated.
1189*181254a7Smrg	* generated/maxval_r10.c: Regenerated.
1190*181254a7Smrg	* generated/maxval_r16.c: Regenerated.
1191*181254a7Smrg	* generated/maxval_r4.c: Regenerated.
1192*181254a7Smrg	* generated/maxval_r8.c: Regenerated.
1193*181254a7Smrg	* generated/minloc0_16_i1.c: Regenerated.
1194*181254a7Smrg	* generated/minloc0_16_i16.c: Regenerated.
1195*181254a7Smrg	* generated/minloc0_16_i2.c: Regenerated.
1196*181254a7Smrg	* generated/minloc0_16_i4.c: Regenerated.
1197*181254a7Smrg	* generated/minloc0_16_i8.c: Regenerated.
1198*181254a7Smrg	* generated/minloc0_16_r10.c: Regenerated.
1199*181254a7Smrg	* generated/minloc0_16_r16.c: Regenerated.
1200*181254a7Smrg	* generated/minloc0_16_r4.c: Regenerated.
1201*181254a7Smrg	* generated/minloc0_16_r8.c: Regenerated.
1202*181254a7Smrg	* generated/minloc0_16_s1.c: Regenerated.
1203*181254a7Smrg	* generated/minloc0_16_s4.c: Regenerated.
1204*181254a7Smrg	* generated/minloc0_4_i1.c: Regenerated.
1205*181254a7Smrg	* generated/minloc0_4_i16.c: Regenerated.
1206*181254a7Smrg	* generated/minloc0_4_i2.c: Regenerated.
1207*181254a7Smrg	* generated/minloc0_4_i4.c: Regenerated.
1208*181254a7Smrg	* generated/minloc0_4_i8.c: Regenerated.
1209*181254a7Smrg	* generated/minloc0_4_r10.c: Regenerated.
1210*181254a7Smrg	* generated/minloc0_4_r16.c: Regenerated.
1211*181254a7Smrg	* generated/minloc0_4_r4.c: Regenerated.
1212*181254a7Smrg	* generated/minloc0_4_r8.c: Regenerated.
1213*181254a7Smrg	* generated/minloc0_4_s1.c: Regenerated.
1214*181254a7Smrg	* generated/minloc0_4_s4.c: Regenerated.
1215*181254a7Smrg	* generated/minloc0_8_i1.c: Regenerated.
1216*181254a7Smrg	* generated/minloc0_8_i16.c: Regenerated.
1217*181254a7Smrg	* generated/minloc0_8_i2.c: Regenerated.
1218*181254a7Smrg	* generated/minloc0_8_i4.c: Regenerated.
1219*181254a7Smrg	* generated/minloc0_8_i8.c: Regenerated.
1220*181254a7Smrg	* generated/minloc0_8_r10.c: Regenerated.
1221*181254a7Smrg	* generated/minloc0_8_r16.c: Regenerated.
1222*181254a7Smrg	* generated/minloc0_8_r4.c: Regenerated.
1223*181254a7Smrg	* generated/minloc0_8_r8.c: Regenerated.
1224*181254a7Smrg	* generated/minloc0_8_s1.c: Regenerated.
1225*181254a7Smrg	* generated/minloc0_8_s4.c: Regenerated.
1226*181254a7Smrg	* generated/minloc1_16_i1.c: Regenerated.
1227*181254a7Smrg	* generated/minloc1_16_i16.c: Regenerated.
1228*181254a7Smrg	* generated/minloc1_16_i2.c: Regenerated.
1229*181254a7Smrg	* generated/minloc1_16_i4.c: Regenerated.
1230*181254a7Smrg	* generated/minloc1_16_i8.c: Regenerated.
1231*181254a7Smrg	* generated/minloc1_16_r10.c: Regenerated.
1232*181254a7Smrg	* generated/minloc1_16_r16.c: Regenerated.
1233*181254a7Smrg	* generated/minloc1_16_r4.c: Regenerated.
1234*181254a7Smrg	* generated/minloc1_16_r8.c: Regenerated.
1235*181254a7Smrg	* generated/minloc1_16_s1.c: Regenerated.
1236*181254a7Smrg	* generated/minloc1_16_s4.c: Regenerated.
1237*181254a7Smrg	* generated/minloc1_4_i1.c: Regenerated.
1238*181254a7Smrg	* generated/minloc1_4_i16.c: Regenerated.
1239*181254a7Smrg	* generated/minloc1_4_i2.c: Regenerated.
1240*181254a7Smrg	* generated/minloc1_4_i4.c: Regenerated.
1241*181254a7Smrg	* generated/minloc1_4_i8.c: Regenerated.
1242*181254a7Smrg	* generated/minloc1_4_r10.c: Regenerated.
1243*181254a7Smrg	* generated/minloc1_4_r16.c: Regenerated.
1244*181254a7Smrg	* generated/minloc1_4_r4.c: Regenerated.
1245*181254a7Smrg	* generated/minloc1_4_r8.c: Regenerated.
1246*181254a7Smrg	* generated/minloc1_4_s1.c: Regenerated.
1247*181254a7Smrg	* generated/minloc1_4_s4.c: Regenerated.
1248*181254a7Smrg	* generated/minloc1_8_i1.c: Regenerated.
1249*181254a7Smrg	* generated/minloc1_8_i16.c: Regenerated.
1250*181254a7Smrg	* generated/minloc1_8_i2.c: Regenerated.
1251*181254a7Smrg	* generated/minloc1_8_i4.c: Regenerated.
1252*181254a7Smrg	* generated/minloc1_8_i8.c: Regenerated.
1253*181254a7Smrg	* generated/minloc1_8_r10.c: Regenerated.
1254*181254a7Smrg	* generated/minloc1_8_r16.c: Regenerated.
1255*181254a7Smrg	* generated/minloc1_8_r4.c: Regenerated.
1256*181254a7Smrg	* generated/minloc1_8_r8.c: Regenerated.
1257*181254a7Smrg	* generated/minloc1_8_s1.c: Regenerated.
1258*181254a7Smrg	* generated/minloc1_8_s4.c: Regenerated.
1259*181254a7Smrg	* generated/minloc2_16_s1.c: Regenerated.
1260*181254a7Smrg	* generated/minloc2_16_s4.c: Regenerated.
1261*181254a7Smrg	* generated/minloc2_4_s1.c: Regenerated.
1262*181254a7Smrg	* generated/minloc2_4_s4.c: Regenerated.
1263*181254a7Smrg	* generated/minloc2_8_s1.c: Regenerated.
1264*181254a7Smrg	* generated/minloc2_8_s4.c: Regenerated.
1265*181254a7Smrg	* generated/minval_i1.c: Regenerated.
1266*181254a7Smrg	* generated/minval_i16.c: Regenerated.
1267*181254a7Smrg	* generated/minval_i2.c: Regenerated.
1268*181254a7Smrg	* generated/minval_i4.c: Regenerated.
1269*181254a7Smrg	* generated/minval_i8.c: Regenerated.
1270*181254a7Smrg	* generated/minval_r10.c: Regenerated.
1271*181254a7Smrg	* generated/minval_r16.c: Regenerated.
1272*181254a7Smrg	* generated/minval_r4.c: Regenerated.
1273*181254a7Smrg	* generated/minval_r8.c: Regenerated.
1274*181254a7Smrg	* generated/norm2_r10.c: Regenerated.
1275*181254a7Smrg	* generated/norm2_r16.c: Regenerated.
1276*181254a7Smrg	* generated/norm2_r4.c: Regenerated.
1277*181254a7Smrg	* generated/norm2_r8.c: Regenerated.
1278*181254a7Smrg	* generated/parity_l1.c: Regenerated.
1279*181254a7Smrg	* generated/parity_l16.c: Regenerated.
1280*181254a7Smrg	* generated/parity_l2.c: Regenerated.
1281*181254a7Smrg	* generated/parity_l4.c: Regenerated.
1282*181254a7Smrg	* generated/parity_l8.c: Regenerated.
1283*181254a7Smrg	* generated/product_c10.c: Regenerated.
1284*181254a7Smrg	* generated/product_c16.c: Regenerated.
1285*181254a7Smrg	* generated/product_c4.c: Regenerated.
1286*181254a7Smrg	* generated/product_c8.c: Regenerated.
1287*181254a7Smrg	* generated/product_i1.c: Regenerated.
1288*181254a7Smrg	* generated/product_i16.c: Regenerated.
1289*181254a7Smrg	* generated/product_i2.c: Regenerated.
1290*181254a7Smrg	* generated/product_i4.c: Regenerated.
1291*181254a7Smrg	* generated/product_i8.c: Regenerated.
1292*181254a7Smrg	* generated/product_r10.c: Regenerated.
1293*181254a7Smrg	* generated/product_r16.c: Regenerated.
1294*181254a7Smrg	* generated/product_r4.c: Regenerated.
1295*181254a7Smrg	* generated/product_r8.c: Regenerated.
1296*181254a7Smrg	* generated/sum_c10.c: Regenerated.
1297*181254a7Smrg	* generated/sum_c16.c: Regenerated.
1298*181254a7Smrg	* generated/sum_c4.c: Regenerated.
1299*181254a7Smrg	* generated/sum_c8.c: Regenerated.
1300*181254a7Smrg	* generated/sum_i1.c: Regenerated.
1301*181254a7Smrg	* generated/sum_i16.c: Regenerated.
1302*181254a7Smrg	* generated/sum_i2.c: Regenerated.
1303*181254a7Smrg	* generated/sum_i4.c: Regenerated.
1304*181254a7Smrg	* generated/sum_i8.c: Regenerated.
1305*181254a7Smrg	* generated/sum_r10.c: Regenerated.
1306*181254a7Smrg	* generated/sum_r16.c: Regenerated.
1307*181254a7Smrg	* generated/sum_r4.c: Regenerated.
1308*181254a7Smrg	* generated/sum_r8.c: Regenerated.
1309*181254a7Smrg
1310*181254a7Smrg2018-04-24  H.J. Lu  <hongjiu.lu@intel.com>
1311*181254a7Smrg
1312*181254a7Smrg	* configure: Regenerated.
1313*181254a7Smrg
1314*181254a7Smrg2018-04-19  Thomas Schwinge  <thomas@codesourcery.com>
1315*181254a7Smrg
1316*181254a7Smrg	PR libfortran/85166
1317*181254a7Smrg	PR libgomp/85463
1318*181254a7Smrg	* runtime/minimal.c (stop_numeric): Reimplement.
1319*181254a7Smrg	(stop_string, error_stop_string, error_stop_numeric): New
1320*181254a7Smrg	functions.
1321*181254a7Smrg
1322*181254a7Smrg2018-04-19  Jakub Jelinek  <jakub@redhat.com>
1323*181254a7Smrg
1324*181254a7Smrg	* configure: Regenerated.
1325*181254a7Smrg
1326*181254a7Smrg2018-04-18  David Malcolm  <dmalcolm@redhat.com>
1327*181254a7Smrg
1328*181254a7Smrg	PR jit/85384
1329*181254a7Smrg	* configure: Regenerate.
1330*181254a7Smrg
1331*181254a7Smrg2018-04-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
1332*181254a7Smrg
1333*181254a7Smrg	PR libfortran/85253
1334*181254a7Smrg	* m4/matmul_internal.m4: If ycount == 1, add one more row to
1335*181254a7Smrg	the internal buffer.
1336*181254a7Smrg	* generated/matmul_c10.c: Regenerated.
1337*181254a7Smrg	* generated/matmul_c16.c: Regenerated.
1338*181254a7Smrg	* generated/matmul_c4.c: Regenerated.
1339*181254a7Smrg	* generated/matmul_c8.c: Regenerated.
1340*181254a7Smrg	* generated/matmul_i1.c: Regenerated.
1341*181254a7Smrg	* generated/matmul_i16.c: Regenerated.
1342*181254a7Smrg	* generated/matmul_i2.c: Regenerated.
1343*181254a7Smrg	* generated/matmul_i4.c: Regenerated.
1344*181254a7Smrg	* generated/matmul_i8.c: Regenerated.
1345*181254a7Smrg	* generated/matmul_r10.c: Regenerated.
1346*181254a7Smrg	* generated/matmul_r16.c: Regenerated.
1347*181254a7Smrg	* generated/matmul_r4.c: Regenerated.
1348*181254a7Smrg	* generated/matmul_r8.c: Regenerated.
1349*181254a7Smrg	* generated/matmulavx128_c10.c: Regenerated.
1350*181254a7Smrg	* generated/matmulavx128_c16.c: Regenerated.
1351*181254a7Smrg	* generated/matmulavx128_c4.c: Regenerated.
1352*181254a7Smrg	* generated/matmulavx128_c8.c: Regenerated.
1353*181254a7Smrg	* generated/matmulavx128_i1.c: Regenerated.
1354*181254a7Smrg	* generated/matmulavx128_i16.c: Regenerated.
1355*181254a7Smrg	* generated/matmulavx128_i2.c: Regenerated.
1356*181254a7Smrg	* generated/matmulavx128_i4.c: Regenerated.
1357*181254a7Smrg	* generated/matmulavx128_i8.c: Regenerated.
1358*181254a7Smrg	* generated/matmulavx128_r10.c: Regenerated.
1359*181254a7Smrg	* generated/matmulavx128_r16.c: Regenerated.
1360*181254a7Smrg	* generated/matmulavx128_r4.c: Regenerated.
1361*181254a7Smrg	* generated/matmulavx128_r8.c: Regenerated.
1362*181254a7Smrg
1363*181254a7Smrg2018-04-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
1364*181254a7Smrg
1365*181254a7Smrg	PR libfortran/85166
1366*181254a7Smrg	* runtime/minimal.c (stop_numeric): Add new function in order to
1367*181254a7Smrg	implement numeric stop on minimal targets.
1368*181254a7Smrg
1369*181254a7Smrg2018-03-28  Jakub Jelinek  <jakub@redhat.com>
1370*181254a7Smrg
1371*181254a7Smrg	* io/io.h (IOPARM_DT_DEFAULT_EXP): Rename to ...
1372*181254a7Smrg	(IOPARM_DT_DEC_EXT): ... this.
1373*181254a7Smrg	* io/list_read.c (parse_real): Adjust for IOPARM_DT_DEFAULT_EXP
1374*181254a7Smrg	renaming to IOPARM_DT_DEC_EXT.
1375*181254a7Smrg	(read_real): Likewise.
1376*181254a7Smrg	* io/read.c (read_f): Likewise.
1377*181254a7Smrg
1378*181254a7Smrg2018-03-15  Jakub Jelinek  <jakub@redhat.com>
1379*181254a7Smrg
1380*181254a7Smrg	PR libgfortran/84880
1381*181254a7Smrg	* intrinsics/kill.c (kill): Rename to...
1382*181254a7Smrg	(PREFIX (kill)): ... this.  Use export_proto_np instead of export_proto.
1383*181254a7Smrg
1384*181254a7Smrg2018-03-13  Steven G. Kargl  <kargl@gcc.gnu.org>
1385*181254a7Smrg
1386*181254a7Smrg	* libgfortran/gfortran.map: Remove _gfortran_kill_i4,
1387*181254a7Smrg	_gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
1388*181254a7Smrg	Add _gfortran_kill and _gfortran_kill_sub.
1389*181254a7Smrg	* libgfortran/intrinsics/kill.c: Eliminate _gfortran_kill_i4,
1390*181254a7Smrg	_gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
1391*181254a7Smrg	Add _gfortran_kill and _gfortran_kill_sub.
1392*181254a7Smrg
1393*181254a7Smrg2018-02-23  Janne Blomqvist  <jb@gcc.gnu.org>
1394*181254a7Smrg
1395*181254a7Smrg	PR fortran/84519
1396*181254a7Smrg	* caf/libcaf.h (_gfortran_caf_stop_numeric): Add bool argument.
1397*181254a7Smrg	(_gfortran_caf_stop_str): Likewise.
1398*181254a7Smrg	(_gfortran_caf_error_stop_str): Likewise.
1399*181254a7Smrg	(_gfortran_caf_error_stop): Likewise.
1400*181254a7Smrg	* caf/mpi.c (_gfortran_caf_error_stop_str): Handle new argument.
1401*181254a7Smrg	(_gfortran_caf_error_stop): Likewise.
1402*181254a7Smrg	* caf/single.c (_gfortran_caf_stop_numeric): Likewise.
1403*181254a7Smrg	(_gfortran_caf_stop_str): Likewise.
1404*181254a7Smrg	(_gfortran_caf_error_stop_str): Likewise.
1405*181254a7Smrg	(_gfortran_caf_error_stop): Likewise.
1406*181254a7Smrg	(_gfortran_caf_lock): Likewise.
1407*181254a7Smrg	(_gfortran_caf_unlock): Likewise.
1408*181254a7Smrg	* libgfortran.h (stop_string): Add bool argument.
1409*181254a7Smrg	* runtime/pause.c (do_pause): Add false argument.
1410*181254a7Smrg	* runtime/stop.c (stop_numeric): Handle new argument.
1411*181254a7Smrg	(stop_string): Likewise.
1412*181254a7Smrg	(error_stop_string): Likewise.
1413*181254a7Smrg	(error_stop_numeric): Likewise.
1414*181254a7Smrg
1415*181254a7Smrg2018-02-22  Janne Blomqvist  <jb@gcc.gnu.org>
1416*181254a7Smrg
1417*181254a7Smrg	PR 78534
1418*181254a7Smrg	PR 84509
1419*181254a7Smrg	* runtime/pause.c (pause_numeric): Modify to take GFC_INTEGER_8
1420*181254a7Smrg	argument.
1421*181254a7Smrg	(pause_string): Modify to take size_t character length argument.
1422*181254a7Smrg
1423*181254a7Smrg2018-02-22  Janne Blomqvist  <jb@gcc.gnu.org>
1424*181254a7Smrg
1425*181254a7Smrg	* libgfortran.h (stop_string): Use size_t for character length.
1426*181254a7Smrg	* runtime/stop.c (stop_string): Likewise.
1427*181254a7Smrg	(error_stop_string): Likewise.
1428*181254a7Smrg	(stop_numeric): Use int for exit code.
1429*181254a7Smrg	(error_stop_numeric): Likewise.
1430*181254a7Smrg	* caf/libcaf.h: Remove stdint.h include.
1431*181254a7Smrg	(_gfortran_caf_register): Use size_t for character length.
1432*181254a7Smrg	(_gfortran_caf_deregister): Likewise.
1433*181254a7Smrg	(_gfortran_caf_sync_all): Likewise.
1434*181254a7Smrg	(_gfortran_caf_sync_memory): Likewise.
1435*181254a7Smrg	(_gfortran_caf_sync_images): Likewise.
1436*181254a7Smrg	(_gfortran_caf_stop_numeric): Use int for exit code.
1437*181254a7Smrg	(_gfortran_caf_stop_str): Use size_t for character length.
1438*181254a7Smrg	(_gfortran_caf_error_stop_str): Likewise.
1439*181254a7Smrg	(_gfortran_caf_error_stop): Use int for exit code.
1440*181254a7Smrg	(_gfortran_caf_co_broadcast): Use size_t for character length.
1441*181254a7Smrg	(_gfortran_caf_co_sum): Likewise.
1442*181254a7Smrg	(_gfortran_caf_co_min): Likewise.
1443*181254a7Smrg	(_gfortran_caf_co_max): Likewise.
1444*181254a7Smrg	(_gfortran_caf_co_reduce): Likewise.
1445*181254a7Smrg	(_gfortran_caf_lock): Likewise.
1446*181254a7Smrg	(_gfortran_caf_unlock): Likewise.
1447*181254a7Smrg	(_gfortran_caf_event_post): Likewise.
1448*181254a7Smrg	(_gfortran_caf_event_wait): Likewise.
1449*181254a7Smrg	* caf/mpi.c (_gfortran_caf_register): Update implementation to
1450*181254a7Smrg	match prototype.
1451*181254a7Smrg	(_gfortran_caf_deregister): Likewise.
1452*181254a7Smrg	(_gfortran_caf_sync_all): Likewise.
1453*181254a7Smrg	(_gfortran_caf_sync_images): Likewise.
1454*181254a7Smrg	(_gfortran_caf_error_stop_str): Likewise.
1455*181254a7Smrg	(_gfortran_caf_error_stop): Likewise.
1456*181254a7Smrg	* caf/single.c (caf_internal_error): Likewise.
1457*181254a7Smrg	(_gfortran_caf_register): Likewise.
1458*181254a7Smrg	(_gfortran_caf_deregister): Likewise.
1459*181254a7Smrg	(_gfortran_caf_sync_all): Likewise.
1460*181254a7Smrg	(_gfortran_caf_sync_memory): Likewise.
1461*181254a7Smrg	(_gfortran_caf_sync_images): Likewise.
1462*181254a7Smrg	(_gfortran_caf_stop_numeric): Likewise.
1463*181254a7Smrg	(_gfortran_caf_stop_str): Likewise.
1464*181254a7Smrg	(_gfortran_caf_error_stop_str): Likewise.
1465*181254a7Smrg	(_gfortran_caf_error_stop): Likewise.
1466*181254a7Smrg	(_gfortran_caf_co_broadcast): Likewise.
1467*181254a7Smrg	(_gfortran_caf_co_sum): Likewise.
1468*181254a7Smrg	(_gfortran_caf_co_min): Likewise.
1469*181254a7Smrg	(_gfortran_caf_co_max): Likewise.
1470*181254a7Smrg	(_gfortran_caf_co_reduce): Likewise.
1471*181254a7Smrg	(_gfortran_caf_event_post): Likewise.
1472*181254a7Smrg	(_gfortran_caf_event_wait): Likewise.
1473*181254a7Smrg	(_gfortran_caf_lock): Likewise.
1474*181254a7Smrg	(_gfortran_caf_unlock): Likewise.
1475*181254a7Smrg
1476*181254a7Smrg2018-02-19  Andre Vehreschild  <vehre@gcc.gnu.org>
1477*181254a7Smrg
1478*181254a7Smrg	* caf/libcaf.h: Add type parameters to the caf_*_by_ref prototypes.
1479*181254a7Smrg	* caf/single.c (get_for_ref): Simplifications and now respecting
1480*181254a7Smrg	the type argument.
1481*181254a7Smrg	(_gfortran_caf_get_by_ref): Added source type handing to get_for_ref().
1482*181254a7Smrg	(send_by_ref): Simplifications and respecting the dst_type now.
1483*181254a7Smrg	(_gfortran_caf_send_by_ref): Added destination type hand over to
1484*181254a7Smrg	send_by_ref().
1485*181254a7Smrg	(_gfortran_caf_sendget_by_ref): Added general support and fixed stack
1486*181254a7Smrg	corruption.  The function is now really usable.
1487*181254a7Smrg
1488*181254a7Smrg2018-02-14  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
1489*181254a7Smrg
1490*181254a7Smrg	PR target/84148
1491*181254a7Smrg	* configure: Regenerate.
1492*181254a7Smrg
1493*181254a7Smrg2018-02-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1494*181254a7Smrg
1495*181254a7Smrg	PR libgfortran/84412
1496*181254a7Smrg	* io/transfer.c (finalize_transfer): After completng an internal unit
1497*181254a7Smrg	I/O operation, clear internal_unit_kind.
1498*181254a7Smrg
1499*181254a7Smrg2018-02-12  Thomas Koenig  <tkoenig@gcc.gnu.org>
1500*181254a7Smrg
1501*181254a7Smrg	* libgfortran.h (GFC_ARRAY_DESCRIPTOR): Remove dimension
1502*181254a7Smrg	of descriptor to use vaiable members for dim.
1503*181254a7Smrg	Change usage of GFC_ARRAY_DESCRIPTOR accordingly.
1504*181254a7Smrg	(GFC_FILL_ARRAY_DESCRIPTOR): New macro.
1505*181254a7Smrg	(gfc_full_array_i4): New type.
1506*181254a7Smrg	* intrinsics/date_and_time.c (secnds): Use sizeof
1507*181254a7Smrg	(gfc_array_i4) + sizeof (descriptor_dimension) for memory
1508*181254a7Smrg	allocation.
1509*181254a7Smrg	* intrinsics/reshape_generic.c: Use GFC_FULL_ARRAY_DESCRIPTOR.
1510*181254a7Smrg	* io/format.c: Use sizeof (gfc_array_i4) + sizeof
1511*181254a7Smrg	(descriptor_dimension) for memoy allocation.
1512*181254a7Smrg	* io/list_read.c (list_formatted_read_scalar): Use
1513*181254a7Smrg	gfc_full_array_i4 for variable.
1514*181254a7Smrg	(nml_read_obj): Likewise.
1515*181254a7Smrg	* io/write.c (list_formatted_write_scalar): Likewise.
1516*181254a7Smrg	(nml_write_obj): Likewise.
1517*181254a7Smrg	* m4/reshape.m4: Use GFC_FULL_ARRAY_DESCRIPTOR.
1518*181254a7Smrg	* generated/reshape_c10.c: Regenerated.
1519*181254a7Smrg	* generated/reshape_c16.c: Regenerated.
1520*181254a7Smrg	* generated/reshape_c4.c: Regenerated.
1521*181254a7Smrg	* generated/reshape_c8.c: Regenerated.
1522*181254a7Smrg	* generated/reshape_i16.c: Regenerated.
1523*181254a7Smrg	* generated/reshape_i4.c: Regenerated.
1524*181254a7Smrg	* generated/reshape_i8.c: Regenerated.
1525*181254a7Smrg	* generated/reshape_r10.c: Regenerated.
1526*181254a7Smrg	* generated/reshape_r16.c: Regenerated.
1527*181254a7Smrg	* generated/reshape_r4.c: Regenerated.
1528*181254a7Smrg	* generated/reshape_r8.c: Regenerated.
1529*181254a7Smrg
1530*181254a7Smrg2018-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
1531*181254a7Smrg
1532*181254a7Smrg	* generated/cshift1_16.c (cshift1): Regenerated.
1533*181254a7Smrg	* generated/cshift1_4.c (cshift1): Regenerated.
1534*181254a7Smrg	* generated/cshift1_8.c (cshift1): Regenerated.
1535*181254a7Smrg	* generated/eoshift1_16.c (eoshift1): Regenerated.
1536*181254a7Smrg	* generated/eoshift1_4.c (eoshift1): Regenerated.
1537*181254a7Smrg	* generated/eoshift1_8.c (eoshift1): Regenerated.
1538*181254a7Smrg	* generated/eoshift3_16.c (eoshift3): Regenerated.
1539*181254a7Smrg	* generated/eoshift3_4.c (eoshift3): Regenerated.
1540*181254a7Smrg	* generated/eoshift3_8.c (eoshift3): Regenerated.
1541*181254a7Smrg	* generated/in_pack_c10.c (internal_pack_c10): Regenerated.
1542*181254a7Smrg	* generated/in_pack_c16.c (internal_pack_c16): Regenerated.
1543*181254a7Smrg	* generated/in_pack_c4.c (internal_pack_c4): Regenerated.
1544*181254a7Smrg	* generated/in_pack_c8.c (internal_pack_c8): Regenerated.
1545*181254a7Smrg	* generated/in_pack_i1.c (internal_pack_1): Regenerated.
1546*181254a7Smrg	* generated/in_pack_i16.c (internal_pack_16): Regenerated.
1547*181254a7Smrg	* generated/in_pack_i2.c (internal_pack_2): Regenerated.
1548*181254a7Smrg	* generated/in_pack_i4.c (internal_pack_4): Regenerated.
1549*181254a7Smrg	* generated/in_pack_i8.c (internal_pack_8): Regenerated.
1550*181254a7Smrg	* generated/in_pack_r10.c (internal_pack_r10): Regenerated.
1551*181254a7Smrg	* generated/in_pack_r16.c (internal_pack_r16): Regenerated.
1552*181254a7Smrg	* generated/in_pack_r4.c (internal_pack_r4): Regenerated.
1553*181254a7Smrg	* generated/in_pack_r8.c (internal_pack_r8): Regenerated.
1554*181254a7Smrg	* generated/in_unpack_c10.c (internal_unpack_c10): Regenerated.
1555*181254a7Smrg	* generated/in_unpack_c16.c (internal_unpack_c16): Regenerated.
1556*181254a7Smrg	* generated/in_unpack_c4.c (internal_unpack_c4): Regenerated.
1557*181254a7Smrg	* generated/in_unpack_c8.c (internal_unpack_c8): Regenerated.
1558*181254a7Smrg	* generated/in_unpack_i1.c (internal_unpack_1): Regenerated.
1559*181254a7Smrg	* generated/in_unpack_i16.c (internal_unpack_16): Regenerated.
1560*181254a7Smrg	* generated/in_unpack_i2.c (internal_unpack_2): Regenerated.
1561*181254a7Smrg	* generated/in_unpack_i4.c (internal_unpack_4): Regenerated.
1562*181254a7Smrg	* generated/in_unpack_i8.c (internal_unpack_8): Regenerated.
1563*181254a7Smrg	* generated/in_unpack_r10.c (internal_unpack_r10): Regenerated.
1564*181254a7Smrg	* generated/in_unpack_r16.c (internal_unpack_r16): Regenerated.
1565*181254a7Smrg	* generated/in_unpack_r4.c (internal_unpack_r4): Regenerated.
1566*181254a7Smrg	* generated/in_unpack_r8.c (internal_unpack_r8): Regenerated.
1567*181254a7Smrg	* generated/reshape_c10.c (reshape_c10): Regenerated.
1568*181254a7Smrg	* generated/reshape_c16.c (reshape_c16): Regenerated.
1569*181254a7Smrg	* generated/reshape_c4.c (reshape_c4): Regenerated.
1570*181254a7Smrg	* generated/reshape_c8.c (reshape_c8): Regenerated.
1571*181254a7Smrg	* generated/reshape_i16.c (reshape_16): Regenerated.
1572*181254a7Smrg	* generated/reshape_i4.c (reshape_4): Regenerated.
1573*181254a7Smrg	* generated/reshape_i8.c (reshape_8): Regenerated.
1574*181254a7Smrg	* generated/reshape_r10.c (reshape_r10): Regenerated.
1575*181254a7Smrg	* generated/reshape_r16.c (reshape_r16): Regenerated.
1576*181254a7Smrg	* generated/reshape_r4.c (reshape_r4): Regenerated.
1577*181254a7Smrg	* generated/reshape_r8.c (reshape_r8): Regenerated.
1578*181254a7Smrg	* generated/shape_i1.c (shape_1): Regenerated.
1579*181254a7Smrg	* generated/shape_i16.c (shape_16): Regenerated.
1580*181254a7Smrg	* generated/shape_i2.c (shape_2): Regenerated.
1581*181254a7Smrg	* generated/shape_i4.c (shape_4): Regenerated.
1582*181254a7Smrg	* generated/shape_i8.c (shape_8): Regenerated.
1583*181254a7Smrg	* generated/spread_c10.c (spread_scalar_c10): Regenerated.
1584*181254a7Smrg	* generated/spread_c16.c (spread_scalar_c16): Regenerated.
1585*181254a7Smrg	* generated/spread_c4.c (spread_scalar_c4): Regenerated.
1586*181254a7Smrg	* generated/spread_c8.c (spread_scalar_c8): Regenerated.
1587*181254a7Smrg	* generated/spread_i1.c (spread_scalar_i1): Regenerated.
1588*181254a7Smrg	* generated/spread_i16.c (spread_scalar_i16): Regenerated.
1589*181254a7Smrg	* generated/spread_i2.c (spread_scalar_i2): Regenerated.
1590*181254a7Smrg	* generated/spread_i4.c (spread_scalar_i4): Regenerated.
1591*181254a7Smrg	* generated/spread_i8.c (spread_scalar_i8): Regenerated.
1592*181254a7Smrg	* generated/spread_r10.c (spread_scalar_r10): Regenerated.
1593*181254a7Smrg	* generated/spread_r16.c (spread_scalar_r16): Regenerated.
1594*181254a7Smrg	* generated/spread_r4.c (spread_scalar_r4): Regenerated.
1595*181254a7Smrg	* generated/spread_r8.c (spread_scalar_r8): Regenerated.
1596*181254a7Smrg	* intrinsics/random.c (jump): Use size_t for array index in loop.
1597*181254a7Smrg	(getosrandom): Likewise.
1598*181254a7Smrg	(arandom_r4): Make n an index_type.
1599*181254a7Smrg	(arandom_r8): Likewise.
1600*181254a7Smrg	(arandom_r10): Likewise.
1601*181254a7Smrg	(arandom_r16): Likewise.
1602*181254a7Smrg	(scramble_seed): Use size_t for array index in loop.
1603*181254a7Smrg	* m4/cshift1.m4: Make i an index_type.
1604*181254a7Smrg	* m4/eoshift1.m4: Likewise.
1605*181254a7Smrg	* m4/eoshift3.m4: Likewise.
1606*181254a7Smrg	* m4/in_pack.m4: Make n an index_type.
1607*181254a7Smrg	* m4/in_unpack.m4: Likewise.
1608*181254a7Smrg	* m4/reshape.m4: Make n and dim index_type's.
1609*181254a7Smrg	* m4/shape.m4: Make n an index_type.
1610*181254a7Smrg	* m4/spread.m4: Likewise, use index_type argument rather than
1611*181254a7Smrg	copying to int.
1612*181254a7Smrg	* runtime/bounds.c (bounds_ifunction_return): Make n an
1613*181254a7Smrg	index_type.
1614*181254a7Smrg	* runtime/in_pack_generic.c (internal_pack): Likewise.
1615*181254a7Smrg	* runtime/in_unpack_generic.c (internal_unpack): Make n and size
1616*181254a7Smrg	index_type's.
1617*181254a7Smrg
1618*181254a7Smrg2018-01-30  Thomas Koenig  <tkoenig@gcc.gnu.org>
1619*181254a7Smrg
1620*181254a7Smrg	PR fortran/37577
1621*181254a7Smrg	* libgfortran.h: Remove GFC_DTYPE_DERIVED_1, GFC_DTYPE_DERIVED_2,
1622*181254a7Smrg	GFC_DTYPE_DERIVED_4, GFC_DTYPE_DERIVED_8 and GFC_DTYPE_DERIVED_16.
1623*181254a7Smrg	* m4/cshift1.m4: Remove GFC_DTYPE_DERIVED_1.
1624*181254a7Smrg	* generated/cshift1_16.c: Regenerated.
1625*181254a7Smrg	* generated/cshift1_4.c: Regenerated.
1626*181254a7Smrg	* generated/cshift1_8.c: Regenerated.
1627*181254a7Smrg	* intrinsics/cshift0.c: Remove GFC_DTYPE_DERIVED_1.
1628*181254a7Smrg	* intrinsics/pack_generic.c (pack): Move handling of other types
1629*181254a7Smrg	into separate switch statement.
1630*181254a7Smrg	* intrinsics/spread_generic.c (spread): Likewise.
1631*181254a7Smrg	(spread_scalar): Likewise.
1632*181254a7Smrg	* intrinsics/unpack_generic.c (unpack1): Likewise.
1633*181254a7Smrg	(unpack0): Likewise.
1634*181254a7Smrg	* runtime/in_pack_generic.c (internal_pack): Likewise.
1635*181254a7Smrg	* runtime/in_unpack_generic.c (internal_unpack): Likewise.
1636*181254a7Smrg
1637*181254a7Smrg2018-01-25  Paul Thomas  <pault@gcc.gnu.org>
1638*181254a7Smrg
1639*181254a7Smrg	PR fortran/37577
1640*181254a7Smrg	* caf/single.c (_gfortran_caf_failed_images): Access the 'type'
1641*181254a7Smrg	and 'elem_len' fields of the dtype instead of the shifts.
1642*181254a7Smrg	(_gfortran_caf_stopped_images): Likewise.
1643*181254a7Smrg	* intrinsics/associated.c (associated): Compare the 'type' and
1644*181254a7Smrg	'elem_len' fields instead of the dtype.
1645*181254a7Smrg	* caf/date_and_time.c : Access the dtype fields rather using
1646*181254a7Smrg	shifts and masks.
1647*181254a7Smrg	* io/transfer.c (transfer_array ): Comment on item count.
1648*181254a7Smrg	(set_nml_var,st_set_nml_var): Change dtype type and use fields.
1649*181254a7Smrg	(st_set_nml_dtio_var): Likewise.
1650*181254a7Smrg	* libgfortran.h : Change definition of GFC_ARRAY_DESCRIPTOR and
1651*181254a7Smrg	add a typedef for the dtype_type. Change the GFC_DTYPE_* macros
1652*181254a7Smrg	to access the dtype fields.
1653*181254a7Smrg
1654*181254a7Smrg2018-01-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
1655*181254a7Smrg
1656*181254a7Smrg	PR fortran/54613
1657*181254a7Smrg	* m4/iparm.m4: Add back_arg macro if in minloc or maxloc.
1658*181254a7Smrg	* m4/iforeach-s.m4: Add optional argument back with back_arg
1659*181254a7Smrg	macro. Improve m4 quoting. If HAVE_BACK_ARG is defined, assert
1660*181254a7Smrg	that back is non-true.
1661*181254a7Smrg	* m4/iforeach.m4: Likewise.
1662*181254a7Smrg	* m4/ifunction-s.m4: Likewise.
1663*181254a7Smrg	* m4/ifunction.m4: Likewise.
1664*181254a7Smrg	* m4/maxloc0.m4: Include assert.h
1665*181254a7Smrg	* m4/minloc0.m4: Likewise.
1666*181254a7Smrg	* m4/maxloc0s.m4: #define HAVE_BACK_ARG.
1667*181254a7Smrg	* m4/minloc0s.m4: Likewise.
1668*181254a7Smrg	* m4/maxloc1s.m4: Likewise.
1669*181254a7Smrg	* m4/minloc1s.m4: Likewise.
1670*181254a7Smrg	* m4/maxloc1.m4: Include assert.h, #define HAVE_BACK_ARG.
1671*181254a7Smrg	* m4/minloc1.m4: Likewise.
1672*181254a7Smrg	* m4/maxloc2s.m4: Add assert.h, add back_arg, assert that
1673*181254a7Smrg	back is non-true.
1674*181254a7Smrg	* m4/minloc2s.m4: Likewise.
1675*181254a7Smrg	* generated/iall_i1.c: Regenerated.
1676*181254a7Smrg	* generated/iall_i16.c: Regenerated.
1677*181254a7Smrg	* generated/iall_i2.c: Regenerated.
1678*181254a7Smrg	* generated/iall_i4.c: Regenerated.
1679*181254a7Smrg	* generated/iall_i8.c: Regenerated.
1680*181254a7Smrg	* generated/iany_i1.c: Regenerated.
1681*181254a7Smrg	* generated/iany_i16.c: Regenerated.
1682*181254a7Smrg	* generated/iany_i2.c: Regenerated.
1683*181254a7Smrg	* generated/iany_i4.c: Regenerated.
1684*181254a7Smrg	* generated/iany_i8.c: Regenerated.
1685*181254a7Smrg	* generated/iparity_i1.c: Regenerated.
1686*181254a7Smrg	* generated/iparity_i16.c: Regenerated.
1687*181254a7Smrg	* generated/iparity_i2.c: Regenerated.
1688*181254a7Smrg	* generated/iparity_i4.c: Regenerated.
1689*181254a7Smrg	* generated/iparity_i8.c: Regenerated.
1690*181254a7Smrg	* generated/maxloc0_16_i1.c: Regenerated.
1691*181254a7Smrg	* generated/maxloc0_16_i16.c: Regenerated.
1692*181254a7Smrg	* generated/maxloc0_16_i2.c: Regenerated.
1693*181254a7Smrg	* generated/maxloc0_16_i4.c: Regenerated.
1694*181254a7Smrg	* generated/maxloc0_16_i8.c: Regenerated.
1695*181254a7Smrg	* generated/maxloc0_16_r10.c: Regenerated.
1696*181254a7Smrg	* generated/maxloc0_16_r16.c: Regenerated.
1697*181254a7Smrg	* generated/maxloc0_16_r4.c: Regenerated.
1698*181254a7Smrg	* generated/maxloc0_16_r8.c: Regenerated.
1699*181254a7Smrg	* generated/maxloc0_16_s1.c: Regenerated.
1700*181254a7Smrg	* generated/maxloc0_16_s4.c: Regenerated.
1701*181254a7Smrg	* generated/maxloc0_4_i1.c: Regenerated.
1702*181254a7Smrg	* generated/maxloc0_4_i16.c: Regenerated.
1703*181254a7Smrg	* generated/maxloc0_4_i2.c: Regenerated.
1704*181254a7Smrg	* generated/maxloc0_4_i4.c: Regenerated.
1705*181254a7Smrg	* generated/maxloc0_4_i8.c: Regenerated.
1706*181254a7Smrg	* generated/maxloc0_4_r10.c: Regenerated.
1707*181254a7Smrg	* generated/maxloc0_4_r16.c: Regenerated.
1708*181254a7Smrg	* generated/maxloc0_4_r4.c: Regenerated.
1709*181254a7Smrg	* generated/maxloc0_4_r8.c: Regenerated.
1710*181254a7Smrg	* generated/maxloc0_4_s1.c: Regenerated.
1711*181254a7Smrg	* generated/maxloc0_4_s4.c: Regenerated.
1712*181254a7Smrg	* generated/maxloc0_8_i1.c: Regenerated.
1713*181254a7Smrg	* generated/maxloc0_8_i16.c: Regenerated.
1714*181254a7Smrg	* generated/maxloc0_8_i2.c: Regenerated.
1715*181254a7Smrg	* generated/maxloc0_8_i4.c: Regenerated.
1716*181254a7Smrg	* generated/maxloc0_8_i8.c: Regenerated.
1717*181254a7Smrg	* generated/maxloc0_8_r10.c: Regenerated.
1718*181254a7Smrg	* generated/maxloc0_8_r16.c: Regenerated.
1719*181254a7Smrg	* generated/maxloc0_8_r4.c: Regenerated.
1720*181254a7Smrg	* generated/maxloc0_8_r8.c: Regenerated.
1721*181254a7Smrg	* generated/maxloc0_8_s1.c: Regenerated.
1722*181254a7Smrg	* generated/maxloc0_8_s4.c: Regenerated.
1723*181254a7Smrg	* generated/maxloc1_16_i1.c: Regenerated.
1724*181254a7Smrg	* generated/maxloc1_16_i16.c: Regenerated.
1725*181254a7Smrg	* generated/maxloc1_16_i2.c: Regenerated.
1726*181254a7Smrg	* generated/maxloc1_16_i4.c: Regenerated.
1727*181254a7Smrg	* generated/maxloc1_16_i8.c: Regenerated.
1728*181254a7Smrg	* generated/maxloc1_16_r10.c: Regenerated.
1729*181254a7Smrg	* generated/maxloc1_16_r16.c: Regenerated.
1730*181254a7Smrg	* generated/maxloc1_16_r4.c: Regenerated.
1731*181254a7Smrg	* generated/maxloc1_16_r8.c: Regenerated.
1732*181254a7Smrg	* generated/maxloc1_16_s1.c: Regenerated.
1733*181254a7Smrg	* generated/maxloc1_16_s4.c: Regenerated.
1734*181254a7Smrg	* generated/maxloc1_4_i1.c: Regenerated.
1735*181254a7Smrg	* generated/maxloc1_4_i16.c: Regenerated.
1736*181254a7Smrg	* generated/maxloc1_4_i2.c: Regenerated.
1737*181254a7Smrg	* generated/maxloc1_4_i4.c: Regenerated.
1738*181254a7Smrg	* generated/maxloc1_4_i8.c: Regenerated.
1739*181254a7Smrg	* generated/maxloc1_4_r10.c: Regenerated.
1740*181254a7Smrg	* generated/maxloc1_4_r16.c: Regenerated.
1741*181254a7Smrg	* generated/maxloc1_4_r4.c: Regenerated.
1742*181254a7Smrg	* generated/maxloc1_4_r8.c: Regenerated.
1743*181254a7Smrg	* generated/maxloc1_4_s1.c: Regenerated.
1744*181254a7Smrg	* generated/maxloc1_4_s4.c: Regenerated.
1745*181254a7Smrg	* generated/maxloc1_8_i1.c: Regenerated.
1746*181254a7Smrg	* generated/maxloc1_8_i16.c: Regenerated.
1747*181254a7Smrg	* generated/maxloc1_8_i2.c: Regenerated.
1748*181254a7Smrg	* generated/maxloc1_8_i4.c: Regenerated.
1749*181254a7Smrg	* generated/maxloc1_8_i8.c: Regenerated.
1750*181254a7Smrg	* generated/maxloc1_8_r10.c: Regenerated.
1751*181254a7Smrg	* generated/maxloc1_8_r16.c: Regenerated.
1752*181254a7Smrg	* generated/maxloc1_8_r4.c: Regenerated.
1753*181254a7Smrg	* generated/maxloc1_8_r8.c: Regenerated.
1754*181254a7Smrg	* generated/maxloc1_8_s1.c: Regenerated.
1755*181254a7Smrg	* generated/maxloc1_8_s4.c: Regenerated.
1756*181254a7Smrg	* generated/maxval_i1.c: Regenerated.
1757*181254a7Smrg	* generated/maxval_i16.c: Regenerated.
1758*181254a7Smrg	* generated/maxval_i2.c: Regenerated.
1759*181254a7Smrg	* generated/maxval_i4.c: Regenerated.
1760*181254a7Smrg	* generated/maxval_i8.c: Regenerated.
1761*181254a7Smrg	* generated/maxval_r10.c: Regenerated.
1762*181254a7Smrg	* generated/maxval_r16.c: Regenerated.
1763*181254a7Smrg	* generated/maxval_r4.c: Regenerated.
1764*181254a7Smrg	* generated/maxval_r8.c: Regenerated.
1765*181254a7Smrg	* generated/minloc0_16_i1.c: Regenerated.
1766*181254a7Smrg	* generated/minloc0_16_i16.c: Regenerated.
1767*181254a7Smrg	* generated/minloc0_16_i2.c: Regenerated.
1768*181254a7Smrg	* generated/minloc0_16_i4.c: Regenerated.
1769*181254a7Smrg	* generated/minloc0_16_i8.c: Regenerated.
1770*181254a7Smrg	* generated/minloc0_16_r10.c: Regenerated.
1771*181254a7Smrg	* generated/minloc0_16_r16.c: Regenerated.
1772*181254a7Smrg	* generated/minloc0_16_r4.c: Regenerated.
1773*181254a7Smrg	* generated/minloc0_16_r8.c: Regenerated.
1774*181254a7Smrg	* generated/minloc0_16_s1.c: Regenerated.
1775*181254a7Smrg	* generated/minloc0_16_s4.c: Regenerated.
1776*181254a7Smrg	* generated/minloc0_4_i1.c: Regenerated.
1777*181254a7Smrg	* generated/minloc0_4_i16.c: Regenerated.
1778*181254a7Smrg	* generated/minloc0_4_i2.c: Regenerated.
1779*181254a7Smrg	* generated/minloc0_4_i4.c: Regenerated.
1780*181254a7Smrg	* generated/minloc0_4_i8.c: Regenerated.
1781*181254a7Smrg	* generated/minloc0_4_r10.c: Regenerated.
1782*181254a7Smrg	* generated/minloc0_4_r16.c: Regenerated.
1783*181254a7Smrg	* generated/minloc0_4_r4.c: Regenerated.
1784*181254a7Smrg	* generated/minloc0_4_r8.c: Regenerated.
1785*181254a7Smrg	* generated/minloc0_4_s1.c: Regenerated.
1786*181254a7Smrg	* generated/minloc0_4_s4.c: Regenerated.
1787*181254a7Smrg	* generated/minloc0_8_i1.c: Regenerated.
1788*181254a7Smrg	* generated/minloc0_8_i16.c: Regenerated.
1789*181254a7Smrg	* generated/minloc0_8_i2.c: Regenerated.
1790*181254a7Smrg	* generated/minloc0_8_i4.c: Regenerated.
1791*181254a7Smrg	* generated/minloc0_8_i8.c: Regenerated.
1792*181254a7Smrg	* generated/minloc0_8_r10.c: Regenerated.
1793*181254a7Smrg	* generated/minloc0_8_r16.c: Regenerated.
1794*181254a7Smrg	* generated/minloc0_8_r4.c: Regenerated.
1795*181254a7Smrg	* generated/minloc0_8_r8.c: Regenerated.
1796*181254a7Smrg	* generated/minloc0_8_s1.c: Regenerated.
1797*181254a7Smrg	* generated/minloc0_8_s4.c: Regenerated.
1798*181254a7Smrg	* generated/minloc1_16_i1.c: Regenerated.
1799*181254a7Smrg	* generated/minloc1_16_i16.c: Regenerated.
1800*181254a7Smrg	* generated/minloc1_16_i2.c: Regenerated.
1801*181254a7Smrg	* generated/minloc1_16_i4.c: Regenerated.
1802*181254a7Smrg	* generated/minloc1_16_i8.c: Regenerated.
1803*181254a7Smrg	* generated/minloc1_16_r10.c: Regenerated.
1804*181254a7Smrg	* generated/minloc1_16_r16.c: Regenerated.
1805*181254a7Smrg	* generated/minloc1_16_r4.c: Regenerated.
1806*181254a7Smrg	* generated/minloc1_16_r8.c: Regenerated.
1807*181254a7Smrg	* generated/minloc1_16_s1.c: Regenerated.
1808*181254a7Smrg	* generated/minloc1_16_s4.c: Regenerated.
1809*181254a7Smrg	* generated/minloc1_4_i1.c: Regenerated.
1810*181254a7Smrg	* generated/minloc1_4_i16.c: Regenerated.
1811*181254a7Smrg	* generated/minloc1_4_i2.c: Regenerated.
1812*181254a7Smrg	* generated/minloc1_4_i4.c: Regenerated.
1813*181254a7Smrg	* generated/minloc1_4_i8.c: Regenerated.
1814*181254a7Smrg	* generated/minloc1_4_r10.c: Regenerated.
1815*181254a7Smrg	* generated/minloc1_4_r16.c: Regenerated.
1816*181254a7Smrg	* generated/minloc1_4_r4.c: Regenerated.
1817*181254a7Smrg	* generated/minloc1_4_r8.c: Regenerated.
1818*181254a7Smrg	* generated/minloc1_4_s1.c: Regenerated.
1819*181254a7Smrg	* generated/minloc1_4_s4.c: Regenerated.
1820*181254a7Smrg	* generated/minloc1_8_i1.c: Regenerated.
1821*181254a7Smrg	* generated/minloc1_8_i16.c: Regenerated.
1822*181254a7Smrg	* generated/minloc1_8_i2.c: Regenerated.
1823*181254a7Smrg	* generated/minloc1_8_i4.c: Regenerated.
1824*181254a7Smrg	* generated/minloc1_8_i8.c: Regenerated.
1825*181254a7Smrg	* generated/minloc1_8_r10.c: Regenerated.
1826*181254a7Smrg	* generated/minloc1_8_r16.c: Regenerated.
1827*181254a7Smrg	* generated/minloc1_8_r4.c: Regenerated.
1828*181254a7Smrg	* generated/minloc1_8_r8.c: Regenerated.
1829*181254a7Smrg	* generated/minloc1_8_s1.c: Regenerated.
1830*181254a7Smrg	* generated/minloc1_8_s4.c: Regenerated.
1831*181254a7Smrg	* generated/minval_i1.c: Regenerated.
1832*181254a7Smrg	* generated/minval_i16.c: Regenerated.
1833*181254a7Smrg	* generated/minval_i2.c: Regenerated.
1834*181254a7Smrg	* generated/minval_i4.c: Regenerated.
1835*181254a7Smrg	* generated/minval_i8.c: Regenerated.
1836*181254a7Smrg	* generated/minval_r10.c: Regenerated.
1837*181254a7Smrg	* generated/minval_r16.c: Regenerated.
1838*181254a7Smrg	* generated/minval_r4.c: Regenerated.
1839*181254a7Smrg	* generated/minval_r8.c: Regenerated.
1840*181254a7Smrg	* generated/norm2_r10.c: Regenerated.
1841*181254a7Smrg	* generated/norm2_r16.c: Regenerated.
1842*181254a7Smrg	* generated/norm2_r4.c: Regenerated.
1843*181254a7Smrg	* generated/norm2_r8.c: Regenerated.
1844*181254a7Smrg	* generated/parity_l1.c: Regenerated.
1845*181254a7Smrg	* generated/parity_l16.c: Regenerated.
1846*181254a7Smrg	* generated/parity_l2.c: Regenerated.
1847*181254a7Smrg	* generated/parity_l4.c: Regenerated.
1848*181254a7Smrg	* generated/parity_l8.c: Regenerated.
1849*181254a7Smrg	* generated/product_c10.c: Regenerated.
1850*181254a7Smrg	* generated/product_c16.c: Regenerated.
1851*181254a7Smrg	* generated/product_c4.c: Regenerated.
1852*181254a7Smrg	* generated/product_c8.c: Regenerated.
1853*181254a7Smrg	* generated/product_i1.c: Regenerated.
1854*181254a7Smrg	* generated/product_i16.c: Regenerated.
1855*181254a7Smrg	* generated/product_i2.c: Regenerated.
1856*181254a7Smrg	* generated/product_i4.c: Regenerated.
1857*181254a7Smrg	* generated/product_i8.c: Regenerated.
1858*181254a7Smrg	* generated/product_r10.c: Regenerated.
1859*181254a7Smrg	* generated/product_r16.c: Regenerated.
1860*181254a7Smrg	* generated/product_r4.c: Regenerated.
1861*181254a7Smrg	* generated/product_r8.c: Regenerated.
1862*181254a7Smrg	* generated/sum_c10.c: Regenerated.
1863*181254a7Smrg	* generated/sum_c16.c: Regenerated.
1864*181254a7Smrg	* generated/sum_c4.c: Regenerated.
1865*181254a7Smrg	* generated/sum_c8.c: Regenerated.
1866*181254a7Smrg	* generated/sum_i1.c: Regenerated.
1867*181254a7Smrg	* generated/sum_i16.c: Regenerated.
1868*181254a7Smrg	* generated/sum_i2.c: Regenerated.
1869*181254a7Smrg	* generated/sum_i4.c: Regenerated.
1870*181254a7Smrg	* generated/sum_i8.c: Regenerated.
1871*181254a7Smrg	* generated/sum_r10.c: Regenerated.
1872*181254a7Smrg	* generated/sum_r16.c: Regenerated.
1873*181254a7Smrg	* generated/sum_r4.c: Regenerated.
1874*181254a7Smrg	* generated/sum_r8.c: Regenerated.
1875*181254a7Smrg
1876*181254a7Smrg2018-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1877*181254a7Smrg
1878*181254a7Smrg	PR libgfortran/83811
1879*181254a7Smrg	* write.c (select_buffer): Adjust buffer size up by 1.
1880*181254a7Smrg
1881*181254a7Smrg2018-01-08  Janne Blomqvist  <jb@gcc.gnu.org>
1882*181254a7Smrg
1883*181254a7Smrg	PR 78534, bugfix for r256322
1884*181254a7Smrg	* io/transfer.c (next_record_w): Use correct type for return value
1885*181254a7Smrg	of next_array_record.
1886*181254a7Smrg
1887*181254a7Smrg2018-01-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
1888*181254a7Smrg
1889*181254a7Smrg	* libgfortran.h (GFC_DTYPE_COPY): New macro.
1890*181254a7Smrg	(GFC_DTYPE_COPY_SETRANK): New macro.
1891*181254a7Smrg	(GFC_DTYPE_IS_UNSET): New macro.
1892*181254a7Smrg	* intrinsics/cshift0.c (cshift0): Use new macros.
1893*181254a7Smrg	* intrinsics/eoshift0.c (eoshift0): Likewise.
1894*181254a7Smrg	* intrinsics/eoshift2.c (eoshift2): Likewise.
1895*181254a7Smrg	* intrinsics/move_alloc.c (move_alloc): Likewise.
1896*181254a7Smrg	* intrinsics/reshape_generic.c (reshape_internal): Likewise.
1897*181254a7Smrg	* intrinsics/spread_generic.c (spread_internal): Likewise.
1898*181254a7Smrg	* intrinsics/spread_generic.c (spread_scalar): Likewise.
1899*181254a7Smrg	* intrinsics/spread_generic.c (spread_char_scalar): Likewise.
1900*181254a7Smrg	* intrinsics/spread_generic.c (spread_char4_scalar): Likewise.
1901*181254a7Smrg	* intrinsics/unpack_generic.c (unpack0): Likewise.
1902*181254a7Smrg	* intrinsics/unpack_generic.c (unpack0_char): Likewise.
1903*181254a7Smrg	* intrinsics/unpack_generic.c (unpack0_char4): Likewise.
1904*181254a7Smrg	* m4/cshift1.m4 (cshift1): Likewise.
1905*181254a7Smrg	* m4/eoshift1.m4 (eoshift1): Likewise.
1906*181254a7Smrg	* m4/eoshift3.m4 (eoshift3): Likewise.
1907*181254a7Smrg	* m4/iforeach-s.m4: Likewise.
1908*181254a7Smrg	* m4/iforeach.m4: Likewise.
1909*181254a7Smrg	* m4/ifunction-s.m4: Likewise.
1910*181254a7Smrg	* m4/ifunction-s2.m4: Likewise.
1911*181254a7Smrg	* m4/ifunction.m4: Likewise.
1912*181254a7Smrg	* m4/ifunction_logical.m4: Likewise.
1913*181254a7Smrg	* m4/reshape.m4: Likewise.
1914*181254a7Smrg	* m4/spread.m4: Likewise.
1915*181254a7Smrg	* generated/all_l1.c : Regenerated.
1916*181254a7Smrg	* generated/all_l16.c : Regenerated.
1917*181254a7Smrg	* generated/all_l2.c : Regenerated.
1918*181254a7Smrg	* generated/all_l4.c : Regenerated.
1919*181254a7Smrg	* generated/all_l8.c : Regenerated.
1920*181254a7Smrg	* generated/any_l1.c : Regenerated.
1921*181254a7Smrg	* generated/any_l16.c : Regenerated.
1922*181254a7Smrg	* generated/any_l2.c : Regenerated.
1923*181254a7Smrg	* generated/any_l4.c : Regenerated.
1924*181254a7Smrg	* generated/any_l8.c : Regenerated.
1925*181254a7Smrg	* generated/count_16_l.c : Regenerated.
1926*181254a7Smrg	* generated/count_1_l.c : Regenerated.
1927*181254a7Smrg	* generated/count_2_l.c : Regenerated.
1928*181254a7Smrg	* generated/count_4_l.c : Regenerated.
1929*181254a7Smrg	* generated/count_8_l.c : Regenerated.
1930*181254a7Smrg	* generated/cshift1_16.c : Regenerated.
1931*181254a7Smrg	* generated/cshift1_4.c : Regenerated.
1932*181254a7Smrg	* generated/cshift1_8.c : Regenerated.
1933*181254a7Smrg	* generated/eoshift1_16.c : Regenerated.
1934*181254a7Smrg	* generated/eoshift1_4.c : Regenerated.
1935*181254a7Smrg	* generated/eoshift1_8.c : Regenerated.
1936*181254a7Smrg	* generated/eoshift3_16.c : Regenerated.
1937*181254a7Smrg	* generated/eoshift3_4.c : Regenerated.
1938*181254a7Smrg	* generated/eoshift3_8.c : Regenerated.
1939*181254a7Smrg	* generated/iall_i1.c : Regenerated.
1940*181254a7Smrg	* generated/iall_i16.c : Regenerated.
1941*181254a7Smrg	* generated/iall_i2.c : Regenerated.
1942*181254a7Smrg	* generated/iall_i4.c : Regenerated.
1943*181254a7Smrg	* generated/iall_i8.c : Regenerated.
1944*181254a7Smrg	* generated/iany_i1.c : Regenerated.
1945*181254a7Smrg	* generated/iany_i16.c : Regenerated.
1946*181254a7Smrg	* generated/iany_i2.c : Regenerated.
1947*181254a7Smrg	* generated/iany_i4.c : Regenerated.
1948*181254a7Smrg	* generated/iany_i8.c : Regenerated.
1949*181254a7Smrg	* generated/iparity_i1.c : Regenerated.
1950*181254a7Smrg	* generated/iparity_i16.c : Regenerated.
1951*181254a7Smrg	* generated/iparity_i2.c : Regenerated.
1952*181254a7Smrg	* generated/iparity_i4.c : Regenerated.
1953*181254a7Smrg	* generated/iparity_i8.c : Regenerated.
1954*181254a7Smrg	* generated/maxloc0_16_i1.c : Regenerated.
1955*181254a7Smrg	* generated/maxloc0_16_i16.c : Regenerated.
1956*181254a7Smrg	* generated/maxloc0_16_i2.c : Regenerated.
1957*181254a7Smrg	* generated/maxloc0_16_i4.c : Regenerated.
1958*181254a7Smrg	* generated/maxloc0_16_i8.c : Regenerated.
1959*181254a7Smrg	* generated/maxloc0_16_r10.c : Regenerated.
1960*181254a7Smrg	* generated/maxloc0_16_r16.c : Regenerated.
1961*181254a7Smrg	* generated/maxloc0_16_r4.c : Regenerated.
1962*181254a7Smrg	* generated/maxloc0_16_r8.c : Regenerated.
1963*181254a7Smrg	* generated/maxloc0_16_s1.c : Regenerated.
1964*181254a7Smrg	* generated/maxloc0_16_s4.c : Regenerated.
1965*181254a7Smrg	* generated/maxloc0_4_i1.c : Regenerated.
1966*181254a7Smrg	* generated/maxloc0_4_i16.c : Regenerated.
1967*181254a7Smrg	* generated/maxloc0_4_i2.c : Regenerated.
1968*181254a7Smrg	* generated/maxloc0_4_i4.c : Regenerated.
1969*181254a7Smrg	* generated/maxloc0_4_i8.c : Regenerated.
1970*181254a7Smrg	* generated/maxloc0_4_r10.c : Regenerated.
1971*181254a7Smrg	* generated/maxloc0_4_r16.c : Regenerated.
1972*181254a7Smrg	* generated/maxloc0_4_r4.c : Regenerated.
1973*181254a7Smrg	* generated/maxloc0_4_r8.c : Regenerated.
1974*181254a7Smrg	* generated/maxloc0_4_s1.c : Regenerated.
1975*181254a7Smrg	* generated/maxloc0_4_s4.c : Regenerated.
1976*181254a7Smrg	* generated/maxloc0_8_i1.c : Regenerated.
1977*181254a7Smrg	* generated/maxloc0_8_i16.c : Regenerated.
1978*181254a7Smrg	* generated/maxloc0_8_i2.c : Regenerated.
1979*181254a7Smrg	* generated/maxloc0_8_i4.c : Regenerated.
1980*181254a7Smrg	* generated/maxloc0_8_i8.c : Regenerated.
1981*181254a7Smrg	* generated/maxloc0_8_r10.c : Regenerated.
1982*181254a7Smrg	* generated/maxloc0_8_r16.c : Regenerated.
1983*181254a7Smrg	* generated/maxloc0_8_r4.c : Regenerated.
1984*181254a7Smrg	* generated/maxloc0_8_r8.c : Regenerated.
1985*181254a7Smrg	* generated/maxloc0_8_s1.c : Regenerated.
1986*181254a7Smrg	* generated/maxloc0_8_s4.c : Regenerated.
1987*181254a7Smrg	* generated/maxloc1_16_i1.c : Regenerated.
1988*181254a7Smrg	* generated/maxloc1_16_i16.c : Regenerated.
1989*181254a7Smrg	* generated/maxloc1_16_i2.c : Regenerated.
1990*181254a7Smrg	* generated/maxloc1_16_i4.c : Regenerated.
1991*181254a7Smrg	* generated/maxloc1_16_i8.c : Regenerated.
1992*181254a7Smrg	* generated/maxloc1_16_r10.c : Regenerated.
1993*181254a7Smrg	* generated/maxloc1_16_r16.c : Regenerated.
1994*181254a7Smrg	* generated/maxloc1_16_r4.c : Regenerated.
1995*181254a7Smrg	* generated/maxloc1_16_r8.c : Regenerated.
1996*181254a7Smrg	* generated/maxloc1_16_s1.c : Regenerated.
1997*181254a7Smrg	* generated/maxloc1_16_s4.c : Regenerated.
1998*181254a7Smrg	* generated/maxloc1_4_i1.c : Regenerated.
1999*181254a7Smrg	* generated/maxloc1_4_i16.c : Regenerated.
2000*181254a7Smrg	* generated/maxloc1_4_i2.c : Regenerated.
2001*181254a7Smrg	* generated/maxloc1_4_i4.c : Regenerated.
2002*181254a7Smrg	* generated/maxloc1_4_i8.c : Regenerated.
2003*181254a7Smrg	* generated/maxloc1_4_r10.c : Regenerated.
2004*181254a7Smrg	* generated/maxloc1_4_r16.c : Regenerated.
2005*181254a7Smrg	* generated/maxloc1_4_r4.c : Regenerated.
2006*181254a7Smrg	* generated/maxloc1_4_r8.c : Regenerated.
2007*181254a7Smrg	* generated/maxloc1_4_s1.c : Regenerated.
2008*181254a7Smrg	* generated/maxloc1_4_s4.c : Regenerated.
2009*181254a7Smrg	* generated/maxloc1_8_i1.c : Regenerated.
2010*181254a7Smrg	* generated/maxloc1_8_i16.c : Regenerated.
2011*181254a7Smrg	* generated/maxloc1_8_i2.c : Regenerated.
2012*181254a7Smrg	* generated/maxloc1_8_i4.c : Regenerated.
2013*181254a7Smrg	* generated/maxloc1_8_i8.c : Regenerated.
2014*181254a7Smrg	* generated/maxloc1_8_r10.c : Regenerated.
2015*181254a7Smrg	* generated/maxloc1_8_r16.c : Regenerated.
2016*181254a7Smrg	* generated/maxloc1_8_r4.c : Regenerated.
2017*181254a7Smrg	* generated/maxloc1_8_r8.c : Regenerated.
2018*181254a7Smrg	* generated/maxloc1_8_s1.c : Regenerated.
2019*181254a7Smrg	* generated/maxloc1_8_s4.c : Regenerated.
2020*181254a7Smrg	* generated/maxval1_s1.c : Regenerated.
2021*181254a7Smrg	* generated/maxval1_s4.c : Regenerated.
2022*181254a7Smrg	* generated/maxval_i1.c : Regenerated.
2023*181254a7Smrg	* generated/maxval_i16.c : Regenerated.
2024*181254a7Smrg	* generated/maxval_i2.c : Regenerated.
2025*181254a7Smrg	* generated/maxval_i4.c : Regenerated.
2026*181254a7Smrg	* generated/maxval_i8.c : Regenerated.
2027*181254a7Smrg	* generated/maxval_r10.c : Regenerated.
2028*181254a7Smrg	* generated/maxval_r16.c : Regenerated.
2029*181254a7Smrg	* generated/maxval_r4.c : Regenerated.
2030*181254a7Smrg	* generated/maxval_r8.c : Regenerated.
2031*181254a7Smrg	* generated/minloc0_16_i1.c : Regenerated.
2032*181254a7Smrg	* generated/minloc0_16_i16.c : Regenerated.
2033*181254a7Smrg	* generated/minloc0_16_i2.c : Regenerated.
2034*181254a7Smrg	* generated/minloc0_16_i4.c : Regenerated.
2035*181254a7Smrg	* generated/minloc0_16_i8.c : Regenerated.
2036*181254a7Smrg	* generated/minloc0_16_r10.c : Regenerated.
2037*181254a7Smrg	* generated/minloc0_16_r16.c : Regenerated.
2038*181254a7Smrg	* generated/minloc0_16_r4.c : Regenerated.
2039*181254a7Smrg	* generated/minloc0_16_r8.c : Regenerated.
2040*181254a7Smrg	* generated/minloc0_16_s1.c : Regenerated.
2041*181254a7Smrg	* generated/minloc0_16_s4.c : Regenerated.
2042*181254a7Smrg	* generated/minloc0_4_i1.c : Regenerated.
2043*181254a7Smrg	* generated/minloc0_4_i16.c : Regenerated.
2044*181254a7Smrg	* generated/minloc0_4_i2.c : Regenerated.
2045*181254a7Smrg	* generated/minloc0_4_i4.c : Regenerated.
2046*181254a7Smrg	* generated/minloc0_4_i8.c : Regenerated.
2047*181254a7Smrg	* generated/minloc0_4_r10.c : Regenerated.
2048*181254a7Smrg	* generated/minloc0_4_r16.c : Regenerated.
2049*181254a7Smrg	* generated/minloc0_4_r4.c : Regenerated.
2050*181254a7Smrg	* generated/minloc0_4_r8.c : Regenerated.
2051*181254a7Smrg	* generated/minloc0_4_s1.c : Regenerated.
2052*181254a7Smrg	* generated/minloc0_4_s4.c : Regenerated.
2053*181254a7Smrg	* generated/minloc0_8_i1.c : Regenerated.
2054*181254a7Smrg	* generated/minloc0_8_i16.c : Regenerated.
2055*181254a7Smrg	* generated/minloc0_8_i2.c : Regenerated.
2056*181254a7Smrg	* generated/minloc0_8_i4.c : Regenerated.
2057*181254a7Smrg	* generated/minloc0_8_i8.c : Regenerated.
2058*181254a7Smrg	* generated/minloc0_8_r10.c : Regenerated.
2059*181254a7Smrg	* generated/minloc0_8_r16.c : Regenerated.
2060*181254a7Smrg	* generated/minloc0_8_r4.c : Regenerated.
2061*181254a7Smrg	* generated/minloc0_8_r8.c : Regenerated.
2062*181254a7Smrg	* generated/minloc0_8_s1.c : Regenerated.
2063*181254a7Smrg	* generated/minloc0_8_s4.c : Regenerated.
2064*181254a7Smrg	* generated/minloc1_16_i1.c : Regenerated.
2065*181254a7Smrg	* generated/minloc1_16_i16.c : Regenerated.
2066*181254a7Smrg	* generated/minloc1_16_i2.c : Regenerated.
2067*181254a7Smrg	* generated/minloc1_16_i4.c : Regenerated.
2068*181254a7Smrg	* generated/minloc1_16_i8.c : Regenerated.
2069*181254a7Smrg	* generated/minloc1_16_r10.c : Regenerated.
2070*181254a7Smrg	* generated/minloc1_16_r16.c : Regenerated.
2071*181254a7Smrg	* generated/minloc1_16_r4.c : Regenerated.
2072*181254a7Smrg	* generated/minloc1_16_r8.c : Regenerated.
2073*181254a7Smrg	* generated/minloc1_16_s1.c : Regenerated.
2074*181254a7Smrg	* generated/minloc1_16_s4.c : Regenerated.
2075*181254a7Smrg	* generated/minloc1_4_i1.c : Regenerated.
2076*181254a7Smrg	* generated/minloc1_4_i16.c : Regenerated.
2077*181254a7Smrg	* generated/minloc1_4_i2.c : Regenerated.
2078*181254a7Smrg	* generated/minloc1_4_i4.c : Regenerated.
2079*181254a7Smrg	* generated/minloc1_4_i8.c : Regenerated.
2080*181254a7Smrg	* generated/minloc1_4_r10.c : Regenerated.
2081*181254a7Smrg	* generated/minloc1_4_r16.c : Regenerated.
2082*181254a7Smrg	* generated/minloc1_4_r4.c : Regenerated.
2083*181254a7Smrg	* generated/minloc1_4_r8.c : Regenerated.
2084*181254a7Smrg	* generated/minloc1_4_s1.c : Regenerated.
2085*181254a7Smrg	* generated/minloc1_4_s4.c : Regenerated.
2086*181254a7Smrg	* generated/minloc1_8_i1.c : Regenerated.
2087*181254a7Smrg	* generated/minloc1_8_i16.c : Regenerated.
2088*181254a7Smrg	* generated/minloc1_8_i2.c : Regenerated.
2089*181254a7Smrg	* generated/minloc1_8_i4.c : Regenerated.
2090*181254a7Smrg	* generated/minloc1_8_i8.c : Regenerated.
2091*181254a7Smrg	* generated/minloc1_8_r10.c : Regenerated.
2092*181254a7Smrg	* generated/minloc1_8_r16.c : Regenerated.
2093*181254a7Smrg	* generated/minloc1_8_r4.c : Regenerated.
2094*181254a7Smrg	* generated/minloc1_8_r8.c : Regenerated.
2095*181254a7Smrg	* generated/minloc1_8_s1.c : Regenerated.
2096*181254a7Smrg	* generated/minloc1_8_s4.c : Regenerated.
2097*181254a7Smrg	* generated/minval1_s1.c : Regenerated.
2098*181254a7Smrg	* generated/minval1_s4.c : Regenerated.
2099*181254a7Smrg	* generated/minval_i1.c : Regenerated.
2100*181254a7Smrg	* generated/minval_i16.c : Regenerated.
2101*181254a7Smrg	* generated/minval_i2.c : Regenerated.
2102*181254a7Smrg	* generated/minval_i4.c : Regenerated.
2103*181254a7Smrg	* generated/minval_i8.c : Regenerated.
2104*181254a7Smrg	* generated/minval_r10.c : Regenerated.
2105*181254a7Smrg	* generated/minval_r16.c : Regenerated.
2106*181254a7Smrg	* generated/minval_r4.c : Regenerated.
2107*181254a7Smrg	* generated/minval_r8.c : Regenerated.
2108*181254a7Smrg	* generated/norm2_r10.c : Regenerated.
2109*181254a7Smrg	* generated/norm2_r16.c : Regenerated.
2110*181254a7Smrg	* generated/norm2_r4.c : Regenerated.
2111*181254a7Smrg	* generated/norm2_r8.c : Regenerated.
2112*181254a7Smrg	* generated/parity_l1.c : Regenerated.
2113*181254a7Smrg	* generated/parity_l16.c : Regenerated.
2114*181254a7Smrg	* generated/parity_l2.c : Regenerated.
2115*181254a7Smrg	* generated/parity_l4.c : Regenerated.
2116*181254a7Smrg	* generated/parity_l8.c : Regenerated.
2117*181254a7Smrg	* generated/product_c10.c : Regenerated.
2118*181254a7Smrg	* generated/product_c16.c : Regenerated.
2119*181254a7Smrg	* generated/product_c4.c : Regenerated.
2120*181254a7Smrg	* generated/product_c8.c : Regenerated.
2121*181254a7Smrg	* generated/product_i1.c : Regenerated.
2122*181254a7Smrg	* generated/product_i16.c : Regenerated.
2123*181254a7Smrg	* generated/product_i2.c : Regenerated.
2124*181254a7Smrg	* generated/product_i4.c : Regenerated.
2125*181254a7Smrg	* generated/product_i8.c : Regenerated.
2126*181254a7Smrg	* generated/product_r10.c : Regenerated.
2127*181254a7Smrg	* generated/product_r16.c : Regenerated.
2128*181254a7Smrg	* generated/product_r4.c : Regenerated.
2129*181254a7Smrg	* generated/product_r8.c : Regenerated.
2130*181254a7Smrg	* generated/reshape_c10.c : Regenerated.
2131*181254a7Smrg	* generated/reshape_c16.c : Regenerated.
2132*181254a7Smrg	* generated/reshape_c4.c : Regenerated.
2133*181254a7Smrg	* generated/reshape_c8.c : Regenerated.
2134*181254a7Smrg	* generated/reshape_i16.c : Regenerated.
2135*181254a7Smrg	* generated/reshape_i4.c : Regenerated.
2136*181254a7Smrg	* generated/reshape_i8.c : Regenerated.
2137*181254a7Smrg	* generated/reshape_r10.c : Regenerated.
2138*181254a7Smrg	* generated/reshape_r16.c : Regenerated.
2139*181254a7Smrg	* generated/reshape_r4.c : Regenerated.
2140*181254a7Smrg	* generated/reshape_r8.c : Regenerated.
2141*181254a7Smrg	* generated/spread_c10.c : Regenerated.
2142*181254a7Smrg	* generated/spread_c16.c : Regenerated.
2143*181254a7Smrg	* generated/spread_c4.c : Regenerated.
2144*181254a7Smrg	* generated/spread_c8.c : Regenerated.
2145*181254a7Smrg	* generated/spread_i1.c : Regenerated.
2146*181254a7Smrg	* generated/spread_i16.c : Regenerated.
2147*181254a7Smrg	* generated/spread_i2.c : Regenerated.
2148*181254a7Smrg	* generated/spread_i4.c : Regenerated.
2149*181254a7Smrg	* generated/spread_i8.c : Regenerated.
2150*181254a7Smrg	* generated/spread_r10.c : Regenerated.
2151*181254a7Smrg	* generated/spread_r16.c : Regenerated.
2152*181254a7Smrg	* generated/spread_r4.c : Regenerated.
2153*181254a7Smrg	* generated/spread_r8.c : Regenerated.
2154*181254a7Smrg	* generated/sum_c10.c : Regenerated.
2155*181254a7Smrg	* generated/sum_c16.c : Regenerated.
2156*181254a7Smrg	* generated/sum_c4.c : Regenerated.
2157*181254a7Smrg	* generated/sum_c8.c : Regenerated.
2158*181254a7Smrg	* generated/sum_i1.c : Regenerated.
2159*181254a7Smrg	* generated/sum_i16.c : Regenerated.
2160*181254a7Smrg	* generated/sum_i2.c : Regenerated.
2161*181254a7Smrg	* generated/sum_i4.c : Regenerated.
2162*181254a7Smrg	* generated/sum_i8.c : Regenerated.
2163*181254a7Smrg	* generated/sum_r10.c : Regenerated.
2164*181254a7Smrg	* generated/sum_r16.c : Regenerated.
2165*181254a7Smrg	* generated/sum_r4.c : Regenerated.
2166*181254a7Smrg	* generated/sum_r8.c : Regenerated.
2167*181254a7Smrg
2168*181254a7Smrg2018-01-07  Janne Blomqvist  <jb@gcc.gnu.org>
2169*181254a7Smrg
2170*181254a7Smrg	PR fortran/78534
2171*181254a7Smrg	PR fortran/83704
2172*181254a7Smrg	* io/fbuf.c (fbuf_init): Use size_t instead of int for length.
2173*181254a7Smrg	(fbuf_debug): Convert debug output to unsigned long.
2174*181254a7Smrg	(fbuf_reset): Use ptrdiff_t for return value.
2175*181254a7Smrg	(fbuf_alloc): Use size_t for length argument.
2176*181254a7Smrg	(fbuf_flush): Handle large buffers.
2177*181254a7Smrg	(fbuf_flush_list): Likewise.
2178*181254a7Smrg	(fbuf_seek): Use ptrdiff_t for offset and return value.
2179*181254a7Smrg	(fbuf_read): Use size_t for length argument.
2180*181254a7Smrg	(fbuf_getc_refill): Use size_t to match fbuf_read.
2181*181254a7Smrg	* io/fbuf.h (struct fbuf): Use size_t for lengths.
2182*181254a7Smrg	(fbuf_init): Use size_t instead of int for length.
2183*181254a7Smrg	(fbuf_reset): Use ptrdiff_t for return value.
2184*181254a7Smrg	(fbuf_alloc): Use size_t for length argument.
2185*181254a7Smrg	(fbuf_seek): Use ptrdiff_t for offset and return value.
2186*181254a7Smrg	(fbuf_read): Use size_t for length argument.
2187*181254a7Smrg	* io/io.h (read_block_form): Likewise.
2188*181254a7Smrg	(read_block_form4): Likewise.
2189*181254a7Smrg	(write_block): Likewise.
2190*181254a7Smrg	(read_a): Likewise.
2191*181254a7Smrg	(read_a_char4): Likewise.
2192*181254a7Smrg	(read_x): Likewise.
2193*181254a7Smrg	(write_a): Likewise.
2194*181254a7Smrg	(write_a_char4): Likewise.
2195*181254a7Smrg	* io/list_read.c (list_formatted_read_scalar): Use size_t to
2196*181254a7Smrg	handle large buffers.
2197*181254a7Smrg	* io/read.c (read_l): Likewise.
2198*181254a7Smrg	(read_utf8): Likewise.
2199*181254a7Smrg	(read_utf8_char1): Likewise.
2200*181254a7Smrg	(read_default_char1): Likewise.
2201*181254a7Smrg	(read_utf8_char4): Likewise.
2202*181254a7Smrg	(read_default_char4): Likewise.
2203*181254a7Smrg	(read_a): Likewise.
2204*181254a7Smrg	(read_a_char4): Likewise.
2205*181254a7Smrg	(eat_leading_spaces): Likewise.
2206*181254a7Smrg	(next_char): Likewise.
2207*181254a7Smrg	(read_decimal): Likewise.
2208*181254a7Smrg	(read_radix): Likewise.
2209*181254a7Smrg	(read_f): Likewise.
2210*181254a7Smrg	(read_x): Likewise.
2211*181254a7Smrg	* io/transfer.c (read_sf_internal): Likewise.
2212*181254a7Smrg	(read_sf): Likewise.
2213*181254a7Smrg	(read_block_form): Likewise.
2214*181254a7Smrg	(read_block_form4): Likewise.
2215*181254a7Smrg	(write_block): Likewise.
2216*181254a7Smrg	(formatted_transfer_scalar_write): Likewise.
2217*181254a7Smrg	(next_record_w): Likewise.
2218*181254a7Smrg	* io/unix.c (mem_alloc_r): Likewise.
2219*181254a7Smrg	(mem_alloc_r4): Likewise.
2220*181254a7Smrg	(mem_alloc_w): Likewise.
2221*181254a7Smrg	(mem_alloc_w4): Likewise.
2222*181254a7Smrg	(mem_read): Likewise.
2223*181254a7Smrg	(mem_read4): Likewise.
2224*181254a7Smrg	(mem_write): Likewise.
2225*181254a7Smrg	(mem_write4): Likewise.
2226*181254a7Smrg	(open_internal): Likewise.
2227*181254a7Smrg	(open_internal4): Likewise.
2228*181254a7Smrg	* io/unix.h (open_internal): Likewise.
2229*181254a7Smrg	(open_internal4): Likewise.
2230*181254a7Smrg	(mem_alloc_w): Likewise.
2231*181254a7Smrg	(mem_alloc_r): Likewise.
2232*181254a7Smrg	(mem_alloc_w4): Likewise.
2233*181254a7Smrg	(mem_alloc_r4): Likewise.
2234*181254a7Smrg	* io/write.c (write_check_cc): Likewise.
2235*181254a7Smrg	(write_cc): Likewise.
2236*181254a7Smrg	(write_a): Likewise.
2237*181254a7Smrg	(write_a_char4): Likewise.
2238*181254a7Smrg
2239*181254a7Smrg2018-01-06  Janne Blomqvist  <jb@gcc.gnu.org>
2240*181254a7Smrg
2241*181254a7Smrg	* io/write.c (namelist_write): Remove unused variable "i".
2242*181254a7Smrg
2243*181254a7Smrg2018-01-06  Dominique d'Humieres  <dominiq@lps.ens.fr>
2244*181254a7Smrg	    Janne Blomqvist  <jb@gcc.gnu.org>
2245*181254a7Smrg
2246*181254a7Smrg	PR fortran/83704
2247*181254a7Smrg	* io/write.c (write_character): Use size_t instead of int for
2248*181254a7Smrg	length.
2249*181254a7Smrg
2250*181254a7Smrg2018-01-05  Janne Blomqvist  <jb@gcc.gnu.org>
2251*181254a7Smrg
2252*181254a7Smrg	PR fortran/78534
2253*181254a7Smrg	* intrinsics/args.c (getarg_i4): Use gfc_charlen_type.
2254*181254a7Smrg	(get_command_argument_i4): Likewise.
2255*181254a7Smrg	(get_command_i4): Likewise.
2256*181254a7Smrg	* intrinsics/chmod.c (chmod_internal): Likewise.
2257*181254a7Smrg	* intrinsics/env.c (get_environment_variable_i4): Likewise.
2258*181254a7Smrg	* intrinsics/extends_type_of.c (struct vtype): Use size_t for size
2259*181254a7Smrg	member.
2260*181254a7Smrg	* intrinsics/gerror.c (gerror): Use gfc_charlen_type.
2261*181254a7Smrg	* intrinsics/getlog.c (getlog): Likewise.
2262*181254a7Smrg	* intrinsics/hostnm.c (hostnm_0): Likewise.
2263*181254a7Smrg	* intrinsics/string_intrinsics_inc.c (string_len_trim): Rework to
2264*181254a7Smrg	work if gfc_charlen_type is unsigned.
2265*181254a7Smrg	(string_scan): Likewise.
2266*181254a7Smrg	* io/transfer.c (transfer_character): Modify prototype.
2267*181254a7Smrg	(transfer_character_write): Likewise.
2268*181254a7Smrg	(transfer_character_wide): Likewise.
2269*181254a7Smrg	(transfer_character_wide_write): Likewise.
2270*181254a7Smrg	(transfer_array): Typecast to avoid signed-unsigned comparison.
2271*181254a7Smrg	* io/unit.c (is_trim_ok): Use gfc_charlen_type.
2272*181254a7Smrg	* io/write.c (namelist_write): Likewise.
2273*181254a7Smrg	* libgfortran.h (gfc_charlen_type): Change typedef to size_t.
2274*181254a7Smrg
2275*181254a7Smrg2018-01-03  Jakub Jelinek  <jakub@redhat.com>
2276*181254a7Smrg
2277*181254a7Smrg	Update copyright years.
2278*181254a7Smrg
2279*181254a7Smrg2018-01-02  Janne Blomqvist  <jb@gcc.gnu.org>
2280*181254a7Smrg
2281*181254a7Smrg	PR libgfortran/83649
2282*181254a7Smrg	* io/unix.c (MAX_CHUNK): New define.
2283*181254a7Smrg	(raw_read): For reads larger than MAX_CHUNK, loop.
2284*181254a7Smrg	(raw_write): Write no more than MAX_CHUNK bytes per iteration.
2285*181254a7Smrg
2286*181254a7SmrgCopyright (C) 2018 Free Software Foundation, Inc.
2287*181254a7Smrg
2288*181254a7SmrgCopying and distribution of this file, with or without modification,
2289*181254a7Smrgare permitted in any medium without royalty provided the copyright
2290*181254a7Smrgnotice and this notice are preserved.
2291