1 2018-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
4 * write.c (select_buffer): Adjust buffer size up by 1.
6 2018-01-08 Janne Blomqvist <jb@gcc.gnu.org>
8 PR 78534, bugfix for r256322
9 * io/transfer.c (next_record_w): Use correct type for return value
12 2018-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
14 * libgfortran.h (GFC_DTYPE_COPY): New macro.
15 (GFC_DTYPE_COPY_SETRANK): New macro.
16 (GFC_DTYPE_IS_UNSET): New macro.
17 * intrinsics/cshift0.c (cshift0): Use new macros.
18 * intrinsics/eoshift0.c (eoshift0): Likewise.
19 * intrinsics/eoshift2.c (eoshift2): Likewise.
20 * intrinsics/move_alloc.c (move_alloc): Likewise.
21 * intrinsics/reshape_generic.c (reshape_internal): Likewise.
22 * intrinsics/spread_generic.c (spread_internal): Likewise.
23 * intrinsics/spread_generic.c (spread_scalar): Likewise.
24 * intrinsics/spread_generic.c (spread_char_scalar): Likewise.
25 * intrinsics/spread_generic.c (spread_char4_scalar): Likewise.
26 * intrinsics/unpack_generic.c (unpack0): Likewise.
27 * intrinsics/unpack_generic.c (unpack0_char): Likewise.
28 * intrinsics/unpack_generic.c (unpack0_char4): Likewise.
29 * m4/cshift1.m4 (cshift1): Likewise.
30 * m4/eoshift1.m4 (eoshift1): Likewise.
31 * m4/eoshift3.m4 (eoshift3): Likewise.
32 * m4/iforeach-s.m4: Likewise.
33 * m4/iforeach.m4: Likewise.
34 * m4/ifunction-s.m4: Likewise.
35 * m4/ifunction-s2.m4: Likewise.
36 * m4/ifunction.m4: Likewise.
37 * m4/ifunction_logical.m4: Likewise.
38 * m4/reshape.m4: Likewise.
39 * m4/spread.m4: Likewise.
40 * generated/all_l1.c : Regenerated.
41 * generated/all_l16.c : Regenerated.
42 * generated/all_l2.c : Regenerated.
43 * generated/all_l4.c : Regenerated.
44 * generated/all_l8.c : Regenerated.
45 * generated/any_l1.c : Regenerated.
46 * generated/any_l16.c : Regenerated.
47 * generated/any_l2.c : Regenerated.
48 * generated/any_l4.c : Regenerated.
49 * generated/any_l8.c : Regenerated.
50 * generated/count_16_l.c : Regenerated.
51 * generated/count_1_l.c : Regenerated.
52 * generated/count_2_l.c : Regenerated.
53 * generated/count_4_l.c : Regenerated.
54 * generated/count_8_l.c : Regenerated.
55 * generated/cshift1_16.c : Regenerated.
56 * generated/cshift1_4.c : Regenerated.
57 * generated/cshift1_8.c : Regenerated.
58 * generated/eoshift1_16.c : Regenerated.
59 * generated/eoshift1_4.c : Regenerated.
60 * generated/eoshift1_8.c : Regenerated.
61 * generated/eoshift3_16.c : Regenerated.
62 * generated/eoshift3_4.c : Regenerated.
63 * generated/eoshift3_8.c : Regenerated.
64 * generated/iall_i1.c : Regenerated.
65 * generated/iall_i16.c : Regenerated.
66 * generated/iall_i2.c : Regenerated.
67 * generated/iall_i4.c : Regenerated.
68 * generated/iall_i8.c : Regenerated.
69 * generated/iany_i1.c : Regenerated.
70 * generated/iany_i16.c : Regenerated.
71 * generated/iany_i2.c : Regenerated.
72 * generated/iany_i4.c : Regenerated.
73 * generated/iany_i8.c : Regenerated.
74 * generated/iparity_i1.c : Regenerated.
75 * generated/iparity_i16.c : Regenerated.
76 * generated/iparity_i2.c : Regenerated.
77 * generated/iparity_i4.c : Regenerated.
78 * generated/iparity_i8.c : Regenerated.
79 * generated/maxloc0_16_i1.c : Regenerated.
80 * generated/maxloc0_16_i16.c : Regenerated.
81 * generated/maxloc0_16_i2.c : Regenerated.
82 * generated/maxloc0_16_i4.c : Regenerated.
83 * generated/maxloc0_16_i8.c : Regenerated.
84 * generated/maxloc0_16_r10.c : Regenerated.
85 * generated/maxloc0_16_r16.c : Regenerated.
86 * generated/maxloc0_16_r4.c : Regenerated.
87 * generated/maxloc0_16_r8.c : Regenerated.
88 * generated/maxloc0_16_s1.c : Regenerated.
89 * generated/maxloc0_16_s4.c : Regenerated.
90 * generated/maxloc0_4_i1.c : Regenerated.
91 * generated/maxloc0_4_i16.c : Regenerated.
92 * generated/maxloc0_4_i2.c : Regenerated.
93 * generated/maxloc0_4_i4.c : Regenerated.
94 * generated/maxloc0_4_i8.c : Regenerated.
95 * generated/maxloc0_4_r10.c : Regenerated.
96 * generated/maxloc0_4_r16.c : Regenerated.
97 * generated/maxloc0_4_r4.c : Regenerated.
98 * generated/maxloc0_4_r8.c : Regenerated.
99 * generated/maxloc0_4_s1.c : Regenerated.
100 * generated/maxloc0_4_s4.c : Regenerated.
101 * generated/maxloc0_8_i1.c : Regenerated.
102 * generated/maxloc0_8_i16.c : Regenerated.
103 * generated/maxloc0_8_i2.c : Regenerated.
104 * generated/maxloc0_8_i4.c : Regenerated.
105 * generated/maxloc0_8_i8.c : Regenerated.
106 * generated/maxloc0_8_r10.c : Regenerated.
107 * generated/maxloc0_8_r16.c : Regenerated.
108 * generated/maxloc0_8_r4.c : Regenerated.
109 * generated/maxloc0_8_r8.c : Regenerated.
110 * generated/maxloc0_8_s1.c : Regenerated.
111 * generated/maxloc0_8_s4.c : Regenerated.
112 * generated/maxloc1_16_i1.c : Regenerated.
113 * generated/maxloc1_16_i16.c : Regenerated.
114 * generated/maxloc1_16_i2.c : Regenerated.
115 * generated/maxloc1_16_i4.c : Regenerated.
116 * generated/maxloc1_16_i8.c : Regenerated.
117 * generated/maxloc1_16_r10.c : Regenerated.
118 * generated/maxloc1_16_r16.c : Regenerated.
119 * generated/maxloc1_16_r4.c : Regenerated.
120 * generated/maxloc1_16_r8.c : Regenerated.
121 * generated/maxloc1_16_s1.c : Regenerated.
122 * generated/maxloc1_16_s4.c : Regenerated.
123 * generated/maxloc1_4_i1.c : Regenerated.
124 * generated/maxloc1_4_i16.c : Regenerated.
125 * generated/maxloc1_4_i2.c : Regenerated.
126 * generated/maxloc1_4_i4.c : Regenerated.
127 * generated/maxloc1_4_i8.c : Regenerated.
128 * generated/maxloc1_4_r10.c : Regenerated.
129 * generated/maxloc1_4_r16.c : Regenerated.
130 * generated/maxloc1_4_r4.c : Regenerated.
131 * generated/maxloc1_4_r8.c : Regenerated.
132 * generated/maxloc1_4_s1.c : Regenerated.
133 * generated/maxloc1_4_s4.c : Regenerated.
134 * generated/maxloc1_8_i1.c : Regenerated.
135 * generated/maxloc1_8_i16.c : Regenerated.
136 * generated/maxloc1_8_i2.c : Regenerated.
137 * generated/maxloc1_8_i4.c : Regenerated.
138 * generated/maxloc1_8_i8.c : Regenerated.
139 * generated/maxloc1_8_r10.c : Regenerated.
140 * generated/maxloc1_8_r16.c : Regenerated.
141 * generated/maxloc1_8_r4.c : Regenerated.
142 * generated/maxloc1_8_r8.c : Regenerated.
143 * generated/maxloc1_8_s1.c : Regenerated.
144 * generated/maxloc1_8_s4.c : Regenerated.
145 * generated/maxval1_s1.c : Regenerated.
146 * generated/maxval1_s4.c : Regenerated.
147 * generated/maxval_i1.c : Regenerated.
148 * generated/maxval_i16.c : Regenerated.
149 * generated/maxval_i2.c : Regenerated.
150 * generated/maxval_i4.c : Regenerated.
151 * generated/maxval_i8.c : Regenerated.
152 * generated/maxval_r10.c : Regenerated.
153 * generated/maxval_r16.c : Regenerated.
154 * generated/maxval_r4.c : Regenerated.
155 * generated/maxval_r8.c : Regenerated.
156 * generated/minloc0_16_i1.c : Regenerated.
157 * generated/minloc0_16_i16.c : Regenerated.
158 * generated/minloc0_16_i2.c : Regenerated.
159 * generated/minloc0_16_i4.c : Regenerated.
160 * generated/minloc0_16_i8.c : Regenerated.
161 * generated/minloc0_16_r10.c : Regenerated.
162 * generated/minloc0_16_r16.c : Regenerated.
163 * generated/minloc0_16_r4.c : Regenerated.
164 * generated/minloc0_16_r8.c : Regenerated.
165 * generated/minloc0_16_s1.c : Regenerated.
166 * generated/minloc0_16_s4.c : Regenerated.
167 * generated/minloc0_4_i1.c : Regenerated.
168 * generated/minloc0_4_i16.c : Regenerated.
169 * generated/minloc0_4_i2.c : Regenerated.
170 * generated/minloc0_4_i4.c : Regenerated.
171 * generated/minloc0_4_i8.c : Regenerated.
172 * generated/minloc0_4_r10.c : Regenerated.
173 * generated/minloc0_4_r16.c : Regenerated.
174 * generated/minloc0_4_r4.c : Regenerated.
175 * generated/minloc0_4_r8.c : Regenerated.
176 * generated/minloc0_4_s1.c : Regenerated.
177 * generated/minloc0_4_s4.c : Regenerated.
178 * generated/minloc0_8_i1.c : Regenerated.
179 * generated/minloc0_8_i16.c : Regenerated.
180 * generated/minloc0_8_i2.c : Regenerated.
181 * generated/minloc0_8_i4.c : Regenerated.
182 * generated/minloc0_8_i8.c : Regenerated.
183 * generated/minloc0_8_r10.c : Regenerated.
184 * generated/minloc0_8_r16.c : Regenerated.
185 * generated/minloc0_8_r4.c : Regenerated.
186 * generated/minloc0_8_r8.c : Regenerated.
187 * generated/minloc0_8_s1.c : Regenerated.
188 * generated/minloc0_8_s4.c : Regenerated.
189 * generated/minloc1_16_i1.c : Regenerated.
190 * generated/minloc1_16_i16.c : Regenerated.
191 * generated/minloc1_16_i2.c : Regenerated.
192 * generated/minloc1_16_i4.c : Regenerated.
193 * generated/minloc1_16_i8.c : Regenerated.
194 * generated/minloc1_16_r10.c : Regenerated.
195 * generated/minloc1_16_r16.c : Regenerated.
196 * generated/minloc1_16_r4.c : Regenerated.
197 * generated/minloc1_16_r8.c : Regenerated.
198 * generated/minloc1_16_s1.c : Regenerated.
199 * generated/minloc1_16_s4.c : Regenerated.
200 * generated/minloc1_4_i1.c : Regenerated.
201 * generated/minloc1_4_i16.c : Regenerated.
202 * generated/minloc1_4_i2.c : Regenerated.
203 * generated/minloc1_4_i4.c : Regenerated.
204 * generated/minloc1_4_i8.c : Regenerated.
205 * generated/minloc1_4_r10.c : Regenerated.
206 * generated/minloc1_4_r16.c : Regenerated.
207 * generated/minloc1_4_r4.c : Regenerated.
208 * generated/minloc1_4_r8.c : Regenerated.
209 * generated/minloc1_4_s1.c : Regenerated.
210 * generated/minloc1_4_s4.c : Regenerated.
211 * generated/minloc1_8_i1.c : Regenerated.
212 * generated/minloc1_8_i16.c : Regenerated.
213 * generated/minloc1_8_i2.c : Regenerated.
214 * generated/minloc1_8_i4.c : Regenerated.
215 * generated/minloc1_8_i8.c : Regenerated.
216 * generated/minloc1_8_r10.c : Regenerated.
217 * generated/minloc1_8_r16.c : Regenerated.
218 * generated/minloc1_8_r4.c : Regenerated.
219 * generated/minloc1_8_r8.c : Regenerated.
220 * generated/minloc1_8_s1.c : Regenerated.
221 * generated/minloc1_8_s4.c : Regenerated.
222 * generated/minval1_s1.c : Regenerated.
223 * generated/minval1_s4.c : Regenerated.
224 * generated/minval_i1.c : Regenerated.
225 * generated/minval_i16.c : Regenerated.
226 * generated/minval_i2.c : Regenerated.
227 * generated/minval_i4.c : Regenerated.
228 * generated/minval_i8.c : Regenerated.
229 * generated/minval_r10.c : Regenerated.
230 * generated/minval_r16.c : Regenerated.
231 * generated/minval_r4.c : Regenerated.
232 * generated/minval_r8.c : Regenerated.
233 * generated/norm2_r10.c : Regenerated.
234 * generated/norm2_r16.c : Regenerated.
235 * generated/norm2_r4.c : Regenerated.
236 * generated/norm2_r8.c : Regenerated.
237 * generated/parity_l1.c : Regenerated.
238 * generated/parity_l16.c : Regenerated.
239 * generated/parity_l2.c : Regenerated.
240 * generated/parity_l4.c : Regenerated.
241 * generated/parity_l8.c : Regenerated.
242 * generated/product_c10.c : Regenerated.
243 * generated/product_c16.c : Regenerated.
244 * generated/product_c4.c : Regenerated.
245 * generated/product_c8.c : Regenerated.
246 * generated/product_i1.c : Regenerated.
247 * generated/product_i16.c : Regenerated.
248 * generated/product_i2.c : Regenerated.
249 * generated/product_i4.c : Regenerated.
250 * generated/product_i8.c : Regenerated.
251 * generated/product_r10.c : Regenerated.
252 * generated/product_r16.c : Regenerated.
253 * generated/product_r4.c : Regenerated.
254 * generated/product_r8.c : Regenerated.
255 * generated/reshape_c10.c : Regenerated.
256 * generated/reshape_c16.c : Regenerated.
257 * generated/reshape_c4.c : Regenerated.
258 * generated/reshape_c8.c : Regenerated.
259 * generated/reshape_i16.c : Regenerated.
260 * generated/reshape_i4.c : Regenerated.
261 * generated/reshape_i8.c : Regenerated.
262 * generated/reshape_r10.c : Regenerated.
263 * generated/reshape_r16.c : Regenerated.
264 * generated/reshape_r4.c : Regenerated.
265 * generated/reshape_r8.c : Regenerated.
266 * generated/spread_c10.c : Regenerated.
267 * generated/spread_c16.c : Regenerated.
268 * generated/spread_c4.c : Regenerated.
269 * generated/spread_c8.c : Regenerated.
270 * generated/spread_i1.c : Regenerated.
271 * generated/spread_i16.c : Regenerated.
272 * generated/spread_i2.c : Regenerated.
273 * generated/spread_i4.c : Regenerated.
274 * generated/spread_i8.c : Regenerated.
275 * generated/spread_r10.c : Regenerated.
276 * generated/spread_r16.c : Regenerated.
277 * generated/spread_r4.c : Regenerated.
278 * generated/spread_r8.c : Regenerated.
279 * generated/sum_c10.c : Regenerated.
280 * generated/sum_c16.c : Regenerated.
281 * generated/sum_c4.c : Regenerated.
282 * generated/sum_c8.c : Regenerated.
283 * generated/sum_i1.c : Regenerated.
284 * generated/sum_i16.c : Regenerated.
285 * generated/sum_i2.c : Regenerated.
286 * generated/sum_i4.c : Regenerated.
287 * generated/sum_i8.c : Regenerated.
288 * generated/sum_r10.c : Regenerated.
289 * generated/sum_r16.c : Regenerated.
290 * generated/sum_r4.c : Regenerated.
291 * generated/sum_r8.c : Regenerated.
293 2018-01-07 Janne Blomqvist <jb@gcc.gnu.org>
297 * io/fbuf.c (fbuf_init): Use size_t instead of int for length.
298 (fbuf_debug): Convert debug output to unsigned long.
299 (fbuf_reset): Use ptrdiff_t for return value.
300 (fbuf_alloc): Use size_t for length argument.
301 (fbuf_flush): Handle large buffers.
302 (fbuf_flush_list): Likewise.
303 (fbuf_seek): Use ptrdiff_t for offset and return value.
304 (fbuf_read): Use size_t for length argument.
305 (fbuf_getc_refill): Use size_t to match fbuf_read.
306 * io/fbuf.h (struct fbuf): Use size_t for lengths.
307 (fbuf_init): Use size_t instead of int for length.
308 (fbuf_reset): Use ptrdiff_t for return value.
309 (fbuf_alloc): Use size_t for length argument.
310 (fbuf_seek): Use ptrdiff_t for offset and return value.
311 (fbuf_read): Use size_t for length argument.
312 * io/io.h (read_block_form): Likewise.
313 (read_block_form4): Likewise.
314 (write_block): Likewise.
316 (read_a_char4): Likewise.
319 (write_a_char4): Likewise.
320 * io/list_read.c (list_formatted_read_scalar): Use size_t to
321 handle large buffers.
322 * io/read.c (read_l): Likewise.
323 (read_utf8): Likewise.
324 (read_utf8_char1): Likewise.
325 (read_default_char1): Likewise.
326 (read_utf8_char4): Likewise.
327 (read_default_char4): Likewise.
329 (read_a_char4): Likewise.
330 (eat_leading_spaces): Likewise.
331 (next_char): Likewise.
332 (read_decimal): Likewise.
333 (read_radix): Likewise.
336 * io/transfer.c (read_sf_internal): Likewise.
338 (read_block_form): Likewise.
339 (read_block_form4): Likewise.
340 (write_block): Likewise.
341 (formatted_transfer_scalar_write): Likewise.
342 (next_record_w): Likewise.
343 * io/unix.c (mem_alloc_r): Likewise.
344 (mem_alloc_r4): Likewise.
345 (mem_alloc_w): Likewise.
346 (mem_alloc_w4): Likewise.
347 (mem_read): Likewise.
348 (mem_read4): Likewise.
349 (mem_write): Likewise.
350 (mem_write4): Likewise.
351 (open_internal): Likewise.
352 (open_internal4): Likewise.
353 * io/unix.h (open_internal): Likewise.
354 (open_internal4): Likewise.
355 (mem_alloc_w): Likewise.
356 (mem_alloc_r): Likewise.
357 (mem_alloc_w4): Likewise.
358 (mem_alloc_r4): Likewise.
359 * io/write.c (write_check_cc): Likewise.
360 (write_cc): Likewise.
362 (write_a_char4): Likewise.
364 2018-01-06 Janne Blomqvist <jb@gcc.gnu.org>
366 * io/write.c (namelist_write): Remove unused variable "i".
368 2018-01-06 Dominique d'Humieres <dominiq@lps.ens.fr>
369 Janne Blomqvist <jb@gcc.gnu.org>
372 * io/write.c (write_character): Use size_t instead of int for
375 2018-01-05 Janne Blomqvist <jb@gcc.gnu.org>
378 * intrinsics/args.c (getarg_i4): Use gfc_charlen_type.
379 (get_command_argument_i4): Likewise.
380 (get_command_i4): Likewise.
381 * intrinsics/chmod.c (chmod_internal): Likewise.
382 * intrinsics/env.c (get_environment_variable_i4): Likewise.
383 * intrinsics/extends_type_of.c (struct vtype): Use size_t for size
385 * intrinsics/gerror.c (gerror): Use gfc_charlen_type.
386 * intrinsics/getlog.c (getlog): Likewise.
387 * intrinsics/hostnm.c (hostnm_0): Likewise.
388 * intrinsics/string_intrinsics_inc.c (string_len_trim): Rework to
389 work if gfc_charlen_type is unsigned.
390 (string_scan): Likewise.
391 * io/transfer.c (transfer_character): Modify prototype.
392 (transfer_character_write): Likewise.
393 (transfer_character_wide): Likewise.
394 (transfer_character_wide_write): Likewise.
395 (transfer_array): Typecast to avoid signed-unsigned comparison.
396 * io/unit.c (is_trim_ok): Use gfc_charlen_type.
397 * io/write.c (namelist_write): Likewise.
398 * libgfortran.h (gfc_charlen_type): Change typedef to size_t.
400 2018-01-03 Jakub Jelinek <jakub@redhat.com>
402 Update copyright years.
404 2018-01-02 Janne Blomqvist <jb@gcc.gnu.org>
407 * io/unix.c (MAX_CHUNK): New define.
408 (raw_read): For reads larger than MAX_CHUNK, loop.
409 (raw_write): Write no more than MAX_CHUNK bytes per iteration.
411 Copyright (C) 2018 Free Software Foundation, Inc.
413 Copying and distribution of this file, with or without modification,
414 are permitted in any medium without royalty provided the copyright
415 notice and this notice are preserved.