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