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