1 2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
3 * libgfortran.h (stop_string): Use size_t for character length.
4 * runtime/stop.c (stop_string): Likewise.
5 (error_stop_string): Likewise.
6 (stop_numeric): Use int for exit code.
7 (error_stop_numeric): Likewise.
8 * caf/libcaf.h: Remove stdint.h include.
9 (_gfortran_caf_register): Use size_t for character length.
10 (_gfortran_caf_deregister): Likewise.
11 (_gfortran_caf_sync_all): Likewise.
12 (_gfortran_caf_sync_memory): Likewise.
13 (_gfortran_caf_sync_images): Likewise.
14 (_gfortran_caf_stop_numeric): Use int for exit code.
15 (_gfortran_caf_stop_str): Use size_t for character length.
16 (_gfortran_caf_error_stop_str): Likewise.
17 (_gfortran_caf_error_stop): Use int for exit code.
18 (_gfortran_caf_co_broadcast): Use size_t for character length.
19 (_gfortran_caf_co_sum): Likewise.
20 (_gfortran_caf_co_min): Likewise.
21 (_gfortran_caf_co_max): Likewise.
22 (_gfortran_caf_co_reduce): Likewise.
23 (_gfortran_caf_lock): Likewise.
24 (_gfortran_caf_unlock): Likewise.
25 (_gfortran_caf_event_post): Likewise.
26 (_gfortran_caf_event_wait): Likewise.
27 * caf/mpi.c (_gfortran_caf_register): Update implementation to
29 (_gfortran_caf_deregister): Likewise.
30 (_gfortran_caf_sync_all): Likewise.
31 (_gfortran_caf_sync_images): Likewise.
32 (_gfortran_caf_error_stop_str): Likewise.
33 (_gfortran_caf_error_stop): Likewise.
34 * caf/single.c (caf_internal_error): Likewise.
35 (_gfortran_caf_register): Likewise.
36 (_gfortran_caf_deregister): Likewise.
37 (_gfortran_caf_sync_all): Likewise.
38 (_gfortran_caf_sync_memory): Likewise.
39 (_gfortran_caf_sync_images): Likewise.
40 (_gfortran_caf_stop_numeric): Likewise.
41 (_gfortran_caf_stop_str): Likewise.
42 (_gfortran_caf_error_stop_str): Likewise.
43 (_gfortran_caf_error_stop): Likewise.
44 (_gfortran_caf_co_broadcast): Likewise.
45 (_gfortran_caf_co_sum): Likewise.
46 (_gfortran_caf_co_min): Likewise.
47 (_gfortran_caf_co_max): Likewise.
48 (_gfortran_caf_co_reduce): Likewise.
49 (_gfortran_caf_event_post): Likewise.
50 (_gfortran_caf_event_wait): Likewise.
51 (_gfortran_caf_lock): Likewise.
52 (_gfortran_caf_unlock): Likewise.
54 2018-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
56 * caf/libcaf.h: Add type parameters to the caf_*_by_ref prototypes.
57 * caf/single.c (get_for_ref): Simplifications and now respecting
59 (_gfortran_caf_get_by_ref): Added source type handing to get_for_ref().
60 (send_by_ref): Simplifications and respecting the dst_type now.
61 (_gfortran_caf_send_by_ref): Added destination type hand over to
63 (_gfortran_caf_sendget_by_ref): Added general support and fixed stack
64 corruption. The function is now really usable.
66 2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
69 * configure: Regenerate.
71 2018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
74 * io/transfer.c (finalize_transfer): After completng an internal unit
75 I/O operation, clear internal_unit_kind.
77 2018-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
79 * libgfortran.h (GFC_ARRAY_DESCRIPTOR): Remove dimension
80 of descriptor to use vaiable members for dim.
81 Change usage of GFC_ARRAY_DESCRIPTOR accordingly.
82 (GFC_FILL_ARRAY_DESCRIPTOR): New macro.
83 (gfc_full_array_i4): New type.
84 * intrinsics/date_and_time.c (secnds): Use sizeof
85 (gfc_array_i4) + sizeof (descriptor_dimension) for memory
87 * intrinsics/reshape_generic.c: Use GFC_FULL_ARRAY_DESCRIPTOR.
88 * io/format.c: Use sizeof (gfc_array_i4) + sizeof
89 (descriptor_dimension) for memoy allocation.
90 * io/list_read.c (list_formatted_read_scalar): Use
91 gfc_full_array_i4 for variable.
92 (nml_read_obj): Likewise.
93 * io/write.c (list_formatted_write_scalar): Likewise.
94 (nml_write_obj): Likewise.
95 * m4/reshape.m4: Use GFC_FULL_ARRAY_DESCRIPTOR.
96 * generated/reshape_c10.c: Regenerated.
97 * generated/reshape_c16.c: Regenerated.
98 * generated/reshape_c4.c: Regenerated.
99 * generated/reshape_c8.c: Regenerated.
100 * generated/reshape_i16.c: Regenerated.
101 * generated/reshape_i4.c: Regenerated.
102 * generated/reshape_i8.c: Regenerated.
103 * generated/reshape_r10.c: Regenerated.
104 * generated/reshape_r16.c: Regenerated.
105 * generated/reshape_r4.c: Regenerated.
106 * generated/reshape_r8.c: Regenerated.
108 2018-01-31 Janne Blomqvist <jb@gcc.gnu.org>
110 * generated/cshift1_16.c (cshift1): Regenerated.
111 * generated/cshift1_4.c (cshift1): Regenerated.
112 * generated/cshift1_8.c (cshift1): Regenerated.
113 * generated/eoshift1_16.c (eoshift1): Regenerated.
114 * generated/eoshift1_4.c (eoshift1): Regenerated.
115 * generated/eoshift1_8.c (eoshift1): Regenerated.
116 * generated/eoshift3_16.c (eoshift3): Regenerated.
117 * generated/eoshift3_4.c (eoshift3): Regenerated.
118 * generated/eoshift3_8.c (eoshift3): Regenerated.
119 * generated/in_pack_c10.c (internal_pack_c10): Regenerated.
120 * generated/in_pack_c16.c (internal_pack_c16): Regenerated.
121 * generated/in_pack_c4.c (internal_pack_c4): Regenerated.
122 * generated/in_pack_c8.c (internal_pack_c8): Regenerated.
123 * generated/in_pack_i1.c (internal_pack_1): Regenerated.
124 * generated/in_pack_i16.c (internal_pack_16): Regenerated.
125 * generated/in_pack_i2.c (internal_pack_2): Regenerated.
126 * generated/in_pack_i4.c (internal_pack_4): Regenerated.
127 * generated/in_pack_i8.c (internal_pack_8): Regenerated.
128 * generated/in_pack_r10.c (internal_pack_r10): Regenerated.
129 * generated/in_pack_r16.c (internal_pack_r16): Regenerated.
130 * generated/in_pack_r4.c (internal_pack_r4): Regenerated.
131 * generated/in_pack_r8.c (internal_pack_r8): Regenerated.
132 * generated/in_unpack_c10.c (internal_unpack_c10): Regenerated.
133 * generated/in_unpack_c16.c (internal_unpack_c16): Regenerated.
134 * generated/in_unpack_c4.c (internal_unpack_c4): Regenerated.
135 * generated/in_unpack_c8.c (internal_unpack_c8): Regenerated.
136 * generated/in_unpack_i1.c (internal_unpack_1): Regenerated.
137 * generated/in_unpack_i16.c (internal_unpack_16): Regenerated.
138 * generated/in_unpack_i2.c (internal_unpack_2): Regenerated.
139 * generated/in_unpack_i4.c (internal_unpack_4): Regenerated.
140 * generated/in_unpack_i8.c (internal_unpack_8): Regenerated.
141 * generated/in_unpack_r10.c (internal_unpack_r10): Regenerated.
142 * generated/in_unpack_r16.c (internal_unpack_r16): Regenerated.
143 * generated/in_unpack_r4.c (internal_unpack_r4): Regenerated.
144 * generated/in_unpack_r8.c (internal_unpack_r8): Regenerated.
145 * generated/reshape_c10.c (reshape_c10): Regenerated.
146 * generated/reshape_c16.c (reshape_c16): Regenerated.
147 * generated/reshape_c4.c (reshape_c4): Regenerated.
148 * generated/reshape_c8.c (reshape_c8): Regenerated.
149 * generated/reshape_i16.c (reshape_16): Regenerated.
150 * generated/reshape_i4.c (reshape_4): Regenerated.
151 * generated/reshape_i8.c (reshape_8): Regenerated.
152 * generated/reshape_r10.c (reshape_r10): Regenerated.
153 * generated/reshape_r16.c (reshape_r16): Regenerated.
154 * generated/reshape_r4.c (reshape_r4): Regenerated.
155 * generated/reshape_r8.c (reshape_r8): Regenerated.
156 * generated/shape_i1.c (shape_1): Regenerated.
157 * generated/shape_i16.c (shape_16): Regenerated.
158 * generated/shape_i2.c (shape_2): Regenerated.
159 * generated/shape_i4.c (shape_4): Regenerated.
160 * generated/shape_i8.c (shape_8): Regenerated.
161 * generated/spread_c10.c (spread_scalar_c10): Regenerated.
162 * generated/spread_c16.c (spread_scalar_c16): Regenerated.
163 * generated/spread_c4.c (spread_scalar_c4): Regenerated.
164 * generated/spread_c8.c (spread_scalar_c8): Regenerated.
165 * generated/spread_i1.c (spread_scalar_i1): Regenerated.
166 * generated/spread_i16.c (spread_scalar_i16): Regenerated.
167 * generated/spread_i2.c (spread_scalar_i2): Regenerated.
168 * generated/spread_i4.c (spread_scalar_i4): Regenerated.
169 * generated/spread_i8.c (spread_scalar_i8): Regenerated.
170 * generated/spread_r10.c (spread_scalar_r10): Regenerated.
171 * generated/spread_r16.c (spread_scalar_r16): Regenerated.
172 * generated/spread_r4.c (spread_scalar_r4): Regenerated.
173 * generated/spread_r8.c (spread_scalar_r8): Regenerated.
174 * intrinsics/random.c (jump): Use size_t for array index in loop.
175 (getosrandom): Likewise.
176 (arandom_r4): Make n an index_type.
177 (arandom_r8): Likewise.
178 (arandom_r10): Likewise.
179 (arandom_r16): Likewise.
180 (scramble_seed): Use size_t for array index in loop.
181 * m4/cshift1.m4: Make i an index_type.
182 * m4/eoshift1.m4: Likewise.
183 * m4/eoshift3.m4: Likewise.
184 * m4/in_pack.m4: Make n an index_type.
185 * m4/in_unpack.m4: Likewise.
186 * m4/reshape.m4: Make n and dim index_type's.
187 * m4/shape.m4: Make n an index_type.
188 * m4/spread.m4: Likewise, use index_type argument rather than
190 * runtime/bounds.c (bounds_ifunction_return): Make n an
192 * runtime/in_pack_generic.c (internal_pack): Likewise.
193 * runtime/in_unpack_generic.c (internal_unpack): Make n and size
196 2018-01-30 Thomas Koenig <tkoenig@gcc.gnu.org>
199 * libgfortran.h: Remove GFC_DTYPE_DERIVED_1, GFC_DTYPE_DERIVED_2,
200 GFC_DTYPE_DERIVED_4, GFC_DTYPE_DERIVED_8 and GFC_DTYPE_DERIVED_16.
201 * m4/cshift1.m4: Remove GFC_DTYPE_DERIVED_1.
202 * generated/cshift1_16.c: Regenerated.
203 * generated/cshift1_4.c: Regenerated.
204 * generated/cshift1_8.c: Regenerated.
205 * intrinsics/cshift0.c: Remove GFC_DTYPE_DERIVED_1.
206 * intrinsics/pack_generic.c (pack): Move handling of other types
207 into separate switch statement.
208 * intrinsics/spread_generic.c (spread): Likewise.
209 (spread_scalar): Likewise.
210 * intrinsics/unpack_generic.c (unpack1): Likewise.
212 * runtime/in_pack_generic.c (internal_pack): Likewise.
213 * runtime/in_unpack_generic.c (internal_unpack): Likewise.
215 2018-01-25 Paul Thomas <pault@gcc.gnu.org>
218 * caf/single.c (_gfortran_caf_failed_images): Access the 'type'
219 and 'elem_len' fields of the dtype instead of the shifts.
220 (_gfortran_caf_stopped_images): Likewise.
221 * intrinsics/associated.c (associated): Compare the 'type' and
222 'elem_len' fields instead of the dtype.
223 * caf/date_and_time.c : Access the dtype fields rather using
225 * io/transfer.c (transfer_array ): Comment on item count.
226 (set_nml_var,st_set_nml_var): Change dtype type and use fields.
227 (st_set_nml_dtio_var): Likewise.
228 * libgfortran.h : Change definition of GFC_ARRAY_DESCRIPTOR and
229 add a typedef for the dtype_type. Change the GFC_DTYPE_* macros
230 to access the dtype fields.
232 2018-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
235 * m4/iparm.m4: Add back_arg macro if in minloc or maxloc.
236 * m4/iforeach-s.m4: Add optional argument back with back_arg
237 macro. Improve m4 quoting. If HAVE_BACK_ARG is defined, assert
238 that back is non-true.
239 * m4/iforeach.m4: Likewise.
240 * m4/ifunction-s.m4: Likewise.
241 * m4/ifunction.m4: Likewise.
242 * m4/maxloc0.m4: Include assert.h
243 * m4/minloc0.m4: Likewise.
244 * m4/maxloc0s.m4: #define HAVE_BACK_ARG.
245 * m4/minloc0s.m4: Likewise.
246 * m4/maxloc1s.m4: Likewise.
247 * m4/minloc1s.m4: Likewise.
248 * m4/maxloc1.m4: Include assert.h, #define HAVE_BACK_ARG.
249 * m4/minloc1.m4: Likewise.
250 * m4/maxloc2s.m4: Add assert.h, add back_arg, assert that
252 * m4/minloc2s.m4: Likewise.
253 * generated/iall_i1.c: Regenerated.
254 * generated/iall_i16.c: Regenerated.
255 * generated/iall_i2.c: Regenerated.
256 * generated/iall_i4.c: Regenerated.
257 * generated/iall_i8.c: Regenerated.
258 * generated/iany_i1.c: Regenerated.
259 * generated/iany_i16.c: Regenerated.
260 * generated/iany_i2.c: Regenerated.
261 * generated/iany_i4.c: Regenerated.
262 * generated/iany_i8.c: Regenerated.
263 * generated/iparity_i1.c: Regenerated.
264 * generated/iparity_i16.c: Regenerated.
265 * generated/iparity_i2.c: Regenerated.
266 * generated/iparity_i4.c: Regenerated.
267 * generated/iparity_i8.c: Regenerated.
268 * generated/maxloc0_16_i1.c: Regenerated.
269 * generated/maxloc0_16_i16.c: Regenerated.
270 * generated/maxloc0_16_i2.c: Regenerated.
271 * generated/maxloc0_16_i4.c: Regenerated.
272 * generated/maxloc0_16_i8.c: Regenerated.
273 * generated/maxloc0_16_r10.c: Regenerated.
274 * generated/maxloc0_16_r16.c: Regenerated.
275 * generated/maxloc0_16_r4.c: Regenerated.
276 * generated/maxloc0_16_r8.c: Regenerated.
277 * generated/maxloc0_16_s1.c: Regenerated.
278 * generated/maxloc0_16_s4.c: Regenerated.
279 * generated/maxloc0_4_i1.c: Regenerated.
280 * generated/maxloc0_4_i16.c: Regenerated.
281 * generated/maxloc0_4_i2.c: Regenerated.
282 * generated/maxloc0_4_i4.c: Regenerated.
283 * generated/maxloc0_4_i8.c: Regenerated.
284 * generated/maxloc0_4_r10.c: Regenerated.
285 * generated/maxloc0_4_r16.c: Regenerated.
286 * generated/maxloc0_4_r4.c: Regenerated.
287 * generated/maxloc0_4_r8.c: Regenerated.
288 * generated/maxloc0_4_s1.c: Regenerated.
289 * generated/maxloc0_4_s4.c: Regenerated.
290 * generated/maxloc0_8_i1.c: Regenerated.
291 * generated/maxloc0_8_i16.c: Regenerated.
292 * generated/maxloc0_8_i2.c: Regenerated.
293 * generated/maxloc0_8_i4.c: Regenerated.
294 * generated/maxloc0_8_i8.c: Regenerated.
295 * generated/maxloc0_8_r10.c: Regenerated.
296 * generated/maxloc0_8_r16.c: Regenerated.
297 * generated/maxloc0_8_r4.c: Regenerated.
298 * generated/maxloc0_8_r8.c: Regenerated.
299 * generated/maxloc0_8_s1.c: Regenerated.
300 * generated/maxloc0_8_s4.c: Regenerated.
301 * generated/maxloc1_16_i1.c: Regenerated.
302 * generated/maxloc1_16_i16.c: Regenerated.
303 * generated/maxloc1_16_i2.c: Regenerated.
304 * generated/maxloc1_16_i4.c: Regenerated.
305 * generated/maxloc1_16_i8.c: Regenerated.
306 * generated/maxloc1_16_r10.c: Regenerated.
307 * generated/maxloc1_16_r16.c: Regenerated.
308 * generated/maxloc1_16_r4.c: Regenerated.
309 * generated/maxloc1_16_r8.c: Regenerated.
310 * generated/maxloc1_16_s1.c: Regenerated.
311 * generated/maxloc1_16_s4.c: Regenerated.
312 * generated/maxloc1_4_i1.c: Regenerated.
313 * generated/maxloc1_4_i16.c: Regenerated.
314 * generated/maxloc1_4_i2.c: Regenerated.
315 * generated/maxloc1_4_i4.c: Regenerated.
316 * generated/maxloc1_4_i8.c: Regenerated.
317 * generated/maxloc1_4_r10.c: Regenerated.
318 * generated/maxloc1_4_r16.c: Regenerated.
319 * generated/maxloc1_4_r4.c: Regenerated.
320 * generated/maxloc1_4_r8.c: Regenerated.
321 * generated/maxloc1_4_s1.c: Regenerated.
322 * generated/maxloc1_4_s4.c: Regenerated.
323 * generated/maxloc1_8_i1.c: Regenerated.
324 * generated/maxloc1_8_i16.c: Regenerated.
325 * generated/maxloc1_8_i2.c: Regenerated.
326 * generated/maxloc1_8_i4.c: Regenerated.
327 * generated/maxloc1_8_i8.c: Regenerated.
328 * generated/maxloc1_8_r10.c: Regenerated.
329 * generated/maxloc1_8_r16.c: Regenerated.
330 * generated/maxloc1_8_r4.c: Regenerated.
331 * generated/maxloc1_8_r8.c: Regenerated.
332 * generated/maxloc1_8_s1.c: Regenerated.
333 * generated/maxloc1_8_s4.c: Regenerated.
334 * generated/maxval_i1.c: Regenerated.
335 * generated/maxval_i16.c: Regenerated.
336 * generated/maxval_i2.c: Regenerated.
337 * generated/maxval_i4.c: Regenerated.
338 * generated/maxval_i8.c: Regenerated.
339 * generated/maxval_r10.c: Regenerated.
340 * generated/maxval_r16.c: Regenerated.
341 * generated/maxval_r4.c: Regenerated.
342 * generated/maxval_r8.c: Regenerated.
343 * generated/minloc0_16_i1.c: Regenerated.
344 * generated/minloc0_16_i16.c: Regenerated.
345 * generated/minloc0_16_i2.c: Regenerated.
346 * generated/minloc0_16_i4.c: Regenerated.
347 * generated/minloc0_16_i8.c: Regenerated.
348 * generated/minloc0_16_r10.c: Regenerated.
349 * generated/minloc0_16_r16.c: Regenerated.
350 * generated/minloc0_16_r4.c: Regenerated.
351 * generated/minloc0_16_r8.c: Regenerated.
352 * generated/minloc0_16_s1.c: Regenerated.
353 * generated/minloc0_16_s4.c: Regenerated.
354 * generated/minloc0_4_i1.c: Regenerated.
355 * generated/minloc0_4_i16.c: Regenerated.
356 * generated/minloc0_4_i2.c: Regenerated.
357 * generated/minloc0_4_i4.c: Regenerated.
358 * generated/minloc0_4_i8.c: Regenerated.
359 * generated/minloc0_4_r10.c: Regenerated.
360 * generated/minloc0_4_r16.c: Regenerated.
361 * generated/minloc0_4_r4.c: Regenerated.
362 * generated/minloc0_4_r8.c: Regenerated.
363 * generated/minloc0_4_s1.c: Regenerated.
364 * generated/minloc0_4_s4.c: Regenerated.
365 * generated/minloc0_8_i1.c: Regenerated.
366 * generated/minloc0_8_i16.c: Regenerated.
367 * generated/minloc0_8_i2.c: Regenerated.
368 * generated/minloc0_8_i4.c: Regenerated.
369 * generated/minloc0_8_i8.c: Regenerated.
370 * generated/minloc0_8_r10.c: Regenerated.
371 * generated/minloc0_8_r16.c: Regenerated.
372 * generated/minloc0_8_r4.c: Regenerated.
373 * generated/minloc0_8_r8.c: Regenerated.
374 * generated/minloc0_8_s1.c: Regenerated.
375 * generated/minloc0_8_s4.c: Regenerated.
376 * generated/minloc1_16_i1.c: Regenerated.
377 * generated/minloc1_16_i16.c: Regenerated.
378 * generated/minloc1_16_i2.c: Regenerated.
379 * generated/minloc1_16_i4.c: Regenerated.
380 * generated/minloc1_16_i8.c: Regenerated.
381 * generated/minloc1_16_r10.c: Regenerated.
382 * generated/minloc1_16_r16.c: Regenerated.
383 * generated/minloc1_16_r4.c: Regenerated.
384 * generated/minloc1_16_r8.c: Regenerated.
385 * generated/minloc1_16_s1.c: Regenerated.
386 * generated/minloc1_16_s4.c: Regenerated.
387 * generated/minloc1_4_i1.c: Regenerated.
388 * generated/minloc1_4_i16.c: Regenerated.
389 * generated/minloc1_4_i2.c: Regenerated.
390 * generated/minloc1_4_i4.c: Regenerated.
391 * generated/minloc1_4_i8.c: Regenerated.
392 * generated/minloc1_4_r10.c: Regenerated.
393 * generated/minloc1_4_r16.c: Regenerated.
394 * generated/minloc1_4_r4.c: Regenerated.
395 * generated/minloc1_4_r8.c: Regenerated.
396 * generated/minloc1_4_s1.c: Regenerated.
397 * generated/minloc1_4_s4.c: Regenerated.
398 * generated/minloc1_8_i1.c: Regenerated.
399 * generated/minloc1_8_i16.c: Regenerated.
400 * generated/minloc1_8_i2.c: Regenerated.
401 * generated/minloc1_8_i4.c: Regenerated.
402 * generated/minloc1_8_i8.c: Regenerated.
403 * generated/minloc1_8_r10.c: Regenerated.
404 * generated/minloc1_8_r16.c: Regenerated.
405 * generated/minloc1_8_r4.c: Regenerated.
406 * generated/minloc1_8_r8.c: Regenerated.
407 * generated/minloc1_8_s1.c: Regenerated.
408 * generated/minloc1_8_s4.c: Regenerated.
409 * generated/minval_i1.c: Regenerated.
410 * generated/minval_i16.c: Regenerated.
411 * generated/minval_i2.c: Regenerated.
412 * generated/minval_i4.c: Regenerated.
413 * generated/minval_i8.c: Regenerated.
414 * generated/minval_r10.c: Regenerated.
415 * generated/minval_r16.c: Regenerated.
416 * generated/minval_r4.c: Regenerated.
417 * generated/minval_r8.c: Regenerated.
418 * generated/norm2_r10.c: Regenerated.
419 * generated/norm2_r16.c: Regenerated.
420 * generated/norm2_r4.c: Regenerated.
421 * generated/norm2_r8.c: Regenerated.
422 * generated/parity_l1.c: Regenerated.
423 * generated/parity_l16.c: Regenerated.
424 * generated/parity_l2.c: Regenerated.
425 * generated/parity_l4.c: Regenerated.
426 * generated/parity_l8.c: Regenerated.
427 * generated/product_c10.c: Regenerated.
428 * generated/product_c16.c: Regenerated.
429 * generated/product_c4.c: Regenerated.
430 * generated/product_c8.c: Regenerated.
431 * generated/product_i1.c: Regenerated.
432 * generated/product_i16.c: Regenerated.
433 * generated/product_i2.c: Regenerated.
434 * generated/product_i4.c: Regenerated.
435 * generated/product_i8.c: Regenerated.
436 * generated/product_r10.c: Regenerated.
437 * generated/product_r16.c: Regenerated.
438 * generated/product_r4.c: Regenerated.
439 * generated/product_r8.c: Regenerated.
440 * generated/sum_c10.c: Regenerated.
441 * generated/sum_c16.c: Regenerated.
442 * generated/sum_c4.c: Regenerated.
443 * generated/sum_c8.c: Regenerated.
444 * generated/sum_i1.c: Regenerated.
445 * generated/sum_i16.c: Regenerated.
446 * generated/sum_i2.c: Regenerated.
447 * generated/sum_i4.c: Regenerated.
448 * generated/sum_i8.c: Regenerated.
449 * generated/sum_r10.c: Regenerated.
450 * generated/sum_r16.c: Regenerated.
451 * generated/sum_r4.c: Regenerated.
452 * generated/sum_r8.c: Regenerated.
454 2018-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
457 * write.c (select_buffer): Adjust buffer size up by 1.
459 2018-01-08 Janne Blomqvist <jb@gcc.gnu.org>
461 PR 78534, bugfix for r256322
462 * io/transfer.c (next_record_w): Use correct type for return value
463 of next_array_record.
465 2018-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
467 * libgfortran.h (GFC_DTYPE_COPY): New macro.
468 (GFC_DTYPE_COPY_SETRANK): New macro.
469 (GFC_DTYPE_IS_UNSET): New macro.
470 * intrinsics/cshift0.c (cshift0): Use new macros.
471 * intrinsics/eoshift0.c (eoshift0): Likewise.
472 * intrinsics/eoshift2.c (eoshift2): Likewise.
473 * intrinsics/move_alloc.c (move_alloc): Likewise.
474 * intrinsics/reshape_generic.c (reshape_internal): Likewise.
475 * intrinsics/spread_generic.c (spread_internal): Likewise.
476 * intrinsics/spread_generic.c (spread_scalar): Likewise.
477 * intrinsics/spread_generic.c (spread_char_scalar): Likewise.
478 * intrinsics/spread_generic.c (spread_char4_scalar): Likewise.
479 * intrinsics/unpack_generic.c (unpack0): Likewise.
480 * intrinsics/unpack_generic.c (unpack0_char): Likewise.
481 * intrinsics/unpack_generic.c (unpack0_char4): Likewise.
482 * m4/cshift1.m4 (cshift1): Likewise.
483 * m4/eoshift1.m4 (eoshift1): Likewise.
484 * m4/eoshift3.m4 (eoshift3): Likewise.
485 * m4/iforeach-s.m4: Likewise.
486 * m4/iforeach.m4: Likewise.
487 * m4/ifunction-s.m4: Likewise.
488 * m4/ifunction-s2.m4: Likewise.
489 * m4/ifunction.m4: Likewise.
490 * m4/ifunction_logical.m4: Likewise.
491 * m4/reshape.m4: Likewise.
492 * m4/spread.m4: Likewise.
493 * generated/all_l1.c : Regenerated.
494 * generated/all_l16.c : Regenerated.
495 * generated/all_l2.c : Regenerated.
496 * generated/all_l4.c : Regenerated.
497 * generated/all_l8.c : Regenerated.
498 * generated/any_l1.c : Regenerated.
499 * generated/any_l16.c : Regenerated.
500 * generated/any_l2.c : Regenerated.
501 * generated/any_l4.c : Regenerated.
502 * generated/any_l8.c : Regenerated.
503 * generated/count_16_l.c : Regenerated.
504 * generated/count_1_l.c : Regenerated.
505 * generated/count_2_l.c : Regenerated.
506 * generated/count_4_l.c : Regenerated.
507 * generated/count_8_l.c : Regenerated.
508 * generated/cshift1_16.c : Regenerated.
509 * generated/cshift1_4.c : Regenerated.
510 * generated/cshift1_8.c : Regenerated.
511 * generated/eoshift1_16.c : Regenerated.
512 * generated/eoshift1_4.c : Regenerated.
513 * generated/eoshift1_8.c : Regenerated.
514 * generated/eoshift3_16.c : Regenerated.
515 * generated/eoshift3_4.c : Regenerated.
516 * generated/eoshift3_8.c : Regenerated.
517 * generated/iall_i1.c : Regenerated.
518 * generated/iall_i16.c : Regenerated.
519 * generated/iall_i2.c : Regenerated.
520 * generated/iall_i4.c : Regenerated.
521 * generated/iall_i8.c : Regenerated.
522 * generated/iany_i1.c : Regenerated.
523 * generated/iany_i16.c : Regenerated.
524 * generated/iany_i2.c : Regenerated.
525 * generated/iany_i4.c : Regenerated.
526 * generated/iany_i8.c : Regenerated.
527 * generated/iparity_i1.c : Regenerated.
528 * generated/iparity_i16.c : Regenerated.
529 * generated/iparity_i2.c : Regenerated.
530 * generated/iparity_i4.c : Regenerated.
531 * generated/iparity_i8.c : Regenerated.
532 * generated/maxloc0_16_i1.c : Regenerated.
533 * generated/maxloc0_16_i16.c : Regenerated.
534 * generated/maxloc0_16_i2.c : Regenerated.
535 * generated/maxloc0_16_i4.c : Regenerated.
536 * generated/maxloc0_16_i8.c : Regenerated.
537 * generated/maxloc0_16_r10.c : Regenerated.
538 * generated/maxloc0_16_r16.c : Regenerated.
539 * generated/maxloc0_16_r4.c : Regenerated.
540 * generated/maxloc0_16_r8.c : Regenerated.
541 * generated/maxloc0_16_s1.c : Regenerated.
542 * generated/maxloc0_16_s4.c : Regenerated.
543 * generated/maxloc0_4_i1.c : Regenerated.
544 * generated/maxloc0_4_i16.c : Regenerated.
545 * generated/maxloc0_4_i2.c : Regenerated.
546 * generated/maxloc0_4_i4.c : Regenerated.
547 * generated/maxloc0_4_i8.c : Regenerated.
548 * generated/maxloc0_4_r10.c : Regenerated.
549 * generated/maxloc0_4_r16.c : Regenerated.
550 * generated/maxloc0_4_r4.c : Regenerated.
551 * generated/maxloc0_4_r8.c : Regenerated.
552 * generated/maxloc0_4_s1.c : Regenerated.
553 * generated/maxloc0_4_s4.c : Regenerated.
554 * generated/maxloc0_8_i1.c : Regenerated.
555 * generated/maxloc0_8_i16.c : Regenerated.
556 * generated/maxloc0_8_i2.c : Regenerated.
557 * generated/maxloc0_8_i4.c : Regenerated.
558 * generated/maxloc0_8_i8.c : Regenerated.
559 * generated/maxloc0_8_r10.c : Regenerated.
560 * generated/maxloc0_8_r16.c : Regenerated.
561 * generated/maxloc0_8_r4.c : Regenerated.
562 * generated/maxloc0_8_r8.c : Regenerated.
563 * generated/maxloc0_8_s1.c : Regenerated.
564 * generated/maxloc0_8_s4.c : Regenerated.
565 * generated/maxloc1_16_i1.c : Regenerated.
566 * generated/maxloc1_16_i16.c : Regenerated.
567 * generated/maxloc1_16_i2.c : Regenerated.
568 * generated/maxloc1_16_i4.c : Regenerated.
569 * generated/maxloc1_16_i8.c : Regenerated.
570 * generated/maxloc1_16_r10.c : Regenerated.
571 * generated/maxloc1_16_r16.c : Regenerated.
572 * generated/maxloc1_16_r4.c : Regenerated.
573 * generated/maxloc1_16_r8.c : Regenerated.
574 * generated/maxloc1_16_s1.c : Regenerated.
575 * generated/maxloc1_16_s4.c : Regenerated.
576 * generated/maxloc1_4_i1.c : Regenerated.
577 * generated/maxloc1_4_i16.c : Regenerated.
578 * generated/maxloc1_4_i2.c : Regenerated.
579 * generated/maxloc1_4_i4.c : Regenerated.
580 * generated/maxloc1_4_i8.c : Regenerated.
581 * generated/maxloc1_4_r10.c : Regenerated.
582 * generated/maxloc1_4_r16.c : Regenerated.
583 * generated/maxloc1_4_r4.c : Regenerated.
584 * generated/maxloc1_4_r8.c : Regenerated.
585 * generated/maxloc1_4_s1.c : Regenerated.
586 * generated/maxloc1_4_s4.c : Regenerated.
587 * generated/maxloc1_8_i1.c : Regenerated.
588 * generated/maxloc1_8_i16.c : Regenerated.
589 * generated/maxloc1_8_i2.c : Regenerated.
590 * generated/maxloc1_8_i4.c : Regenerated.
591 * generated/maxloc1_8_i8.c : Regenerated.
592 * generated/maxloc1_8_r10.c : Regenerated.
593 * generated/maxloc1_8_r16.c : Regenerated.
594 * generated/maxloc1_8_r4.c : Regenerated.
595 * generated/maxloc1_8_r8.c : Regenerated.
596 * generated/maxloc1_8_s1.c : Regenerated.
597 * generated/maxloc1_8_s4.c : Regenerated.
598 * generated/maxval1_s1.c : Regenerated.
599 * generated/maxval1_s4.c : Regenerated.
600 * generated/maxval_i1.c : Regenerated.
601 * generated/maxval_i16.c : Regenerated.
602 * generated/maxval_i2.c : Regenerated.
603 * generated/maxval_i4.c : Regenerated.
604 * generated/maxval_i8.c : Regenerated.
605 * generated/maxval_r10.c : Regenerated.
606 * generated/maxval_r16.c : Regenerated.
607 * generated/maxval_r4.c : Regenerated.
608 * generated/maxval_r8.c : Regenerated.
609 * generated/minloc0_16_i1.c : Regenerated.
610 * generated/minloc0_16_i16.c : Regenerated.
611 * generated/minloc0_16_i2.c : Regenerated.
612 * generated/minloc0_16_i4.c : Regenerated.
613 * generated/minloc0_16_i8.c : Regenerated.
614 * generated/minloc0_16_r10.c : Regenerated.
615 * generated/minloc0_16_r16.c : Regenerated.
616 * generated/minloc0_16_r4.c : Regenerated.
617 * generated/minloc0_16_r8.c : Regenerated.
618 * generated/minloc0_16_s1.c : Regenerated.
619 * generated/minloc0_16_s4.c : Regenerated.
620 * generated/minloc0_4_i1.c : Regenerated.
621 * generated/minloc0_4_i16.c : Regenerated.
622 * generated/minloc0_4_i2.c : Regenerated.
623 * generated/minloc0_4_i4.c : Regenerated.
624 * generated/minloc0_4_i8.c : Regenerated.
625 * generated/minloc0_4_r10.c : Regenerated.
626 * generated/minloc0_4_r16.c : Regenerated.
627 * generated/minloc0_4_r4.c : Regenerated.
628 * generated/minloc0_4_r8.c : Regenerated.
629 * generated/minloc0_4_s1.c : Regenerated.
630 * generated/minloc0_4_s4.c : Regenerated.
631 * generated/minloc0_8_i1.c : Regenerated.
632 * generated/minloc0_8_i16.c : Regenerated.
633 * generated/minloc0_8_i2.c : Regenerated.
634 * generated/minloc0_8_i4.c : Regenerated.
635 * generated/minloc0_8_i8.c : Regenerated.
636 * generated/minloc0_8_r10.c : Regenerated.
637 * generated/minloc0_8_r16.c : Regenerated.
638 * generated/minloc0_8_r4.c : Regenerated.
639 * generated/minloc0_8_r8.c : Regenerated.
640 * generated/minloc0_8_s1.c : Regenerated.
641 * generated/minloc0_8_s4.c : Regenerated.
642 * generated/minloc1_16_i1.c : Regenerated.
643 * generated/minloc1_16_i16.c : Regenerated.
644 * generated/minloc1_16_i2.c : Regenerated.
645 * generated/minloc1_16_i4.c : Regenerated.
646 * generated/minloc1_16_i8.c : Regenerated.
647 * generated/minloc1_16_r10.c : Regenerated.
648 * generated/minloc1_16_r16.c : Regenerated.
649 * generated/minloc1_16_r4.c : Regenerated.
650 * generated/minloc1_16_r8.c : Regenerated.
651 * generated/minloc1_16_s1.c : Regenerated.
652 * generated/minloc1_16_s4.c : Regenerated.
653 * generated/minloc1_4_i1.c : Regenerated.
654 * generated/minloc1_4_i16.c : Regenerated.
655 * generated/minloc1_4_i2.c : Regenerated.
656 * generated/minloc1_4_i4.c : Regenerated.
657 * generated/minloc1_4_i8.c : Regenerated.
658 * generated/minloc1_4_r10.c : Regenerated.
659 * generated/minloc1_4_r16.c : Regenerated.
660 * generated/minloc1_4_r4.c : Regenerated.
661 * generated/minloc1_4_r8.c : Regenerated.
662 * generated/minloc1_4_s1.c : Regenerated.
663 * generated/minloc1_4_s4.c : Regenerated.
664 * generated/minloc1_8_i1.c : Regenerated.
665 * generated/minloc1_8_i16.c : Regenerated.
666 * generated/minloc1_8_i2.c : Regenerated.
667 * generated/minloc1_8_i4.c : Regenerated.
668 * generated/minloc1_8_i8.c : Regenerated.
669 * generated/minloc1_8_r10.c : Regenerated.
670 * generated/minloc1_8_r16.c : Regenerated.
671 * generated/minloc1_8_r4.c : Regenerated.
672 * generated/minloc1_8_r8.c : Regenerated.
673 * generated/minloc1_8_s1.c : Regenerated.
674 * generated/minloc1_8_s4.c : Regenerated.
675 * generated/minval1_s1.c : Regenerated.
676 * generated/minval1_s4.c : Regenerated.
677 * generated/minval_i1.c : Regenerated.
678 * generated/minval_i16.c : Regenerated.
679 * generated/minval_i2.c : Regenerated.
680 * generated/minval_i4.c : Regenerated.
681 * generated/minval_i8.c : Regenerated.
682 * generated/minval_r10.c : Regenerated.
683 * generated/minval_r16.c : Regenerated.
684 * generated/minval_r4.c : Regenerated.
685 * generated/minval_r8.c : Regenerated.
686 * generated/norm2_r10.c : Regenerated.
687 * generated/norm2_r16.c : Regenerated.
688 * generated/norm2_r4.c : Regenerated.
689 * generated/norm2_r8.c : Regenerated.
690 * generated/parity_l1.c : Regenerated.
691 * generated/parity_l16.c : Regenerated.
692 * generated/parity_l2.c : Regenerated.
693 * generated/parity_l4.c : Regenerated.
694 * generated/parity_l8.c : Regenerated.
695 * generated/product_c10.c : Regenerated.
696 * generated/product_c16.c : Regenerated.
697 * generated/product_c4.c : Regenerated.
698 * generated/product_c8.c : Regenerated.
699 * generated/product_i1.c : Regenerated.
700 * generated/product_i16.c : Regenerated.
701 * generated/product_i2.c : Regenerated.
702 * generated/product_i4.c : Regenerated.
703 * generated/product_i8.c : Regenerated.
704 * generated/product_r10.c : Regenerated.
705 * generated/product_r16.c : Regenerated.
706 * generated/product_r4.c : Regenerated.
707 * generated/product_r8.c : Regenerated.
708 * generated/reshape_c10.c : Regenerated.
709 * generated/reshape_c16.c : Regenerated.
710 * generated/reshape_c4.c : Regenerated.
711 * generated/reshape_c8.c : Regenerated.
712 * generated/reshape_i16.c : Regenerated.
713 * generated/reshape_i4.c : Regenerated.
714 * generated/reshape_i8.c : Regenerated.
715 * generated/reshape_r10.c : Regenerated.
716 * generated/reshape_r16.c : Regenerated.
717 * generated/reshape_r4.c : Regenerated.
718 * generated/reshape_r8.c : Regenerated.
719 * generated/spread_c10.c : Regenerated.
720 * generated/spread_c16.c : Regenerated.
721 * generated/spread_c4.c : Regenerated.
722 * generated/spread_c8.c : Regenerated.
723 * generated/spread_i1.c : Regenerated.
724 * generated/spread_i16.c : Regenerated.
725 * generated/spread_i2.c : Regenerated.
726 * generated/spread_i4.c : Regenerated.
727 * generated/spread_i8.c : Regenerated.
728 * generated/spread_r10.c : Regenerated.
729 * generated/spread_r16.c : Regenerated.
730 * generated/spread_r4.c : Regenerated.
731 * generated/spread_r8.c : Regenerated.
732 * generated/sum_c10.c : Regenerated.
733 * generated/sum_c16.c : Regenerated.
734 * generated/sum_c4.c : Regenerated.
735 * generated/sum_c8.c : Regenerated.
736 * generated/sum_i1.c : Regenerated.
737 * generated/sum_i16.c : Regenerated.
738 * generated/sum_i2.c : Regenerated.
739 * generated/sum_i4.c : Regenerated.
740 * generated/sum_i8.c : Regenerated.
741 * generated/sum_r10.c : Regenerated.
742 * generated/sum_r16.c : Regenerated.
743 * generated/sum_r4.c : Regenerated.
744 * generated/sum_r8.c : Regenerated.
746 2018-01-07 Janne Blomqvist <jb@gcc.gnu.org>
750 * io/fbuf.c (fbuf_init): Use size_t instead of int for length.
751 (fbuf_debug): Convert debug output to unsigned long.
752 (fbuf_reset): Use ptrdiff_t for return value.
753 (fbuf_alloc): Use size_t for length argument.
754 (fbuf_flush): Handle large buffers.
755 (fbuf_flush_list): Likewise.
756 (fbuf_seek): Use ptrdiff_t for offset and return value.
757 (fbuf_read): Use size_t for length argument.
758 (fbuf_getc_refill): Use size_t to match fbuf_read.
759 * io/fbuf.h (struct fbuf): Use size_t for lengths.
760 (fbuf_init): Use size_t instead of int for length.
761 (fbuf_reset): Use ptrdiff_t for return value.
762 (fbuf_alloc): Use size_t for length argument.
763 (fbuf_seek): Use ptrdiff_t for offset and return value.
764 (fbuf_read): Use size_t for length argument.
765 * io/io.h (read_block_form): Likewise.
766 (read_block_form4): Likewise.
767 (write_block): Likewise.
769 (read_a_char4): Likewise.
772 (write_a_char4): Likewise.
773 * io/list_read.c (list_formatted_read_scalar): Use size_t to
774 handle large buffers.
775 * io/read.c (read_l): Likewise.
776 (read_utf8): Likewise.
777 (read_utf8_char1): Likewise.
778 (read_default_char1): Likewise.
779 (read_utf8_char4): Likewise.
780 (read_default_char4): Likewise.
782 (read_a_char4): Likewise.
783 (eat_leading_spaces): Likewise.
784 (next_char): Likewise.
785 (read_decimal): Likewise.
786 (read_radix): Likewise.
789 * io/transfer.c (read_sf_internal): Likewise.
791 (read_block_form): Likewise.
792 (read_block_form4): Likewise.
793 (write_block): Likewise.
794 (formatted_transfer_scalar_write): Likewise.
795 (next_record_w): Likewise.
796 * io/unix.c (mem_alloc_r): Likewise.
797 (mem_alloc_r4): Likewise.
798 (mem_alloc_w): Likewise.
799 (mem_alloc_w4): Likewise.
800 (mem_read): Likewise.
801 (mem_read4): Likewise.
802 (mem_write): Likewise.
803 (mem_write4): Likewise.
804 (open_internal): Likewise.
805 (open_internal4): Likewise.
806 * io/unix.h (open_internal): Likewise.
807 (open_internal4): Likewise.
808 (mem_alloc_w): Likewise.
809 (mem_alloc_r): Likewise.
810 (mem_alloc_w4): Likewise.
811 (mem_alloc_r4): Likewise.
812 * io/write.c (write_check_cc): Likewise.
813 (write_cc): Likewise.
815 (write_a_char4): Likewise.
817 2018-01-06 Janne Blomqvist <jb@gcc.gnu.org>
819 * io/write.c (namelist_write): Remove unused variable "i".
821 2018-01-06 Dominique d'Humieres <dominiq@lps.ens.fr>
822 Janne Blomqvist <jb@gcc.gnu.org>
825 * io/write.c (write_character): Use size_t instead of int for
828 2018-01-05 Janne Blomqvist <jb@gcc.gnu.org>
831 * intrinsics/args.c (getarg_i4): Use gfc_charlen_type.
832 (get_command_argument_i4): Likewise.
833 (get_command_i4): Likewise.
834 * intrinsics/chmod.c (chmod_internal): Likewise.
835 * intrinsics/env.c (get_environment_variable_i4): Likewise.
836 * intrinsics/extends_type_of.c (struct vtype): Use size_t for size
838 * intrinsics/gerror.c (gerror): Use gfc_charlen_type.
839 * intrinsics/getlog.c (getlog): Likewise.
840 * intrinsics/hostnm.c (hostnm_0): Likewise.
841 * intrinsics/string_intrinsics_inc.c (string_len_trim): Rework to
842 work if gfc_charlen_type is unsigned.
843 (string_scan): Likewise.
844 * io/transfer.c (transfer_character): Modify prototype.
845 (transfer_character_write): Likewise.
846 (transfer_character_wide): Likewise.
847 (transfer_character_wide_write): Likewise.
848 (transfer_array): Typecast to avoid signed-unsigned comparison.
849 * io/unit.c (is_trim_ok): Use gfc_charlen_type.
850 * io/write.c (namelist_write): Likewise.
851 * libgfortran.h (gfc_charlen_type): Change typedef to size_t.
853 2018-01-03 Jakub Jelinek <jakub@redhat.com>
855 Update copyright years.
857 2018-01-02 Janne Blomqvist <jb@gcc.gnu.org>
860 * io/unix.c (MAX_CHUNK): New define.
861 (raw_read): For reads larger than MAX_CHUNK, loop.
862 (raw_write): Write no more than MAX_CHUNK bytes per iteration.
864 Copyright (C) 2018 Free Software Foundation, Inc.
866 Copying and distribution of this file, with or without modification,
867 are permitted in any medium without royalty provided the copyright
868 notice and this notice are preserved.