1 2008-05-16 Janne Blomqvist <jb@gcc.gnu.org>
4 * io/open.c (new_unit): Set stream position to correct value.
6 2008-05-15 Janne Blomqvist <jb@gcc.gnu.org>
9 * Makefile.am: Add fbuf.c to gfor_io_src.
10 * Makefile.in: Regenerate.
11 * io/io.h (read_block): Remove.
12 (struct stream): Remove alloc_r_at function pointer.
14 (salloc_r_at): Remove.
15 (salloc_w_at): Remove.
16 (salloc_w): Remove offset argument.
17 (struct fbuf): New struct for format buffer.
18 (struct gfc_unit): Add fbuf.
19 (read_block_form): New prototype.
20 (fbuf_init): Likewise.
21 (fbuf_destroy): Likewise.
22 (fbuf_reset): Likewise.
23 (fbuf_alloc): Likewise.
24 (fbuf_flush): Likewise.
25 (fbuf_seek): Likewise.
26 * io/file_pos.c (formatted_backspace): Change to use sread.
27 (unformatted_backspace): Likewise.
28 (st_backspace): Flush format buffer.
29 (st_rewind): Likewise.
30 * io/list_read.c (next_char): Likewise.
31 (nml_query): Tidying, flush format buffer.
32 * io/open.c (new_unit): Init format buffer.
33 * io/read.c (read_l): Change to use read_block_form.
35 (read_decimal): Likewise.
36 (read_radix): Likewise.
38 (read_x): Empty reads also for stream I/O.
39 * io/transfer.c (read_sf): Change to use sread.
40 (read_block): Rename to read_block_form, change prototype, use sread.
41 (read_block_direct): Don't seek stream files.
42 (write_block): Change to use fbuf if external file, don't seek stream
44 (write_buf): Don't seek stream files.
45 (formatted_transfer_scalar): Use fbuf for external files.
46 (us_read): Change to use sread.
47 (pre_position): Do nothing for stream I/O.
48 (data_transfer_init): Flush fbuf when switching from write to read, if
49 POS is specified, seek stream file to correct offset.
50 (skip_record): Change to use sread.
51 (min_off): New function.
52 (next_record_r): Change to use sread.
53 (next_record_w): Change to use sset/sseek, flush fbuf.
54 (finalize_transfer): Flush fbuf.
55 * io/unit.c (init_units): Init fbuf for stdout, stderr.
56 (close_unit_1): Destroy fbuf.
57 (finish_last_advance_record): Flush fbuf, no need to seek.
58 * io/unix.c (fd_alloc_r_at): Remove unused where argument.
59 (fd_alloc_w_at): Likewise.
60 (fd_read): Remove third argument to fd_alloc_r_at.
61 (fd_write): Remove third argument to fd_alloc_w_at.
63 (fd_open): Don't set alloc_r_at.
64 (mem_alloc_r_at): Remove unused where argument.
65 (mem_alloc_w_at): Likewise.
66 (mem_read): Don't incorrectly return previous errno, remove unused
67 third argument to alloc function.
68 (mem_write): Likewise.
70 (open_internal): Don't set alloc_r_at pointer.
71 * io/fbuf.c: New file.
73 2008-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
75 * libgfortran.h (gfc_char4_t): New type.
76 (GFC_SIZE_OF_CHAR_KIND): New macro.
77 (compare_string): Adjust prototype.
78 (compare_string_char4): New prototype.
79 * gfortran.map (GFORTRAN_1.1): Add _gfortran_adjustl_char4,
80 _gfortran_adjustr_char4, _gfortran_compare_string_char4,
81 _gfortran_concat_string_char4, _gfortran_string_index_char4,
82 _gfortran_string_len_trim_char4, _gfortran_string_minmax_char4,
83 _gfortran_string_scan_char4, _gfortran_string_trim_char4 and
84 _gfortran_string_verify_char4.
85 * intrinsics/string_intrinsics_inc.c: New file from content of
86 string_intrinsics.c with types replaced by macros.
87 * intrinsics/string_intrinsics.c: Move content to
88 string_intrinsics_inc.c.
90 2008-05-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
93 * io/list_read (eat_separator): Handle the CR-LF case correctly.
95 2008-05-09 Julian Brown <julian@codesourcery.com>
97 * Makefile.am (LTLDFLAGS): New.
98 (libgfortran_la_LDFLAGS): Use above.
99 * Makefile.in: Regenerate.
101 2008-05-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
104 * io/transfer.c (formatted_transfer_scalar): Revert patch for PR34974.
105 (next_record_w): Likewise.
107 2008-05-04 Thomas Koenig <tkoenig@gcc.gnu.org>
110 * m4/ifunction_logical.m4: If the extent of "array"
111 is less than zero, set it to zero. Use an explicit
112 flag for breaking out of the main loop to avoid, because
113 the data pointer for "array" may be NULL for an empty
115 * m4/ifunction.m4: Likewise.
116 * generated/all_l1.c: Regenerated.
117 * generated/all_l16.c: Regenerated.
118 * generated/all_l2.c: Regenerated.
119 * generated/all_l4.c: Regenerated.
120 * generated/all_l8.c: Regenerated.
121 * generated/any_l1.c: Regenerated.
122 * generated/any_l16.c: Regenerated.
123 * generated/any_l2.c: Regenerated.
124 * generated/any_l4.c: Regenerated.
125 * generated/any_l8.c: Regenerated.
126 * generated/count_16_l.c: Regenerated.
127 * generated/count_1_l.c: Regenerated.
128 * generated/count_2_l.c: Regenerated.
129 * generated/count_4_l.c: Regenerated.
130 * generated/count_8_l.c: Regenerated.
131 * generated/maxloc1_16_i1.c: Regenerated.
132 * generated/maxloc1_16_i16.c: Regenerated.
133 * generated/maxloc1_16_i2.c: Regenerated.
134 * generated/maxloc1_16_i4.c: Regenerated.
135 * generated/maxloc1_16_i8.c: Regenerated.
136 * generated/maxloc1_16_r10.c: Regenerated.
137 * generated/maxloc1_16_r16.c: Regenerated.
138 * generated/maxloc1_16_r4.c: Regenerated.
139 * generated/maxloc1_16_r8.c: Regenerated.
140 * generated/maxloc1_4_i1.c: Regenerated.
141 * generated/maxloc1_4_i16.c: Regenerated.
142 * generated/maxloc1_4_i2.c: Regenerated.
143 * generated/maxloc1_4_i4.c: Regenerated.
144 * generated/maxloc1_4_i8.c: Regenerated.
145 * generated/maxloc1_4_r10.c: Regenerated.
146 * generated/maxloc1_4_r16.c: Regenerated.
147 * generated/maxloc1_4_r4.c: Regenerated.
148 * generated/maxloc1_4_r8.c: Regenerated.
149 * generated/maxloc1_8_i1.c: Regenerated.
150 * generated/maxloc1_8_i16.c: Regenerated.
151 * generated/maxloc1_8_i2.c: Regenerated.
152 * generated/maxloc1_8_i4.c: Regenerated.
153 * generated/maxloc1_8_i8.c: Regenerated.
154 * generated/maxloc1_8_r10.c: Regenerated.
155 * generated/maxloc1_8_r16.c: Regenerated.
156 * generated/maxloc1_8_r4.c: Regenerated.
157 * generated/maxloc1_8_r8.c: Regenerated.
158 * generated/maxval_i1.c: Regenerated.
159 * generated/maxval_i16.c: Regenerated.
160 * generated/maxval_i2.c: Regenerated.
161 * generated/maxval_i4.c: Regenerated.
162 * generated/maxval_i8.c: Regenerated.
163 * generated/maxval_r10.c: Regenerated.
164 * generated/maxval_r16.c: Regenerated.
165 * generated/maxval_r4.c: Regenerated.
166 * generated/maxval_r8.c: Regenerated.
167 * generated/minloc1_16_i1.c: Regenerated.
168 * generated/minloc1_16_i16.c: Regenerated.
169 * generated/minloc1_16_i2.c: Regenerated.
170 * generated/minloc1_16_i4.c: Regenerated.
171 * generated/minloc1_16_i8.c: Regenerated.
172 * generated/minloc1_16_r10.c: Regenerated.
173 * generated/minloc1_16_r16.c: Regenerated.
174 * generated/minloc1_16_r4.c: Regenerated.
175 * generated/minloc1_16_r8.c: Regenerated.
176 * generated/minloc1_4_i1.c: Regenerated.
177 * generated/minloc1_4_i16.c: Regenerated.
178 * generated/minloc1_4_i2.c: Regenerated.
179 * generated/minloc1_4_i4.c: Regenerated.
180 * generated/minloc1_4_i8.c: Regenerated.
181 * generated/minloc1_4_r10.c: Regenerated.
182 * generated/minloc1_4_r16.c: Regenerated.
183 * generated/minloc1_4_r4.c: Regenerated.
184 * generated/minloc1_4_r8.c: Regenerated.
185 * generated/minloc1_8_i1.c: Regenerated.
186 * generated/minloc1_8_i16.c: Regenerated.
187 * generated/minloc1_8_i2.c: Regenerated.
188 * generated/minloc1_8_i4.c: Regenerated.
189 * generated/minloc1_8_i8.c: Regenerated.
190 * generated/minloc1_8_r10.c: Regenerated.
191 * generated/minloc1_8_r16.c: Regenerated.
192 * generated/minloc1_8_r4.c: Regenerated.
193 * generated/minloc1_8_r8.c: Regenerated.
194 * generated/minval_i1.c: Regenerated.
195 * generated/minval_i16.c: Regenerated.
196 * generated/minval_i2.c: Regenerated.
197 * generated/minval_i4.c: Regenerated.
198 * generated/minval_i8.c: Regenerated.
199 * generated/minval_r10.c: Regenerated.
200 * generated/minval_r16.c: Regenerated.
201 * generated/minval_r4.c: Regenerated.
202 * generated/minval_r8.c: Regenerated.
203 * generated/product_c10.c: Regenerated.
204 * generated/product_c16.c: Regenerated.
205 * generated/product_c4.c: Regenerated.
206 * generated/product_c8.c: Regenerated.
207 * generated/product_i1.c: Regenerated.
208 * generated/product_i16.c: Regenerated.
209 * generated/product_i2.c: Regenerated.
210 * generated/product_i4.c: Regenerated.
211 * generated/product_i8.c: Regenerated.
212 * generated/product_r10.c: Regenerated.
213 * generated/product_r16.c: Regenerated.
214 * generated/product_r4.c: Regenerated.
215 * generated/product_r8.c: Regenerated.
216 * generated/sum_c10.c: Regenerated.
217 * generated/sum_c16.c: Regenerated.
218 * generated/sum_c4.c: Regenerated.
219 * generated/sum_c8.c: Regenerated.
220 * generated/sum_i1.c: Regenerated.
221 * generated/sum_i16.c: Regenerated.
222 * generated/sum_i2.c: Regenerated.
223 * generated/sum_i4.c: Regenerated.
224 * generated/sum_i8.c: Regenerated.
225 * generated/sum_r10.c: Regenerated.
226 * generated/sum_r16.c: Regenerated.
227 * generated/sum_r4.c: Regenerated.
228 * generated/sum_r8.c: Regenerated.
230 2008-05-04 Thomas Koenig <tkoenig@gcc.gnu.org>
233 * intrinsics/pack_generic.c: Really commit.
235 2008-05-04 Thomas Koenig <tkoenig@gcc.gnu.org>
238 * intrinsics/pack_generic.c: If an extent of the source
239 array is less then zero, set it to zero. Set the source
240 pointer to NULL if the source size is zero. Set the total
241 number of elements to zero if the vector has an extent
242 less or equal to zero.
243 * m4/pack.m4: Set the source pointer to NULL if the
244 source array is zero-sized. Set the total number of
245 elemements to zero if the vector has an extent less or
247 * generated/pack_i1.c: Regenerated.
248 * generated/pack_i2.c: Regenerated.
249 * generated/pack_i4.c: Regenerated.
250 * generated/pack_i8.c: Regenerated.
251 * generated/pack_i16.c: Regenerated.
252 * generated/pack_r4.c: Regenerated.
253 * generated/pack_r8.c: Regenerated.
254 * generated/pack_r10.c: Regenerated.
255 * generated/pack_r16.c: Regenerated.
256 * generated/pack_c4.c: Regenerated.
257 * generated/pack_c8.c: Regenerated.
258 * generated/pack_c10.c: Regenerated.
259 * generated/pack_c16.c: Regenerated.
261 2008-05-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
264 * runtime/error.c (show_locus): Provide modified error message when
265 filename has not yet been associated with a unit number.
266 * io/open.c (encoding_opt[]): Comment out "utf-8" option and add TODO.
268 2008-04-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
270 * intrinsics/selected_char_kind.c: New file.
271 * gfortran.map (GFORTRAN_1.1): Add _gfortran_selected_char_kind.
272 * Makefile.am: Add intrinsics/selected_char_kind.c.
273 * Makefile.in: Regenerate.
275 2008-04-30 Thomas Koenig <tkoenig@gcc.gnu.org>
278 * ifunction.m4 (SCALAR_ARRAY_FUNCTION): Use correct
279 implementation for multi-dimensional return arrays when
281 * generated/maxloc1_16_i1.c: Regenerated.
282 * generated/maxloc1_16_i16.c: Regenerated.
283 * generated/maxloc1_16_i2.c: Regenerated.
284 * generated/maxloc1_16_i4.c: Regenerated.
285 * generated/maxloc1_16_i8.c: Regenerated.
286 * generated/maxloc1_16_r10.c: Regenerated.
287 * generated/maxloc1_16_r16.c: Regenerated.
288 * generated/maxloc1_16_r4.c: Regenerated.
289 * generated/maxloc1_16_r8.c: Regenerated.
290 * generated/maxloc1_4_i1.c: Regenerated.
291 * generated/maxloc1_4_i16.c: Regenerated.
292 * generated/maxloc1_4_i2.c: Regenerated.
293 * generated/maxloc1_4_i4.c: Regenerated.
294 * generated/maxloc1_4_i8.c: Regenerated.
295 * generated/maxloc1_4_r10.c: Regenerated.
296 * generated/maxloc1_4_r16.c: Regenerated.
297 * generated/maxloc1_4_r4.c: Regenerated.
298 * generated/maxloc1_4_r8.c: Regenerated.
299 * generated/maxloc1_8_i1.c: Regenerated.
300 * generated/maxloc1_8_i16.c: Regenerated.
301 * generated/maxloc1_8_i2.c: Regenerated.
302 * generated/maxloc1_8_i4.c: Regenerated.
303 * generated/maxloc1_8_i8.c: Regenerated.
304 * generated/maxloc1_8_r10.c: Regenerated.
305 * generated/maxloc1_8_r16.c: Regenerated.
306 * generated/maxloc1_8_r4.c: Regenerated.
307 * generated/maxloc1_8_r8.c: Regenerated.
308 * generated/maxval_i1.c: Regenerated.
309 * generated/maxval_i16.c: Regenerated.
310 * generated/maxval_i2.c: Regenerated.
311 * generated/maxval_i4.c: Regenerated.
312 * generated/maxval_i8.c: Regenerated.
313 * generated/maxval_r10.c: Regenerated.
314 * generated/maxval_r16.c: Regenerated.
315 * generated/maxval_r4.c: Regenerated.
316 * generated/maxval_r8.c: Regenerated.
317 * generated/minloc1_16_i1.c: Regenerated.
318 * generated/minloc1_16_i16.c: Regenerated.
319 * generated/minloc1_16_i2.c: Regenerated.
320 * generated/minloc1_16_i4.c: Regenerated.
321 * generated/minloc1_16_i8.c: Regenerated.
322 * generated/minloc1_16_r10.c: Regenerated.
323 * generated/minloc1_16_r16.c: Regenerated.
324 * generated/minloc1_16_r4.c: Regenerated.
325 * generated/minloc1_16_r8.c: Regenerated.
326 * generated/minloc1_4_i1.c: Regenerated.
327 * generated/minloc1_4_i16.c: Regenerated.
328 * generated/minloc1_4_i2.c: Regenerated.
329 * generated/minloc1_4_i4.c: Regenerated.
330 * generated/minloc1_4_i8.c: Regenerated.
331 * generated/minloc1_4_r10.c: Regenerated.
332 * generated/minloc1_4_r16.c: Regenerated.
333 * generated/minloc1_4_r4.c: Regenerated.
334 * generated/minloc1_4_r8.c: Regenerated.
335 * generated/minloc1_8_i1.c: Regenerated.
336 * generated/minloc1_8_i16.c: Regenerated.
337 * generated/minloc1_8_i2.c: Regenerated.
338 * generated/minloc1_8_i4.c: Regenerated.
339 * generated/minloc1_8_i8.c: Regenerated.
340 * generated/minloc1_8_r10.c: Regenerated.
341 * generated/minloc1_8_r16.c: Regenerated.
342 * generated/minloc1_8_r4.c: Regenerated.
343 * generated/minloc1_8_r8.c: Regenerated.
344 * generated/minval_i1.c: Regenerated.
345 * generated/minval_i16.c: Regenerated.
346 * generated/minval_i2.c: Regenerated.
347 * generated/minval_i4.c: Regenerated.
348 * generated/minval_i8.c: Regenerated.
349 * generated/minval_r10.c: Regenerated.
350 * generated/minval_r16.c: Regenerated.
351 * generated/minval_r4.c: Regenerated.
352 * generated/minval_r8.c: Regenerated.
353 * generated/product_c10.c: Regenerated.
354 * generated/product_c16.c: Regenerated.
355 * generated/product_c4.c: Regenerated.
356 * generated/product_c8.c: Regenerated.
357 * generated/product_i1.c: Regenerated.
358 * generated/product_i16.c: Regenerated.
359 * generated/product_i2.c: Regenerated.
360 * generated/product_i4.c: Regenerated.
361 * generated/product_i8.c: Regenerated.
362 * generated/product_r10.c: Regenerated.
363 * generated/product_r16.c: Regenerated.
364 * generated/product_r4.c: Regenerated.
365 * generated/product_r8.c: Regenerated.
366 * generated/sum_c10.c: Regenerated.
367 * generated/sum_c16.c: Regenerated.
368 * generated/sum_c4.c: Regenerated.
369 * generated/sum_c8.c: Regenerated.
370 * generated/sum_i1.c: Regenerated.
371 * generated/sum_i16.c: Regenerated.
372 * generated/sum_i2.c: Regenerated.
373 * generated/sum_i4.c: Regenerated.
374 * generated/sum_i8.c: Regenerated.
375 * generated/sum_r10.c: Regenerated.
376 * generated/sum_r16.c: Regenerated.
377 * generated/sum_r4.c: Regenerated.
378 * generated/sum_r8.c: Regenerated.
380 2008-04-25 Thomas Koenig <tkoenig@gcc.gnu.org>
383 * m4/reshape.m4: Fix typo in last commit.
384 * generated/reshape_i4.c: Regererated.
385 * generated/reshape_i8.c: Regenerated.
386 * generated/reshape_i16.c: Regenerated.
387 * generated/reshape_r4.c: Regenerated.
388 * generated/reshape_r8.c: Regenerated.
389 * generated/reshape_r10.c: Regenerated.
390 * generated/reshape_r16.c: Regenerated.
391 * generated/reshape_c4.c: Regenerated.
392 * generated/reshape_c8.c: Regenerated.
393 * generated/reshape_c10.c: Regenerated.
394 * generated/reshape_c16.c: Regenerated.
396 2008-04-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
398 * intrinsics/time_1.h (__time_1): Remove unused variable.
400 2008-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
403 * m4/matmul.m4: Only issue a runtime error if extents are
405 * generated/matmul_i1.c: Regenerated.
406 * generated/matmul_i2.c: Regenerated.
407 * generated/matmul_i4.c: Regenerated.
408 * generated/matmul_i8.c: Regenerated.
409 * generated/matmul_i16.c: Regenerated.
410 * generated/matmul_r4.c: Regenerated.
411 * generated/matmul_r8.c: Regenerated.
412 * generated/matmul_r10.c: Regenerated.
413 * generated/matmul_r16.c: Regenerated.
414 * generated/matmul_c4.c: Regenerated.
415 * generated/matmul_c8.c: Regenerated.
416 * generated/matmul_c10.c: Regenerated.
417 * generated/matmul_c16.c: Regenerated.
419 2008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
421 * acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY)
422 (LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT)
423 (LIBGFOR_CHECK_ATTRIBUTE_ALIAS, LIBGFOR_CHECK_SYNC_FETCH_AND_ADD)
424 (LIBGFOR_GTHREAD_WEAK, LIBGFOR_CHECK_UNLINK_OPEN_FILE)
425 (LIBGFOR_CHECK_CRLF, LIBGFOR_CHECK_FOR_BROKEN_ISFINITE)
426 (LIBGFOR_CHECK_FOR_BROKEN_ISNAN)
427 (LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY, LIBGFOR_CHECK_WORKING_STAT)
428 (LIBGFOR_CHECK_FPSETMASK, LIBGFOR_CHECK_MINGW_SNPRINTF):
429 Fix cache variable names.
430 * configure, Makefile.in: Regenerate.
432 2008-04-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
435 * intrinsics/cshift0.c (cshift0): Avoid divide by zero.
437 2008-04-20 Thomas Koenig <tkoenig@gcc.gnu.org>
440 * intrinsics/reshape_generic.c (reshape_internal): If the size
441 of the resized array is zero, as determined by the SHAPE
442 argument, return early.
443 * m4/reshape.m4: Likewise.
444 * generated/reshape_i4.c: Regererated.
445 * generated/reshape_i8.c: Regenerated.
446 * generated/reshape_i16.c: Regenerated.
447 * generated/reshape_r4.c: Regenerated.
448 * generated/reshape_r8.c: Regenerated.
449 * generated/reshape_r10.c: Regenerated.
450 * generated/reshape_r16.c: Regenerated.
451 * generated/reshape_c4.c: Regenerated.
452 * generated/reshape_c8.c: Regenerated.
453 * generated/reshape_c10.c: Regenerated.
454 * generated/reshape_c16.c: Regenerated.
456 2008-04-18 Paolo Bonzini <bonzini@gnu.org>
459 * aclocal.m4: Regenerate.
460 * configure: Regenerate.
462 2008-04-14 Thomas Koenig <tkoenig@gcc.gnu.org>
465 * intrinsics/spread_generic.c (spread): Use spread_i2()
466 for GFC_DTYPE_DERIVED_2 (fix typo from previous commit).
468 2008-04-13 Thomas Koenig <tkoenig@gcc.gnu.org>
469 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
473 configure.ac: Add test for uintptr_t.
474 configure: Regenerated.
475 config.h.in: Regenerated.
476 * libgfortran.h: GFC_DTYPE_DERIVED_1: New macro.
477 GFC_DTYPE_DERIVED_2: New macro.
478 GFC_DTYPE_DERIVED_4: New macro.
479 GFC_DTYPE_DERIVED_8: New macro.
480 GFC_DTYPE_DERIVED_16: New macro.
481 GFC_UNALIGNED_2: New macro.
482 GFC_UNALIGNED_4: New macro.
483 GFC_UNALIGNED_8: New macro.
484 GFC_UNALIGNED_16: New macro.
485 intptr_t: Define if we don't have it.
487 * runtime/backtrace.c (show_backtrace): Use intptr_t.
488 * intrinsics/signal.c (signal_sub): Likewise.
489 (signal_sub_int): Likewise.
490 (alarm_sub_int_i4): Likewise.
491 * intrinsics/spread_generic.c (spread): Use the integer
492 routines for handling derived types of sizes 1, 2, 4, 8 and 16
493 if the alignment of all pointers is correct.
494 (spread_scalar): Likewise.
495 * intrinsics/pack_generic.c (pack): Likewise.
496 Use GFD_DTYPE_TYPE_SIZE to avoid nested switch statements.
497 * intrinsics/unpack_generic.c (unpack1): Likewise.
499 * runtime/in_pack_generic.c (internal_pack): Likewise.
500 * runtime/in_unpack_generic.c (internal_unpack): Likewise.
502 2008-04-09 Jakub Jelinek <jakub@redhat.com>
504 * io/list_read.c (snprintf): Define if HAVE_SNPRINTF isn't defined.
505 (nml_read_obj): Add nml_err_msg_size argument. Pass it down to
506 recursive call. Use snprintf instead of sprintf when %s nl->var_name
508 (nml_get_obj_data): Add nml_err_msg_size argument. Pass it down to
509 nml_read_obj call. Use snprintf instead of sprintf when %s
510 nl->var_name is used. Pass nml_err_msg to nml_parse_qualifier instead
511 of parse_err_msg array. Append " for namelist variable " and
513 (namelist_read): Increase size of nml_err_msg array to 200. Pass
514 sizeof nml_err_msg as extra argument to nml_get_obj_data.
516 2008-04-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
518 PR fortran/25829 28655
519 * io/open.c (edit_modes): Set flags.async. (new_unit) Set flags.async
520 and flags.status. (st_open): Initialize flags.async.
521 * io/list_read.c (read_charactor): Use delim_status instead of
523 * io/read.c (read_x): Use pad_status instead of flags.pad.
524 * io/inquire.c (inquire_via_unit): Add new checks.
525 (inquire_via_filename): Likewise.
526 * io/io.h (st_parameter_inquire): Add new flags.
527 (st_parameter_dt): Likewise.
528 * io/unit.c (get_internal_unit): Set flags.async. (init_units): Set
530 * io/transfer.c: Add delim and pad option arrays. (read_sf): Use
531 pad_status instead of flags.pad. (read_block): Likewise.
532 (data_transfer_init): Set flags.async and add checks.
533 * io/write.c (write_character): Use delim_status.
534 (list_formatted_write_scalar): Likewise. (nml_write_obj): Likewise.
535 (namelist_write): Likewise.
537 2008-04-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
539 PR fortran/25829 28655
540 * gfortran.map: Add new symbol, _gfortran_st_wait.
541 * libgfortran.h (st_paramter_common): Add new I/O parameters.
542 * open.c (st_option decimal_opt[], st_option encoding_opt[],
543 st_option round_opt[], st_option sign_opt[], st_option async_opt[]): New
544 parameter option arrays. (edit_modes): Add checks for new parameters.
545 (new_unit): Likewise. (st_open): Likewise.
546 * list_read.c (CASE_SEPERATORS): Add ';' as a valid separator.
547 (eat_separator): Handle deimal comma. (read_logical): Fix whitespace.
548 (parse_real): Handle decimal comma. (read_real): Handle decimal comma.
549 * read.c (read_a): Use decimal status flag to allow comma in place of a
550 decimal point. (read_f): Allow comma as acceptable character in float.
551 According to decimal flag, substitute a period for a comma.
552 (read_x): If decimal status flag is comma, disable the read_comma flag,
553 not allowing comma as a delimiter, an extension otherwise.
554 * io.h: (unit_decimal, unit_encoding, unit_round, unit_sign,
555 unit_async): New enumerators. Add all new I/O parameters.
556 * unix.c (unix_stream, int_stream): Add io_mode asychronous I/O control.
557 (move_pos_offset, fd_alloc_w_at): Fix some whitespace.
558 (fd_sfree): Use new enumerator. (fd_read): Likewise.
559 (fd_write): Likewise. (fd_close): Fix whitespace.
560 (fd_open): Use new enumertors. (tempfile, regular_file,
561 open_external): Fix whitespace. (output_stream, error_stream): Set
562 method. (stream_offset): Fix whitespace.
563 * transfer.c: (st_option decimal_opt[], sign_opt[], blank_opt[]): New
564 option arrays. (formatted_transfer_scalar): Set sf_read_comma flag
565 based on new decimal_status flag. (data_transfer_init): Initialize new
566 parameters. Add checks for decimal, sign, and blank. (st_wait): New stub.
567 * format.c: (format_lex): Add format specifiers DP, DC, and D.
568 (parse_format_list): Parse the new specifiers.
569 * write.c (write_decimal): Use new sign enumerators to set the sign.
570 (write_complex): Handle decimal comma and semi-colon separator.
571 (nml_write_obj): Likewise.
572 * write_float.def: Revise sign enumerators. (calculate_sign): Use new
573 sign enumerators. (output_float): Likewise. Use new decimal_status flag
574 to set the decimal character to a point or a comma.
576 2008-03-28 Thomas Koenig <tkoenig@gcc.gnu.org>
580 * Makefile.am: Add new variable, i_spread_c, containing
581 pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, spread_i16.c,
582 spread_r4.c, spread_r8.c, spread_r10.c, spread_r16.c,
583 spread_c4.c, spread_c8.c, spread_c10.c, spread_c16.c.
584 * Makefile.in: Regenerated.
585 * libgfortran.h: Add prototypes for spread_i1, spread_i2,
586 spread_i4, spread_i8, spread_i16, spread_r4, spread_r8,
587 spread_c4, spread_c8, spread_c10, spread_c16,
588 spread_scalar_i1, spread_scalar_i2, spread_scalar_i4,
589 spread_scalar_i8, spread_scalar_i16, spread_scalar_r4
590 spread_scalar_r8, spread_scalar_c4, spread_scalar_c8,
591 spread_scalar_c10 and spread_scalar_c16.
592 Add macros to isolate both type and size information
593 from array descriptors with a single mask operation.
594 * intrinsics/spread_generic.c: Add calls to specific
596 * m4/spread.m4: New file.
597 * generated/spread_i1.c: New file.
598 * generated/spread_i2.c: New file.
599 * generated/spread_i4.c: New file.
600 * generated/spread_i8.c: New file.
601 * generated/spread_i16.c: New file.
602 * generated/spread_r4.c: New file.
603 * generated/spread_r8.c: New file.
604 * generated/spread_r10.c: New file.
605 * generated/spread_r16.c: New file.
606 * generated/spread_c4.c: New file.
607 * generated/spread_c8.c: New file.
608 * generated/spread_c10.c: New file.
609 * generated/spread_c16.c: New file.
611 2008-03-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
614 * io/transfer.c (write_buf): Don't pad the record, just return if the
615 data is NULL. (next_record_w): If there are bytes left in the record
616 for unformatted direct I/O, pad out the record with zero bytes.
618 2008-03-28 Tobias Burnus <burnus@net-b.de>
621 * intrinsics/associated.c (associated): Ignore different
622 stride of pointer vs. target if only one element is referred.
624 2008-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
626 * io/unix.c (fd_close): Do not close STDIN.
628 2007-03-23 Thomas Koenig <tkoenig@gcc.gnu.org
631 * Makefile.am: Add new variable, i_unpack_c, containing
632 unpack_i1.c, unpack_i2.c, unpack_i4.c, unpack_i8.c,
633 unpack_i16.c, unpack_r4.c, unpack_r8.c, unpack_r10.c,
634 unpack_r16.c, unpack_c4.c, unpack_c8.c, unpack_c10.c
636 Add i_unpack_c to gfor_built_src.
637 Add rule to generate i_unpack_c from m4/unpack.m4.
638 * Makefile.in: Regenerated.
639 * libgfortran.h: Add prototypes for unpack0_i1, unpack0_i2,
640 unpack0_i4, unpack0_i8, unpack0_i16, unpack0_r4, unpack0_r8,
641 unpack0_r10, unpack0_r16, unpack0_c4, unpack0_c8, unpack0_c10,
642 unpack0_c16, unpack1_i1, unpack1_i2, unpack1_i4, unpack1_i8,
643 unpack1_i16, unpack1_r4, unpack1_r8, unpack1_r10, unpack1_r16,
644 unpack1_c4, unpack1_c8, unpack1_c10 and unpack1_c16.
645 * intrinsics/pack_generic.c (unpack1): Add calls to specific
647 (unpack0): Add calls to specific unpack0 functions.
648 * m4/unpack.m4: New file.
649 * generated/unpack_i1.c: New file.
650 * generated/unpack_i2.c: New file.
651 * generated/unpack_i4.c: New file.
652 * generated/unpack_i8.c: New file.
653 * generated/unpack_i16.c: New file.
654 * generated/unpack_r4.c: New file.
655 * generated/unpack_r8.c: New file.
656 * generated/unpack_r10.c: New file.
657 * generated/unpack_r16.c: New file.
658 * generated/unpack_c4.c: New file.
659 * generated/unpack_c8.c: New file.
660 * generated/unpack_c10.c: New file.
661 * generated/unpack_c16.c: New file.
663 2008-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
666 * io/transfer.c (data_transfer_init): Fix whitespace.
667 (next_record_w): Truncate the file only if the stream
668 position is short of the file end.
670 2008-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
672 * intrinsics/pack_generic.c: Fix typo.
674 2008-03-21 Janne Blomqvist <jb@gcc.gnu.org>
676 * gfortran.map: Move erfc_scaled symbols to new symbol node
677 GFORTRAN_1.1, thereby fixing ABI bug introduced in r132846.
679 2008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
682 * runtime/in_pack_generic.c (internal_pack): Call correct
683 function, pack_i16, for GFC_INTEGER_16.
685 2008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
688 * Makefile.am: Add new variable, i_pack_c, containing
689 pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, pack_i16.c,
690 pack_r4.c, pack_r8.c, pack_r10.c, pack_r16.c, pack_c4.c,
691 pack_c8.c, pack_c10.c, pack_c16.c.
692 Add m4/pack.m4 to m4_files.
693 Add i_pack_c to gfor_built_src.
694 Add rule to generate i_pack_c from m4/pack.m4.
695 * Makefile.in: Regenerated.
696 * libgfortran.h: Add prototypes for pack_i1, pack_i2, pack_i4,
697 pack_i8, pack_i16, pack_r4, pack_r8, pack_c4, pack_c8,
699 * intrinsics/pack_generic.c: Add calls to specific
701 * m4/pack.m4: New file.
702 * generated/pack_i1.c: New file.
703 * generated/pack_i2.c: New file.
704 * generated/pack_i4.c: New file.
705 * generated/pack_i8.c: New file.
706 * generated/pack_i16.c: New file.
707 * generated/pack_r4.c: New file.
708 * generated/pack_r8.c: New file.
709 * generated/pack_r10.c: New file.
710 * generated/pack_r16.c: New file.
711 * generated/pack_c4.c: New file.
712 * generated/pack_c8.c: New file.
713 * generated/pack_c10.c: New file.
714 * generated/pack_c16.c: New file.
716 2008-03-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
719 * io/list_read.c (free_line): Clear the line buffer enable flag and
720 reset the index into line_buffer, aka item_count.
721 (next_char): Cleanup whitespace.
722 (read_logical): Use unget_char to assure that the first character of the
723 bad logical is saved in case it is part of an object name. Remove the
724 clearing of index and flag that is now in free_line.
725 (read_real): Likewise.
727 2008-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
730 * runtime/in_pack_generic.c (internal_pack): Fix typo in
733 2008-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
736 * Makefile.am (in_pack_c): Add in_pack_i1.c, in_pack_i2.c,
737 in_pack_r4.c, in_pack_r8.c, in_pack_r10.c and in_pack_r16.c.
738 (in_unpack_c): Add in_unpack_i1.c, in_unpack_i2.c,
739 in_unpack_r4.c, in_unpack_r8.c, in_unpack_r10.c and
741 * Makefile.in: Regenerate.
742 * libgfortran.h: Add prototypes for internal_pack_1,
743 internal_pack_2, internal_pack_16, internal_pack_r4,
744 internal_pack_r8, internal_pack_r10, internal_pack_r16,
745 internal_pack_c10 and internal_pack_c16. Add prototypes for
746 internal_unpack_1, internal_unpack_2, internal_unpack_16,
747 internal_unpack_r4, internal_unpack_r8, internal_unpack_r10,
748 internal_unpack_r16, internal_unpack_c10 and
750 * runtime/in_pack_generic.c (internal_pack): Use sizeof instead
752 Add calls to internal_pack_1, internal_pack_2,
753 internal_pack_16, internal_pack_r4, internal_pack_r8,
754 internal_pack_r10, internal_pack_r16, internal_pack_c10 and
756 * runtime/in_unpack_generic.c (internal_unpack): Use sizeof
757 instead of hardwired sizes.
758 Add calls to internal_unpack_1, internal_unpack_2,
759 internal_unpack_16, internal_unpack_r4, internal_unpack_r8,
760 internal_unpack_r10, internal_unpack_r16, internal_unpack_c10
761 and internal_unpack_c16.
762 * generated/in_pack_r4.c: New file.
763 * generated/in_pack_i2.c: New file.
764 * generated/in_unpack_i1.c: New file.
765 * generated/in_pack_r10.c: New file.
766 * generated/in_unpack_r4.c: New file.
767 * generated/in_unpack_i2.c: New file.
768 * generated/in_unpack_r16.c: New file.
769 * generated/in_pack_r8.c: New file.
770 * generated/in_unpack_r10.c: New file.
771 * generated/in_unpack_r8.c: New file.
772 * generated/in_pack_r16.c: New file.
773 * generated/in_pack_i1.c: New file.
775 2008-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
778 * io/list_read.c (eat_separator): If next character after eatline is '!'
781 2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
783 * aclocal.m4: Regenerate.
784 * configure: Likewise.
785 * Makefile.in: Likewise.
787 2008-03-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
790 * intrinsics/erfc_scaled_inc.c: Only define the long double
791 variant of erfc_scaled if expl is available.
793 2008-03-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
796 * intrinsics/random.c (scramble_seed, unscramble_seed): New
798 (random_seed_i4): Scramble the seed the user gives us before
799 storing it, and unscramble it when we return it back later.
801 2008-03-05 Hans-Peter Nilsson <hp@axis.com>
804 * io/unix.c (fd_truncate): Fold s->special_file case into
805 success case of ftruncate/chsize call instead of the failure case.
806 Make failure case actually return failure. Properly update stream
807 pointers on failure. Call runtime_error for targets without
808 neither ftruncate nor chsize where such a call would be needed.
810 2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
813 * intrinsics/erfc_scaled_inc.c: New file.
814 * intrinsics/erfc_scaled.c: New file.
815 * gfortran.map (GFORTRAN_1.0): Add _gfortran_erfc_scaled_r*.
816 * Makefile.am: Add intrinsics/erfc_scaled.c.
817 * config.h.in: Regenerate.
818 * configure: Regenerate.
819 * Makefile.in: Regenerate.
821 2008-03-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
824 * intrinsics/time_1.h (__time_1): Fix calculation of user_usec
827 2008-03-01 Janne Blomqvist <jb@gcc.gnu.org>
830 * io/unit.c (destroy_unit_mutex): Call __gthread_mutex_destroy
831 instead of macro kludge.
833 2008-02-25 Janne Blomqvist <jb@gcc.gnu.org>
836 * Makefile.am: Add -fcx-fortran-rules to AM_CFLAGS for all of
838 * Makefile.in: Regenerated.
840 2008-02-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
842 * m4/ifunction_logical.m4: Add casts to get rid of warnings.
843 * generated/all_l1.c: Regenerate.
844 * generated/all_l2.c: Regenerate.
845 * generated/all_l4.c: Regenerate.
846 * generated/all_l8.c: Regenerate.
847 * generated/all_l16.c: Regenerate.
848 * generated/any_l1.c: Regenerate.
849 * generated/any_l2.c: Regenerate.
850 * generated/any_l4.c: Regenerate.
851 * generated/any_l8.c: Regenerate.
852 * generated/any_l16.c: Regenerate.
853 * generated/count_1_l.c: Regenerate.
854 * generated/count_2_l.c: Regenerate.
855 * generated/count_4_l.c: Regenerate.
856 * generated/count_8_l.c: Regenerate.
857 * generated/count_16_l.c: Regenerate.
859 2008-02-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
862 * acinclude.m4: Don't use HAVE_MATH_H.
863 * configure: Regenerate.
865 2008-02-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
868 * io/transfer.c (next_record_w): Truncate after the last record for
872 * io/transfer.c (data_transfer_init): Initialize dtp->rec if writing.
875 * io/transfer.c (formatted_transfer_scalar): Flush the buffer if skips
876 is less than zero. (next_record_w): Use sseek to position the file to
877 the max position reached.
879 2008-02-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
882 * write_float.def (output_float): Add error checks for zero digits
883 after decimal point in E and D format specifiers.
885 2008-02-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
888 * io/unit.c (destroy_unit_mutex): New function that uses
889 __gthread_mutex_destroy_function or pthread_mutex_destroy after
890 unlocking and before free_mem for final closure of I/O unit.
891 (delete_root): Use new function.
892 (free_internal_unit): Likewise.
893 (close_unit_1): Likewise.
895 2008-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
898 * m4/shape.m4: Return 0 for extents <= 0.
899 * generated/shape_i4.c: Regenerated.
900 * generated/shape_i8.c: Regenerated.
901 * generated/shape_i16.c: Regenerated.
903 2008-01-27 Thomas Koenig <tkoenig@gcc.gnu.org>
906 * m4/shape.m4: If return array is empty, return early.
907 * generated/shape_i4.c: Regenerated.
908 * generated/shape_i8.c: Regenerated.
909 * generated/shape_i16.c: Regenerated.
911 2008-01-26 Thomas Koenig <tkoenig@gcc.gnu.org>
913 PR libfofortran/34887
914 * io/transfer.c (next_record_w): Always move to the farthest
915 position when completing the record (also when we are
916 processing a slash edit descriptor).
918 2008-01-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
921 * io/transfer.c (write_buf): Handle case of zero sized array.
922 (transfer_array): Set data pointer to NULL and size to zero. Then
923 make a data transfer and return.
925 2008-01-24 David Edelsohn <edelsohn@gnu.org>
927 * configure: Regenerate.
929 2008-01-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
932 * io/inquire.c (inquire_via_unit): If a unit is opened, return values
933 according to the open action for DIRECT, FORMATTED, and UNFORMATTED.
934 (inquire_via_filename): Return "UNKNOWN" for SEQUENTIAL, DIRECT,
935 FORAMATTED, and UNFORMATTED inquiries.
936 * io/unix.c (inquire_sequential): Return "UNKNOWN" when appropriate
937 for files that are not opened. (inquire_direct): Same.
938 (inquire_formatted): Same.
940 2008-01-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
943 * io/transfer.c (formatted_transfer_scalar): Set max_pos to the greater
944 of the current max_pos or the newly calculated position.
946 2008-01-18 Tobias Burnus <burnus@net-b.de>
948 * io/write.c (write_real): Increase default precision
951 2008-01-16 Steven Bosscher <steven@gcc.gnu.org>
954 * mk-kinds-h.sh: Compile with -S to avoid calling the assembler,
955 to avoid piping the -fdump-parse-tree output to the assembler
956 when configuring with -pipe.
957 * mk-sik-inc.sh: Likewise.
958 * mk-srk-inc.sh: Likewise.
960 2008-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
963 * gfortran.am: Added _gfortran_all_l1, _gfortran_all_l2,
964 _gfortran_any_l1, _gfortran_any_l2, -28,15 _gfortran_count_1_l,
965 _gfortran_count_16_l, _gfortran_count_2_l, _gfortran_count_4_l and
966 _gfortran_count_8_l Removed _gfortran_count_16_l16,
967 _gfortran_count_16_l4, _gfortran_count_16_l8,
968 _gfortran_count_4_l16, _gfortran_count_4_l4, _gfortran_count_4_l8,
969 _gfortran_count_8_l16, _gfortran_count_8_l4 and
970 _gfortran_count_8_l8.
971 * Makefile.am: Added generated/any_l1.c and generated/any_l2.c to
972 i_any_c. Added generated/all_l1. and generated/all_l2.c to
973 i_all_c. Removed generated/count_4_l4.c, generated/count_8_l4.c,
974 generated/count_16_l4.c, generated/count_4_l8.c,
975 generated/count_8_l8.c, generated/count_16_l8.c,
976 generated/count_4_l16.c, generated/count_8_l16.c, and
977 generated/count_16_l16.c from i_count_c. Added count_1_l.c,
978 count_2_l.c, count_4_l.c, count_8_l.c and count_16_l.c to
979 i_count_c. I_M4_DEPS2 depends on ifunction_logical.m4, for
980 any of the files generated from all.m4, any.m4 and count.m4.
981 * Makefile.in: Regenerated.
982 * m4/ifunction_logical.m4: New file. Use
983 GFC_LOGICAL_1 pointer for access to source arrays.
984 * m4/any.m4: Include ifunction_logical.m4 instead of
985 ifunction.m4. Don't check atype_name.
986 * m4/all.m4: Likewise.
987 * m4/count.m4: Likewise.
988 * generated/any_l1.c: New file.
989 * generated/any_l2.c: New file.
990 * generated/all_l1.c: New file.
991 * generated/count_1_l.c: New file.
992 * generated/count_2_l.c: New file.
993 * generated/count_4_l.c: New file.
994 * generated/count_8_l.c: New file.
995 * generated/count_16_l.c: New file.
996 * generated/any_l4.c: Regenerated.
997 * generated/any_l8.c: Regenerated.
998 * generated/any_l16.c: Regenerated.
999 * generated/all_l4.c: Regenerated.
1000 * generated/all_l8.c: Regenerated.
1001 * generated/all_l16.c: Regenerated.
1002 * generated/count_4_l4.c: Removed.
1003 * generated/count_4_l8.c: Removed.
1004 * generated/count_4_l16.c: Removed.
1005 * generated/count_8_l4.c: Removed.
1006 * generated/count_8_l8.c: Removed.
1007 * generated/count_8_l16.c: Removed.
1008 * generated/count_16_l4.c: Removed.
1009 * generated/count_16_l8.c: Removed.
1010 * generated/count_16_l16.c: Removed.
1012 2008-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
1015 * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Use %ld
1016 in printf format for all bounds checking; cast all
1017 integer-like arguments to runtime_error() to long int.
1018 (`m'name`'rtype_qual`_'atype_code): Likewise.
1019 (`s'name`'rtype_qual`_'atype_code): Likewise.
1020 * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Likewise.
1021 (`m'name`'rtype_qual`_'atype_code): Likewise.
1022 (`s'name`'rtype_qual`_'atype_code): Likewise.
1023 * generated/all_l16.c: Regenerated.
1024 * generated/all_l4.c: Regenerated.
1025 * generated/all_l8.c: Regenerated.
1026 * generated/any_l16.c: Regenerated.
1027 * generated/any_l4.c: Regenerated.
1028 * generated/any_l8.c: Regenerated.
1029 * generated/count_16_l16.c: Regenerated.
1030 * generated/count_16_l4.c: Regenerated.
1031 * generated/count_16_l8.c: Regenerated.
1032 * generated/count_4_l16.c: Regenerated.
1033 * generated/count_4_l4.c: Regenerated.
1034 * generated/count_4_l8.c: Regenerated.
1035 * generated/count_8_l16.c: Regenerated.
1036 * generated/count_8_l4.c: Regenerated.
1037 * generated/count_8_l8.c: Regenerated.
1038 * generated/maxloc0_16_i1.c: Regenerated.
1039 * generated/maxloc0_16_i16.c: Regenerated.
1040 * generated/maxloc0_16_i2.c: Regenerated.
1041 * generated/maxloc0_16_i4.c: Regenerated.
1042 * generated/maxloc0_16_i8.c: Regenerated.
1043 * generated/maxloc0_16_r10.c: Regenerated.
1044 * generated/maxloc0_16_r16.c: Regenerated.
1045 * generated/maxloc0_16_r4.c: Regenerated.
1046 * generated/maxloc0_16_r8.c: Regenerated.
1047 * generated/maxloc0_4_i1.c: Regenerated.
1048 * generated/maxloc0_4_i16.c: Regenerated.
1049 * generated/maxloc0_4_i2.c: Regenerated.
1050 * generated/maxloc0_4_i4.c: Regenerated.
1051 * generated/maxloc0_4_i8.c: Regenerated.
1052 * generated/maxloc0_4_r10.c: Regenerated.
1053 * generated/maxloc0_4_r16.c: Regenerated.
1054 * generated/maxloc0_4_r4.c: Regenerated.
1055 * generated/maxloc0_4_r8.c: Regenerated.
1056 * generated/maxloc0_8_i1.c: Regenerated.
1057 * generated/maxloc0_8_i16.c: Regenerated.
1058 * generated/maxloc0_8_i2.c: Regenerated.
1059 * generated/maxloc0_8_i4.c: Regenerated.
1060 * generated/maxloc0_8_i8.c: Regenerated.
1061 * generated/maxloc0_8_r10.c: Regenerated.
1062 * generated/maxloc0_8_r16.c: Regenerated.
1063 * generated/maxloc0_8_r4.c: Regenerated.
1064 * generated/maxloc0_8_r8.c: Regenerated.
1065 * generated/maxloc1_16_i1.c: Regenerated.
1066 * generated/maxloc1_16_i16.c: Regenerated.
1067 * generated/maxloc1_16_i2.c: Regenerated.
1068 * generated/maxloc1_16_i4.c: Regenerated.
1069 * generated/maxloc1_16_i8.c: Regenerated.
1070 * generated/maxloc1_16_r10.c: Regenerated.
1071 * generated/maxloc1_16_r16.c: Regenerated.
1072 * generated/maxloc1_16_r4.c: Regenerated.
1073 * generated/maxloc1_16_r8.c: Regenerated.
1074 * generated/maxloc1_4_i1.c: Regenerated.
1075 * generated/maxloc1_4_i16.c: Regenerated.
1076 * generated/maxloc1_4_i2.c: Regenerated.
1077 * generated/maxloc1_4_i4.c: Regenerated.
1078 * generated/maxloc1_4_i8.c: Regenerated.
1079 * generated/maxloc1_4_r10.c: Regenerated.
1080 * generated/maxloc1_4_r16.c: Regenerated.
1081 * generated/maxloc1_4_r4.c: Regenerated.
1082 * generated/maxloc1_4_r8.c: Regenerated.
1083 * generated/maxloc1_8_i1.c: Regenerated.
1084 * generated/maxloc1_8_i16.c: Regenerated.
1085 * generated/maxloc1_8_i2.c: Regenerated.
1086 * generated/maxloc1_8_i4.c: Regenerated.
1087 * generated/maxloc1_8_i8.c: Regenerated.
1088 * generated/maxloc1_8_r10.c: Regenerated.
1089 * generated/maxloc1_8_r16.c: Regenerated.
1090 * generated/maxloc1_8_r4.c: Regenerated.
1091 * generated/maxloc1_8_r8.c: Regenerated.
1092 * generated/maxval_i1.c: Regenerated.
1093 * generated/maxval_i16.c: Regenerated.
1094 * generated/maxval_i2.c: Regenerated.
1095 * generated/maxval_i4.c: Regenerated.
1096 * generated/maxval_i8.c: Regenerated.
1097 * generated/maxval_r10.c: Regenerated.
1098 * generated/maxval_r16.c: Regenerated.
1099 * generated/maxval_r4.c: Regenerated.
1100 * generated/maxval_r8.c: Regenerated.
1101 * generated/minloc0_16_i1.c: Regenerated.
1102 * generated/minloc0_16_i16.c: Regenerated.
1103 * generated/minloc0_16_i2.c: Regenerated.
1104 * generated/minloc0_16_i4.c: Regenerated.
1105 * generated/minloc0_16_i8.c: Regenerated.
1106 * generated/minloc0_16_r10.c: Regenerated.
1107 * generated/minloc0_16_r16.c: Regenerated.
1108 * generated/minloc0_16_r4.c: Regenerated.
1109 * generated/minloc0_16_r8.c: Regenerated.
1110 * generated/minloc0_4_i1.c: Regenerated.
1111 * generated/minloc0_4_i16.c: Regenerated.
1112 * generated/minloc0_4_i2.c: Regenerated.
1113 * generated/minloc0_4_i4.c: Regenerated.
1114 * generated/minloc0_4_i8.c: Regenerated.
1115 * generated/minloc0_4_r10.c: Regenerated.
1116 * generated/minloc0_4_r16.c: Regenerated.
1117 * generated/minloc0_4_r4.c: Regenerated.
1118 * generated/minloc0_4_r8.c: Regenerated.
1119 * generated/minloc0_8_i1.c: Regenerated.
1120 * generated/minloc0_8_i16.c: Regenerated.
1121 * generated/minloc0_8_i2.c: Regenerated.
1122 * generated/minloc0_8_i4.c: Regenerated.
1123 * generated/minloc0_8_i8.c: Regenerated.
1124 * generated/minloc0_8_r10.c: Regenerated.
1125 * generated/minloc0_8_r16.c: Regenerated.
1126 * generated/minloc0_8_r4.c: Regenerated.
1127 * generated/minloc0_8_r8.c: Regenerated.
1128 * generated/minloc1_16_i1.c: Regenerated.
1129 * generated/minloc1_16_i16.c: Regenerated.
1130 * generated/minloc1_16_i2.c: Regenerated.
1131 * generated/minloc1_16_i4.c: Regenerated.
1132 * generated/minloc1_16_i8.c: Regenerated.
1133 * generated/minloc1_16_r10.c: Regenerated.
1134 * generated/minloc1_16_r16.c: Regenerated.
1135 * generated/minloc1_16_r4.c: Regenerated.
1136 * generated/minloc1_16_r8.c: Regenerated.
1137 * generated/minloc1_4_i1.c: Regenerated.
1138 * generated/minloc1_4_i16.c: Regenerated.
1139 * generated/minloc1_4_i2.c: Regenerated.
1140 * generated/minloc1_4_i4.c: Regenerated.
1141 * generated/minloc1_4_i8.c: Regenerated.
1142 * generated/minloc1_4_r10.c: Regenerated.
1143 * generated/minloc1_4_r16.c: Regenerated.
1144 * generated/minloc1_4_r4.c: Regenerated.
1145 * generated/minloc1_4_r8.c: Regenerated.
1146 * generated/minloc1_8_i1.c: Regenerated.
1147 * generated/minloc1_8_i16.c: Regenerated.
1148 * generated/minloc1_8_i2.c: Regenerated.
1149 * generated/minloc1_8_i4.c: Regenerated.
1150 * generated/minloc1_8_i8.c: Regenerated.
1151 * generated/minloc1_8_r10.c: Regenerated.
1152 * generated/minloc1_8_r16.c: Regenerated.
1153 * generated/minloc1_8_r4.c: Regenerated.
1154 * generated/minloc1_8_r8.c: Regenerated.
1155 * generated/minval_i1.c: Regenerated.
1156 * generated/minval_i16.c: Regenerated.
1157 * generated/minval_i2.c: Regenerated.
1158 * generated/minval_i4.c: Regenerated.
1159 * generated/minval_i8.c: Regenerated.
1160 * generated/minval_r10.c: Regenerated.
1161 * generated/minval_r16.c: Regenerated.
1162 * generated/minval_r4.c: Regenerated.
1163 * generated/minval_r8.c: Regenerated.
1164 * generated/product_c10.c: Regenerated.
1165 * generated/product_c16.c: Regenerated.
1166 * generated/product_c4.c: Regenerated.
1167 * generated/product_c8.c: Regenerated.
1168 * generated/product_i1.c: Regenerated.
1169 * generated/product_i16.c: Regenerated.
1170 * generated/product_i2.c: Regenerated.
1171 * generated/product_i4.c: Regenerated.
1172 * generated/product_i8.c: Regenerated.
1173 * generated/product_r10.c: Regenerated.
1174 * generated/product_r16.c: Regenerated.
1175 * generated/product_r4.c: Regenerated.
1176 * generated/product_r8.c: Regenerated.
1177 * generated/sum_c10.c: Regenerated.
1178 * generated/sum_c16.c: Regenerated.
1179 * generated/sum_c4.c: Regenerated.
1180 * generated/sum_c8.c: Regenerated.
1181 * generated/sum_i1.c: Regenerated.
1182 * generated/sum_i16.c: Regenerated.
1183 * generated/sum_i2.c: Regenerated.
1184 * generated/sum_i4.c: Regenerated.
1185 * generated/sum_i8.c: Regenerated.
1186 * generated/sum_r10.c: Regenerated.
1187 * generated/sum_r16.c: Regenerated.
1188 * generated/sum_r4.c: Regenerated.
1189 * generated/sum_r8.c: Regenerated.
1191 2008-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
1194 * m4/iparm.m4 (upcase): New macro (copied from the m4 manual).
1195 (u_name): New macro for the upper case name of the intrinsic.
1196 * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Add
1197 bounds checking and rank check, depending on
1198 compile_options.bounds_check.
1199 (`m'name`'rtype_qual`_'atype_code): Likewise.
1200 (`s'name`'rtype_qual`_'atype_code): Likewise.
1201 * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Add
1202 bounds checking and rank check, depending on
1203 compile_options.bounds_check.
1204 (`m'name`'rtype_qual`_'atype_code): Likewise.
1205 (`s'name`'rtype_qual`_'atype_code): Likewise.
1206 * generated/all_l16.c: Regenerated.
1207 * generated/all_l4.c: Regenerated.
1208 * generated/all_l8.c: Regenerated.
1209 * generated/any_l16.c: Regenerated.
1210 * generated/any_l4.c: Regenerated.
1211 * generated/any_l8.c: Regenerated.
1212 * generated/count_16_l16.c: Regenerated.
1213 * generated/count_16_l4.c: Regenerated.
1214 * generated/count_16_l8.c: Regenerated.
1215 * generated/count_4_l16.c: Regenerated.
1216 * generated/count_4_l4.c: Regenerated.
1217 * generated/count_4_l8.c: Regenerated.
1218 * generated/count_8_l16.c: Regenerated.
1219 * generated/count_8_l4.c: Regenerated.
1220 * generated/count_8_l8.c: Regenerated.
1221 * generated/maxloc0_16_i1.c: Regenerated.
1222 * generated/maxloc0_16_i16.c: Regenerated.
1223 * generated/maxloc0_16_i2.c: Regenerated.
1224 * generated/maxloc0_16_i4.c: Regenerated.
1225 * generated/maxloc0_16_i8.c: Regenerated.
1226 * generated/maxloc0_16_r10.c: Regenerated.
1227 * generated/maxloc0_16_r16.c: Regenerated.
1228 * generated/maxloc0_16_r4.c: Regenerated.
1229 * generated/maxloc0_16_r8.c: Regenerated.
1230 * generated/maxloc0_4_i1.c: Regenerated.
1231 * generated/maxloc0_4_i16.c: Regenerated.
1232 * generated/maxloc0_4_i2.c: Regenerated.
1233 * generated/maxloc0_4_i4.c: Regenerated.
1234 * generated/maxloc0_4_i8.c: Regenerated.
1235 * generated/maxloc0_4_r10.c: Regenerated.
1236 * generated/maxloc0_4_r16.c: Regenerated.
1237 * generated/maxloc0_4_r4.c: Regenerated.
1238 * generated/maxloc0_4_r8.c: Regenerated.
1239 * generated/maxloc0_8_i1.c: Regenerated.
1240 * generated/maxloc0_8_i16.c: Regenerated.
1241 * generated/maxloc0_8_i2.c: Regenerated.
1242 * generated/maxloc0_8_i4.c: Regenerated.
1243 * generated/maxloc0_8_i8.c: Regenerated.
1244 * generated/maxloc0_8_r10.c: Regenerated.
1245 * generated/maxloc0_8_r16.c: Regenerated.
1246 * generated/maxloc0_8_r4.c: Regenerated.
1247 * generated/maxloc0_8_r8.c: Regenerated.
1248 * generated/maxloc1_16_i1.c: Regenerated.
1249 * generated/maxloc1_16_i16.c: Regenerated.
1250 * generated/maxloc1_16_i2.c: Regenerated.
1251 * generated/maxloc1_16_i4.c: Regenerated.
1252 * generated/maxloc1_16_i8.c: Regenerated.
1253 * generated/maxloc1_16_r10.c: Regenerated.
1254 * generated/maxloc1_16_r16.c: Regenerated.
1255 * generated/maxloc1_16_r4.c: Regenerated.
1256 * generated/maxloc1_16_r8.c: Regenerated.
1257 * generated/maxloc1_4_i1.c: Regenerated.
1258 * generated/maxloc1_4_i16.c: Regenerated.
1259 * generated/maxloc1_4_i2.c: Regenerated.
1260 * generated/maxloc1_4_i4.c: Regenerated.
1261 * generated/maxloc1_4_i8.c: Regenerated.
1262 * generated/maxloc1_4_r10.c: Regenerated.
1263 * generated/maxloc1_4_r16.c: Regenerated.
1264 * generated/maxloc1_4_r4.c: Regenerated.
1265 * generated/maxloc1_4_r8.c: Regenerated.
1266 * generated/maxloc1_8_i1.c: Regenerated.
1267 * generated/maxloc1_8_i16.c: Regenerated.
1268 * generated/maxloc1_8_i2.c: Regenerated.
1269 * generated/maxloc1_8_i4.c: Regenerated.
1270 * generated/maxloc1_8_i8.c: Regenerated.
1271 * generated/maxloc1_8_r10.c: Regenerated.
1272 * generated/maxloc1_8_r16.c: Regenerated.
1273 * generated/maxloc1_8_r4.c: Regenerated.
1274 * generated/maxloc1_8_r8.c: Regenerated.
1275 * generated/maxval_i1.c: Regenerated.
1276 * generated/maxval_i16.c: Regenerated.
1277 * generated/maxval_i2.c: Regenerated.
1278 * generated/maxval_i4.c: Regenerated.
1279 * generated/maxval_i8.c: Regenerated.
1280 * generated/maxval_r10.c: Regenerated.
1281 * generated/maxval_r16.c: Regenerated.
1282 * generated/maxval_r4.c: Regenerated.
1283 * generated/maxval_r8.c: Regenerated.
1284 * generated/minloc0_16_i1.c: Regenerated.
1285 * generated/minloc0_16_i16.c: Regenerated.
1286 * generated/minloc0_16_i2.c: Regenerated.
1287 * generated/minloc0_16_i4.c: Regenerated.
1288 * generated/minloc0_16_i8.c: Regenerated.
1289 * generated/minloc0_16_r10.c: Regenerated.
1290 * generated/minloc0_16_r16.c: Regenerated.
1291 * generated/minloc0_16_r4.c: Regenerated.
1292 * generated/minloc0_16_r8.c: Regenerated.
1293 * generated/minloc0_4_i1.c: Regenerated.
1294 * generated/minloc0_4_i16.c: Regenerated.
1295 * generated/minloc0_4_i2.c: Regenerated.
1296 * generated/minloc0_4_i4.c: Regenerated.
1297 * generated/minloc0_4_i8.c: Regenerated.
1298 * generated/minloc0_4_r10.c: Regenerated.
1299 * generated/minloc0_4_r16.c: Regenerated.
1300 * generated/minloc0_4_r4.c: Regenerated.
1301 * generated/minloc0_4_r8.c: Regenerated.
1302 * generated/minloc0_8_i1.c: Regenerated.
1303 * generated/minloc0_8_i16.c: Regenerated.
1304 * generated/minloc0_8_i2.c: Regenerated.
1305 * generated/minloc0_8_i4.c: Regenerated.
1306 * generated/minloc0_8_i8.c: Regenerated.
1307 * generated/minloc0_8_r10.c: Regenerated.
1308 * generated/minloc0_8_r16.c: Regenerated.
1309 * generated/minloc0_8_r4.c: Regenerated.
1310 * generated/minloc0_8_r8.c: Regenerated.
1311 * generated/minloc1_16_i1.c: Regenerated.
1312 * generated/minloc1_16_i16.c: Regenerated.
1313 * generated/minloc1_16_i2.c: Regenerated.
1314 * generated/minloc1_16_i4.c: Regenerated.
1315 * generated/minloc1_16_i8.c: Regenerated.
1316 * generated/minloc1_16_r10.c: Regenerated.
1317 * generated/minloc1_16_r16.c: Regenerated.
1318 * generated/minloc1_16_r4.c: Regenerated.
1319 * generated/minloc1_16_r8.c: Regenerated.
1320 * generated/minloc1_4_i1.c: Regenerated.
1321 * generated/minloc1_4_i16.c: Regenerated.
1322 * generated/minloc1_4_i2.c: Regenerated.
1323 * generated/minloc1_4_i4.c: Regenerated.
1324 * generated/minloc1_4_i8.c: Regenerated.
1325 * generated/minloc1_4_r10.c: Regenerated.
1326 * generated/minloc1_4_r16.c: Regenerated.
1327 * generated/minloc1_4_r4.c: Regenerated.
1328 * generated/minloc1_4_r8.c: Regenerated.
1329 * generated/minloc1_8_i1.c: Regenerated.
1330 * generated/minloc1_8_i16.c: Regenerated.
1331 * generated/minloc1_8_i2.c: Regenerated.
1332 * generated/minloc1_8_i4.c: Regenerated.
1333 * generated/minloc1_8_i8.c: Regenerated.
1334 * generated/minloc1_8_r10.c: Regenerated.
1335 * generated/minloc1_8_r16.c: Regenerated.
1336 * generated/minloc1_8_r4.c: Regenerated.
1337 * generated/minloc1_8_r8.c: Regenerated.
1338 * generated/minval_i1.c: Regenerated.
1339 * generated/minval_i16.c: Regenerated.
1340 * generated/minval_i2.c: Regenerated.
1341 * generated/minval_i4.c: Regenerated.
1342 * generated/minval_i8.c: Regenerated.
1343 * generated/minval_r10.c: Regenerated.
1344 * generated/minval_r16.c: Regenerated.
1345 * generated/minval_r4.c: Regenerated.
1346 * generated/minval_r8.c: Regenerated.
1347 * generated/product_c10.c: Regenerated.
1348 * generated/product_c16.c: Regenerated.
1349 * generated/product_c4.c: Regenerated.
1350 * generated/product_c8.c: Regenerated.
1351 * generated/product_i1.c: Regenerated.
1352 * generated/product_i16.c: Regenerated.
1353 * generated/product_i2.c: Regenerated.
1354 * generated/product_i4.c: Regenerated.
1355 * generated/product_i8.c: Regenerated.
1356 * generated/product_r10.c: Regenerated.
1357 * generated/product_r16.c: Regenerated.
1358 * generated/product_r4.c: Regenerated.
1359 * generated/product_r8.c: Regenerated.
1360 * generated/sum_c10.c: Regenerated.
1361 * generated/sum_c16.c: Regenerated.
1362 * generated/sum_c4.c: Regenerated.
1363 * generated/sum_c8.c: Regenerated.
1364 * generated/sum_i1.c: Regenerated.
1365 * generated/sum_i16.c: Regenerated.
1366 * generated/sum_i2.c: Regenerated.
1367 * generated/sum_i4.c: Regenerated.
1368 * generated/sum_i8.c: Regenerated.
1369 * generated/sum_r10.c: Regenerated.
1370 * generated/sum_r16.c: Regenerated.
1371 * generated/sum_r4.c: Regenerated.
1372 * generated/sum_r8.c: Regenerated.
1374 2008-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1377 * io/list_read.c (next_char): Only save the EOF condition for later if
1380 2008-01-03 Thomas Koenig <tkoenig@gcc.gnu.org>
1383 * io/io.h: Adjust protoypes for open_internal(),
1384 next_array_record() and init_loop_spec().
1385 * io/list_read.c (next_char): Use argument "finished"
1386 of next_array_record to check for end on internal file.
1387 * io/unit.c: Calculate the offset for an array
1388 internal file and supply this informatin to open_internal().
1389 * io/unix.c (open_internal): Set the offset for the internal
1391 * io/transfer.c (init_loop_spec): Calculate the starting
1392 record in case of negative strides. Return size of 0 for
1394 (next_array_record): Use an extra flag to signal that the
1396 (next_record_r): Use the new flag to next_array_record().
1397 (next_record_w): Likewise.