]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgfortran/ChangeLog
re PR fortran/37228 (F2008: Support g0.<d> edit descriptor)
[thirdparty/gcc.git] / libgfortran / ChangeLog
CommitLineData
900e887f
JD
12008-09-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2
3 PR libfortran/37301
4 PR libfortran/37228
5 * io/io.h (write_real_g0): Declare new function to handle g0.d format.
6 * io/transfer.c (formatted_transfer_scalar): Use new function.
7 * io/format.c (parse_format_list): Enable g0.d.
8 * io/write.c (write_a_char4): Delete unused var.
9 (set_fnode_default): New function to set the default fnode w, d, and e
10 factored from write_real. (write_real): Use new factored function.
11 (write_real_g0): New function that sets d to that passed by g0.d format
12 specifier and set format to ES. Default values for w and e are used
13 from the new function, set_fnode_default.
14
4e2eb53c
JD
152008-09-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
16
17 * runtime/error.c: Fix cast for printf.
18
8c8627c4
JD
192008-08-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
20
21 PR libfortran/36895
22 * io/write.c (namelist_write_newline): New function to correctly mark
23 next records in both external and internal units.
24 (nml_write_obj): Use new function.
25 (namelist_write: Use new function.
26
cfd648ca
TB
272008-08-19 Tobias Burnus <burnus@net-b.de>
28
29 PR libfortran/35863
30 * io/write.c (write_a_char4): Add missing variable declaration
31 in HAVE_CRLF block.
32
3ae86bf4
JD
332008-08-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
34
35 PR libfortran/35863
36 * intrinsics/selected_char_kind.c: Enable iso_10646.
37 * io/read.c (typedef uchar): New type.
38 (read_utf8): New function to read a single UTF-8 encoded character.
39 (read_utf8_char1): New function to read UTF-8 into a KIND=1 string.
40 (read_default_char1): New functio to read default into KIND=1 string.
41 (read_utf8_char4): New function to read UTF-8 into a KIND=4 string.
42 (read_default_char4): New function to read UTF-8 into a KIND=4 string.
43 (read_a): Modify to use the new functions.
44 (read_a_char4): Modify to use the new functions.
45 * io/write.c (error.h): Add include. (typedef uchar): New type.
46 (write_default_char4): New function to default write KIND=4 string.
47 (write_utf8_char4): New function to UTF-8 write KIND=4 string.
48 (write_a_char4): Modify to use new functions.
49 (write_character): Modify to use new functions.
50
6f010296
L
512008-08-14 H.J. Lu <hongjiu.lu@intel.com>
52
53 PR libfortran/37123
54 * intrinsics/cshift0.c (cshift0): Fix 2 typos.
55
c2b00cdc
TK
562008-08-14 Thomas Koenig <tkoenig@gcc.gnu.org>
57
58 PR libfortran/36886
59 * Makefile.am: Added $(i_cshift0_c).
60 Added $(i_cshift0_c) to gfor_built_specific_src.
61 Add rule to build from cshift0.m4.
62 * Makefile.in: Regenerated.
63 * libgfortran.h: Addedd prototypes for cshift0_i1,
64 cshift0_i2, cshift0_i4, cshift0_i8, cshift0_i16,
65 cshift0_r4, cshift0_r8, cshift0_r10, cshift0_r16,
66 cshift0_c4, cshift0_c8, cshift0_c10, cshift0_c16.
67 Define Macros GFC_UNALIGNED_C4 and GFC_UNALIGNED_C8.
68 * intrinsics/cshift0.c: Remove helper functions for
69 the innter shift loop.
70 (cshift0): Call specific functions depending on type
71 of array argument. Only call specific functions for
72 correct alignment for other types.
73 * m4/cshift0.m4: New file.
74 * generated/cshift0_i1.c: New file.
75 * generated/cshift0_i2.c: New file.
76 * generated/cshift0_i4.c: New file.
77 * generated/cshift0_i8:.c New file.
78 * generated/cshift0_i16.c: New file.
79 * generated/cshift0_r4.c: New file.
80 * generated/cshift0_r8.c: New file.
81 * generated/cshift0_r10.c: New file.
82 * generated/cshift0_r16.c: New file.
83 * generated/cshift0_c4.c: New file.
84 * generated/cshift0_c8.c: New file.
85 * generated/cshift0_c10.c: New file.
86 * generated/cshift0_c16.c: New file.
87
0d52899f
TB
882008-07-27 Tobias Burnus <burnus@net-b.de>
89
90 PR fortran/36132
91 PR fortran/29952
92 PR fortran/36909
93 * runtime/error.c: New function runtime_error_at.
94 * gfortran.map: Ditto.
95 * libgfortran.h: Ditto.
96
ac834957
JD
972008-07-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
98
10347b0b 99 PR fortran/36582
ac834957
JD
100 * io/list_read.c: If variable rank is zero, do not adjust the found
101 namelist object pointer.
102
9cad01ce
DK
1032008-07-22 Daniel Kraft <d@domob.eu>
104
105 PR fortran/29835
106 * io/format.c (struct format_data): New member error_element.
107 (unexpected_element): Added '%c' to message.
108 (next_char): Keep track of last parsed character in fmt->error_element.
109 (format_error): If the message is unexpected_element, output the
110 offending character, too.
111
4a799ae7
TK
1122008-07-22 Thomas Koenig <tkoenig@gcc.gnu.org>
113
114 PR libfortran/36890
115 * io/file_pos.c: Declare READ_CHUNK as signed to avoid
116 signed/unsigned comparison warning in formatted_backspace.
117
c44109aa
TK
1182008-07-21 Thomas Koenig <tkoenig@gcc.gnu.org>
119
120 PR libfortran/36773
121 * intrinsics/cshift0.c (cshift0): Return early if size of array
122 is zero.
123 * intrinsics/eoshift0.c (eoshift0): Return early if size of
124 return array is zero.
125 * intrinsics/eoshift2.c (eoshift2): Likewise.
126 * m4/eoshift1.m4 (eoshift1): Return early if size of array
127 is zero.
128 * m4/eoshift3.m4 (eoshift3): Likewise.
129 * m4/eoshift2.m4 (eoshift2): Return early if size of return
130 array is zero.
131 * m4/eoshift4.m4 (eoshift2): Return early if size of return
132 array is zero.
133 * generated/cshift1_16.c: Regenerated.
134 * generated/cshift1_4.c: Regenerated.
135 * generated/cshift1_8.c: Regenerated.
136 * generated/eoshift1_16.c: Regenerated.
137 * generated/eoshift1_4.c: Regenerated.
138 * generated/eoshift1_8.c: Regenerated.
139 * generated/eoshift3_16.c: Regenerated.
140 * generated/eoshift3_4.c: Regenerated.
141 * generated/eoshift3_8.c: Regenerated.
142
302b150e
JD
1432008-07-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
144
145 PR fortran/36857
146 * io/write_float.def: Comment out locale dependent code and fix general
147 comments.
148
9ad13e91
TK
1492008-07-07 Thomas Koenig <tkoenig@gcc.gnu.org>
150
151 PR fortran/36341
152 PR fortran/34670
153 * m4/matmul.m4: Add bounds checking.
154 * m4/matmull.m4: Likewise.
155 * generated/matmul_c10.c: Regenerated.
156 * generated/matmul_c16.c: Regenerated.
157 * generated/matmul_c4.c: Regenerated.
158 * generated/matmul_c8.c: Regenerated.
159 * generated/matmul_i1.c: Regenerated.
160 * generated/matmul_i16.c: Regenerated.
161 * generated/matmul_i2.c: Regenerated.
162 * generated/matmul_i4.c: Regenerated.
163 * generated/matmul_i8.c: Regenerated.
164 * generated/matmul_l16.c: Regenerated.
165 * generated/matmul_l4.c: Regenerated.
166 * generated/matmul_l8.c: Regenerated.
167 * generated/matmul_r10.c: Regenerated.
168 * generated/matmul_r16.c: Regenerated.
169 * generated/matmul_r4.c: Regenerated.
170 * generated/matmul_r8.c: Regenerated.
171
10465436
RW
1722008-07-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
173
174 * acinclude.m4 (LIBGFOR_CHECK_GTHR_DEFAULT): Fix configure cache
175 variable name.
176 * configure: Regenerate.
177
bdd3085e
JD
1782008-07-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
179
180 PR fortran/36676
181 * io/list_read.c (find_nml_name): Use eat_separator instead of eat_line.
182
7b063fdc
JD
1832008-06-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
184
185 PR fortran/36657
186 * io/list_read.c (read_character): Check for '!' along with separators.
187 (find_nml_name): Likewise and eat the comment if found.
188
18c04407
RW
1892008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
190
191 * configure: Regenerate.
192
fb669c2b
JD
1932008-06-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
194
195 PR fortran/36546
196 * io/list_read.c (eat_separator): Add tab character to condition
197 for looping past whitespace.
198
a9608b57
JD
1992008-06-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
200
201 PR fortran/36515
202 * libgfortran.h (compile_options_t): Add int range_check to structure.
203 * runtime/compile_options.c (set_options): Add range_check option.
204 (init_compile_options): Likewise.
205 *io/read.c (read_decimal): Change overflow checks to include
206 range_check.
207
a82094b7
JD
2082008-06-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
209
210 PR fortran/36538
211 * io/list_read.c (namelist_read): Add eat_separator to eliminate leading
212 tabs.
213
cea93abb
JD
2142008-06-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
215
216 PR fortran/35863
217 * libgfortran.h: Change l8_to_l4_offset to big_endian and add endian_off.
218 * runtime/main.c: Fix error in comment. Change l8_to_l4_offset to
219 big_endian. (determine_endianness): Add endian_off and set its value
220 according to big_endian.
221 * gfortran.map: Add symbol for new _gfortran_transfer_character_wide.
222 * io/io.h: Add prototype declarations for new functions.
223 * io/list_read.c (list_formatted_read_scalar): Modify to handle kind=4.
224 (list_formatted_read): Calculate stride based on kind for character type
225 and use it when calling list_formatted_read_scalar.
226 * io/inquire.c (inquire_via_unit): Change l8_to_l4_offset to big_endian.
227 * io/open.c (st_open): Change l8_to_l4_offset to big_endian.
228 * io/read.c (read_a_char4): New function to handle formatted read.
229 * io/write.c: Define GFC_CHAR4(x) to improve readability of code.
230 (write_a_char4): New function to handle formatted write.
231 (write_character): Modify to accept the kind parameter and adjust for
232 endianess of the machine. (list_formatted_write): Calculate the stride
233 resulting from the kind and adjust the list_formatted_write_scalar call
234 accordingly. (nml_write_obj): Adjust calls to write_character.
235 (namelist_write): Likewise.
236 * io/transfer.c (formatted_transfer_scaler): Rename 'len' argument to
237 'kind' argument to better describe what it is. Add calls to new
238 functions for kind == 4. (formatted_transfer): Modify to handle the case
239 of type character and kind equals 4 to pass in the kind to the transfer
240 routines. (transfer_character_wide): Add this new function.
241 (transfer_array): Don't set kind to the character string length. Adjust
242 strides bases on character kind.
243 (unformatted_read): Adjust size based on kind for character types.
244 (unformatted_write): Likewise. (data_transfer_init): Change
7f7e76a4
JD
245 l8_to_l4_offset to big_endian.
246 io/fbuf.c (fbuf_seek): Add cast to eliminate warning.
cea93abb 247
c5f4d1cc
TB
2482008-06-13 Tobias Burnus <burnus@net-b.de>
249
250 * configure.ac (AM_CFLAGS): Remove -Werror again.
251 * configure: Regenerate.
252
2532008-06-13 Tobias Burnus <burnus@net-b.de>
254
255 PR libgfortran/36518
256 * configure.ac (AM_CFLAGS): Add -Werror.
257 * configure: Regenerate.
258 * m4/ifunction_logical.m4: Cast "n" to "(int)".
259 * generated/any_l16.c: Regenerate.
260 * generated/any_l2.c: Regenerate.
261 * generated/all_l1.c: Regenerate.
262 * generated/all_l2.c: Regenerate.
263 * generated/all_l16.c: Regenerate.
264 * generated/any_l4.c: Regenerate.
265 * generated/count_4_l.c: Regenerate.
266 * generated/count_8_l.c: Regenerate.
267 * generated/all_l4.c: Regenerate.
268 * generated/count_1_l.c: Regenerate.
269 * generated/count_16_l.c: Regenerate.
270 * generated/any_l8.c: Regenerate.
271 * generated/count_2_l.c: Regenerate.
272 * generated/any_l1.c: Regenerate.
273 * generated/all_l8.c: Regenerate.
274
c3e9b6ab
TB
2752008-06-13 Tobias Burnus <burnus@net-b.de>
276
277 PR fortran/36495
278 * configure.ac (AM_FCFLAGS): Add "-Werror -fimplicit-none".
279 * configure: (generated) ditto.
280 * intrinsics/dprod_r8.f90: Add "implicit none".
281
9355110f
JD
2822008-06-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
283
284 PR libfortran/36420
285 PR libfortran/36421
286 PR libfortran/36422
287 * io/io.h: Add prototype for write_real.
288 * io/transfer.c (formatted_transfer_scalar): For FMT_G and width zero,
289 use write_real.
290 * io/format.c: Add zero width error message. (parse_format_list): Use
291 error message for FMT_A if followed by FMT_ZERO. Use zero width error
292 message for FMT_G if mode is READ or if -std=f95 or f2003. (fmormat0):
293 Fix typo in comment.
294 * io/write.c(write_a): Set wlen to len if FMT_G and length is zero.
295 (write_l): Add wlen variable and use it if FMT_G and width is zero.
296 (write_decimal): If FMT_G, set m to -1 to flag processor dependent
297 formatting. (write_real): Remove static declaration.
298
691da334
FXC
2992008-05-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
300
301 PR fortran/36319
302 * intrinsics/string_intrinsics_inc.c (string_index): Return
303 correct value for zero-length substring.
304 * intrinsics/cshift0.c: Add _char4 variant.
305 * intrinsics/eoshift0.c (eoshift0): Allow filler to be a pattern
306 wider than a single byte. Add _char4 variant and use above
307 functionality.
308 * intrinsics/eoshift2.c (eoshift2): Likewise.
309 * m4/eoshift1.m4: Likewise.
310 * m4/eoshift3.m4: Likewise.
311 * m4/cshift1.m4: Add _char4 variants.
312 * gfortran.map (GFORTRAN_1.1): Add _gfortran_cshift0_1_char4,
313 _gfortran_cshift0_2_char4, _gfortran_cshift0_4_char4,
314 _gfortran_cshift0_8_char4, _gfortran_cshift1_16_char4,
315 _gfortran_cshift1_4_char4, _gfortran_cshift1_8_char4,
316 _gfortran_eoshift0_1_char4, _gfortran_eoshift0_2_char4,
317 _gfortran_eoshift0_4_char4, _gfortran_eoshift0_8_char4,
318 _gfortran_eoshift1_16_char4, _gfortran_eoshift1_4_char4,
319 _gfortran_eoshift1_8_char4, _gfortran_eoshift2_1_char4,
320 _gfortran_eoshift2_2_char4, _gfortran_eoshift2_4_char4,
321 _gfortran_eoshift2_8_char4, _gfortran_eoshift3_16_char4,
322 _gfortran_eoshift3_4_char4 and _gfortran_eoshift3_8_char4.
323 * generated/eoshift3_4.c: Regenerate.
324 * generated/eoshift1_8.c: Regenerate.
325 * generated/eoshift1_16.c: Regenerate.
326 * generated/cshift1_4.c: Regenerate.
327 * generated/eoshift1_4.c: Regenerate.
328 * generated/eoshift3_8.c: Regenerate.
329 * generated/eoshift3_16.c: Regenerate.
330 * generated/cshift1_8.c: Regenerate.
331 * generated/cshift1_16.c: Regenerate.
332
5ec81069
TB
3332008-05-25 Tobias Burnus <burnus@net-b.de>
334
335 PR fortran/32600
336 * intrinsics/iso_c_binding.c (c_f_procpointer): Remove.
337 * intrinsics/iso_c_binding.h (c_f_procpointer): Remove.
338 * gfortran.map (c_f_procpointer): Remove.
339
143350a8
TK
3402008-05-22 Thomas Koenig <tkoenig@gcc.gnu.org>
341
342 PR libgfortran/36302
343 * gfortran.map (GFORTRAN_1.1): Add _gfortran_eoshift0_16,
344 _gfortran_eoshift0_16_char, _gfortran_eoshift2_16,
345 _gfortran_eoshift2_16_char,_gfortran_cshift0_16,
346 _gfortran_cshift0_16_char. Sort alphabetically.
347 * intrinsics/eoshift0.c: Add function for kind=16 integer.
348 * intrinsics/eoshift2.c: Likewise.
349 * intrinsics/cshift0.c: Likewise.
350
f7625766
TB
3512008-05-18 Thomas Koenig <tkoenig@gcc.gnu.org>
352
353 * m4/in_pack.m4 (internal_pack_'rtype_code`): Destination
354 pointer is restrict.
355 * m4/transpose.m4 (transpose_'rtype_code`): Likewise.
356 * m4/pack.m4 (pack_'rtype_code`): Likewise.
357 * m4/spread.m4 (spread_'rtype_code`): Likewise.
358 (spread_scalar_'rtype_code`): Likewise.
359 * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Likewise.
360 * m4/eoshift1.m4 (eoshift1): Likewise.
361 * m4/eoshift3.m4 (eoshift3): Likewise.
362 * m4/in_unpack.m4 (internal_unpack_'rtype_ccode`): Likewise.
363 * m4/unpack.m4 (unpack0_'rtype_code`): Likewise.
364 (unpack1_'rtype_code`): Likewise.
365 * intrinsics/pack_generic.c (pack_generic.c): Likewise.
366 * intrinsics/unpack_generic.c (unpack_internal): Likewise.
367 * intrinsics/eoshift0.c (eoshift0): Likewise.
368 * intrinsics/eoshift2.c (eoshift2): Likewise.
369 * intrinsics/reshape_generic.c (reshape_internal): Likewise.
370 * intrinsics/reshape_packed.c (reshape_packed): Likewise.
371 * generated/eoshift1_16.c: Regenerated.
372 * generated/eoshift1_4.c: Regenerated.
373 * generated/eoshift1_8.c: Regenerated.
374 * generated/eoshift3_16.c: Regenerated.
375 * generated/eoshift3_4.c: Regenerated.
376 * generated/eoshift3_8.c: Regenerated.
377 * generated/in_pack_c10.c: Regenerated.
378 * generated/in_pack_c16.c: Regenerated.
379 * generated/in_pack_c4.c: Regenerated.
380 * generated/in_pack_c8.c: Regenerated.
381 * generated/in_pack_i1.c: Regenerated.
382 * generated/in_pack_i16.c: Regenerated.
383 * generated/in_pack_i2.c: Regenerated.
384 * generated/in_pack_i4.c: Regenerated.
385 * generated/in_pack_i8.c: Regenerated.
386 * generated/in_pack_r10.c: Regenerated.
387 * generated/in_pack_r16.c: Regenerated.
388 * generated/in_pack_r4.c: Regenerated.
389 * generated/in_pack_r8.c: Regenerated.
390 * generated/in_unpack_c10.c: Regenerated.
391 * generated/in_unpack_c16.c: Regenerated.
392 * generated/in_unpack_c4.c: Regenerated.
393 * generated/in_unpack_c8.c: Regenerated.
394 * generated/in_unpack_i1.c: Regenerated.
395 * generated/in_unpack_i16.c: Regenerated.
396 * generated/in_unpack_i2.c: Regenerated.
397 * generated/in_unpack_i4.c: Regenerated.
398 * generated/in_unpack_i8.c: Regenerated.
399 * generated/in_unpack_r10.c: Regenerated.
400 * generated/in_unpack_r16.c: Regenerated.
401 * generated/in_unpack_r4.c: Regenerated.
402 * generated/in_unpack_r8.c: Regenerated.
403 * generated/maxloc0_16_i1.c: Regenerated.
404 * generated/maxloc0_16_i16.c: Regenerated.
405 * generated/maxloc0_16_i2.c: Regenerated.
406 * generated/maxloc0_16_i4.c: Regenerated.
407 * generated/maxloc0_16_i8.c: Regenerated.
408 * generated/maxloc0_16_r10.c: Regenerated.
409 * generated/maxloc0_16_r16.c: Regenerated.
410 * generated/maxloc0_16_r4.c: Regenerated.
411 * generated/maxloc0_16_r8.c: Regenerated.
412 * generated/maxloc0_4_i1.c: Regenerated.
413 * generated/maxloc0_4_i16.c: Regenerated.
414 * generated/maxloc0_4_i2.c: Regenerated.
415 * generated/maxloc0_4_i4.c: Regenerated.
416 * generated/maxloc0_4_i8.c: Regenerated.
417 * generated/maxloc0_4_r10.c: Regenerated.
418 * generated/maxloc0_4_r16.c: Regenerated.
419 * generated/maxloc0_4_r4.c: Regenerated.
420 * generated/maxloc0_4_r8.c: Regenerated.
421 * generated/maxloc0_8_i1.c: Regenerated.
422 * generated/maxloc0_8_i16.c: Regenerated.
423 * generated/maxloc0_8_i2.c: Regenerated.
424 * generated/maxloc0_8_i4.c: Regenerated.
425 * generated/maxloc0_8_i8.c: Regenerated.
426 * generated/maxloc0_8_r10.c: Regenerated.
427 * generated/maxloc0_8_r16.c: Regenerated.
428 * generated/maxloc0_8_r4.c: Regenerated.
429 * generated/maxloc0_8_r8.c: Regenerated.
430 * generated/minloc0_16_i1.c: Regenerated.
431 * generated/minloc0_16_i16.c: Regenerated.
432 * generated/minloc0_16_i2.c: Regenerated.
433 * generated/minloc0_16_i4.c: Regenerated.
434 * generated/minloc0_16_i8.c: Regenerated.
435 * generated/minloc0_16_r10.c: Regenerated.
436 * generated/minloc0_16_r16.c: Regenerated.
437 * generated/minloc0_16_r4.c: Regenerated.
438 * generated/minloc0_16_r8.c: Regenerated.
439 * generated/minloc0_4_i1.c: Regenerated.
440 * generated/minloc0_4_i16.c: Regenerated.
441 * generated/minloc0_4_i2.c: Regenerated.
442 * generated/minloc0_4_i4.c: Regenerated.
443 * generated/minloc0_4_i8.c: Regenerated.
444 * generated/minloc0_4_r10.c: Regenerated.
445 * generated/minloc0_4_r16.c: Regenerated.
446 * generated/minloc0_4_r4.c: Regenerated.
447 * generated/minloc0_4_r8.c: Regenerated.
448 * generated/minloc0_8_i1.c: Regenerated.
449 * generated/minloc0_8_i16.c: Regenerated.
450 * generated/minloc0_8_i2.c: Regenerated.
451 * generated/minloc0_8_i4.c: Regenerated.
452 * generated/minloc0_8_i8.c: Regenerated.
453 * generated/minloc0_8_r10.c: Regenerated.
454 * generated/minloc0_8_r16.c: Regenerated.
455 * generated/minloc0_8_r4.c: Regenerated.
456 * generated/minloc0_8_r8.c: Regenerated.
457 * generated/pack_c10.c: Regenerated.
458 * generated/pack_c16.c: Regenerated.
459 * generated/pack_c4.c: Regenerated.
460 * generated/pack_c8.c: Regenerated.
461 * generated/pack_i1.c: Regenerated.
462 * generated/pack_i16.c: Regenerated.
463 * generated/pack_i2.c: Regenerated.
464 * generated/pack_i4.c: Regenerated.
465 * generated/pack_i8.c: Regenerated.
466 * generated/pack_r10.c: Regenerated.
467 * generated/pack_r16.c: Regenerated.
468 * generated/pack_r4.c: Regenerated.
469 * generated/pack_r8.c: Regenerated.
470 * generated/spread_c10.c: Regenerated.
471 * generated/spread_c16.c: Regenerated.
472 * generated/spread_c4.c: Regenerated.
473 * generated/spread_c8.c: Regenerated.
474 * generated/spread_i1.c: Regenerated.
475 * generated/spread_i16.c: Regenerated.
476 * generated/spread_i2.c: Regenerated.
477 * generated/spread_i4.c: Regenerated.
478 * generated/spread_i8.c: Regenerated.
479 * generated/spread_r10.c: Regenerated.
480 * generated/spread_r16.c: Regenerated.
481 * generated/spread_r4.c: Regenerated.
482 * generated/spread_r8.c: Regenerated.
483 * generated/transpose_c10.c: Regenerated.
484 * generated/transpose_c16.c: Regenerated.
485 * generated/transpose_c4.c: Regenerated.
486 * generated/transpose_c8.c: Regenerated.
487 * generated/transpose_i16.c: Regenerated.
488 * generated/transpose_i4.c: Regenerated.
489 * generated/transpose_i8.c: Regenerated.
490 * generated/transpose_r10.c: Regenerated.
491 * generated/transpose_r16.c: Regenerated.
492 * generated/transpose_r4.c: Regenerated.
493 * generated/transpose_r8.c: Regenerated.
494 * generated/unpack_c10.c: Regenerated.
495 * generated/unpack_c16.c: Regenerated.
496 * generated/unpack_c4.c: Regenerated.
497 * generated/unpack_c8.c: Regenerated.
498 * generated/unpack_i1.c: Regenerated.
499 * generated/unpack_i16.c: Regenerated.
500 * generated/unpack_i2.c: Regenerated.
501 * generated/unpack_i4.c: Regenerated.
502 * generated/unpack_i8.c: Regenerated.
503 * generated/unpack_r10.c: Regenerated.
504 * generated/unpack_r16.c: Regenerated.
505 * generated/unpack_r4.c: Regenerated.
506 * generated/unpack_r8.c: Regenerated.
507
3571925e
FXC
5082008-05-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
509
510 * runtime/select.c: Moved content to select_inc.c. Include it.
511 Add macros for different character types.
512 * runtime/select_inc.c: New file.
513 * runtime/convert_char.c: New file.
514 * intrinsics/pack_generic.c (pack_char4, pack_s_char4): New
515 functions.
516 * intrinsics/transpose_generic.c (transpose_char4): New function.
517 * intrinsics/spread_generic.c (spread_char4, spread_char4_scalar):
518 New functions.
519 * intrinsics/unpack_generic.c (unpack1_char4, unpack0_char4):
520 New functions.
521 * intrinsics/reshape_generic.c (reshape_char): Use
522 gfc_charlen_type as type for length variables.
523 (reshape_char4): New function.
524 * gfortran.map (GFORTRAN_1.1): Add _gfortran_select_string_char4,
525 _gfortran_convert_char1_to_char4, _gfortran_convert_char4_to_char1,
526 _gfortran_transpose_char4, _gfortran_spread_char4,
527 _gfortran_spread_char4_scalar, _gfortran_reshape_char4,
528 _gfortran_pack_char4, _gfortran_pack_s_char4,
529 _gfortran_unpack0_char4 and _gfortran_unpack1_char4.
530 * Makefile.am: Add runtime/convert_char.c.
531 * Makefile.in: Regenerate.
532
51407486
TK
5332008-05-17 Thomas Koenig <tkoenig@gcc.gnu.org>
534
535 * io/list_read.c (list_formatted_read_scalar): Declare
536 type as volatile to shut up compiler warning.
537
8947fd62
JB
5382008-05-16 Janne Blomqvist <jb@gcc.gnu.org>
539
540 PR libfortran/25561
541 * io/io.h (struct fbuf): Change pointer to position offset.
542 * io/fbuf.c (fbuf_init): Reduce default size of buffer, ptr=>pos
543 changes.
544 (fbuf_reset): ptr=>pos changes.
545 (fbuf_alloc): If the request doesn't fit, don't waste memory by
546 keeping flushed bytes. ptr=>pos changes.
547 (fbuf_flush): ptr=>pos changes.
548 (fbuf_seek): Don't seek past the left tab limit, don't update active
549 byte count.
550 * io/open.c (new_unit): If RECL has been specified, used that as
551 initial buffer size.
552
65686652
JB
5532008-05-16 Janne Blomqvist <jb@gcc.gnu.org>
554
555 PR libfortran/35632
556 * io/open.c (new_unit): Set stream position to correct value.
557
f6f9ac31
JB
5582008-05-15 Janne Blomqvist <jb@gcc.gnu.org>
559
560 PR libfortran/25561
561 * Makefile.am: Add fbuf.c to gfor_io_src.
562 * Makefile.in: Regenerate.
563 * io/io.h (read_block): Remove.
564 (struct stream): Remove alloc_r_at function pointer.
565 (salloc_r): Remove.
566 (salloc_r_at): Remove.
567 (salloc_w_at): Remove.
568 (salloc_w): Remove offset argument.
569 (struct fbuf): New struct for format buffer.
570 (struct gfc_unit): Add fbuf.
571 (read_block_form): New prototype.
572 (fbuf_init): Likewise.
573 (fbuf_destroy): Likewise.
574 (fbuf_reset): Likewise.
575 (fbuf_alloc): Likewise.
576 (fbuf_flush): Likewise.
577 (fbuf_seek): Likewise.
578 * io/file_pos.c (formatted_backspace): Change to use sread.
579 (unformatted_backspace): Likewise.
580 (st_backspace): Flush format buffer.
581 (st_rewind): Likewise.
582 * io/list_read.c (next_char): Likewise.
583 (nml_query): Tidying, flush format buffer.
584 * io/open.c (new_unit): Init format buffer.
585 * io/read.c (read_l): Change to use read_block_form.
586 (read_a): Likewise.
587 (read_decimal): Likewise.
588 (read_radix): Likewise.
589 (read_f): Likewise.
590 (read_x): Empty reads also for stream I/O.
591 * io/transfer.c (read_sf): Change to use sread.
592 (read_block): Rename to read_block_form, change prototype, use sread.
593 (read_block_direct): Don't seek stream files.
594 (write_block): Change to use fbuf if external file, don't seek stream
595 files.
596 (write_buf): Don't seek stream files.
597 (formatted_transfer_scalar): Use fbuf for external files.
598 (us_read): Change to use sread.
599 (pre_position): Do nothing for stream I/O.
600 (data_transfer_init): Flush fbuf when switching from write to read, if
601 POS is specified, seek stream file to correct offset.
602 (skip_record): Change to use sread.
603 (min_off): New function.
604 (next_record_r): Change to use sread.
605 (next_record_w): Change to use sset/sseek, flush fbuf.
606 (finalize_transfer): Flush fbuf.
607 * io/unit.c (init_units): Init fbuf for stdout, stderr.
608 (close_unit_1): Destroy fbuf.
609 (finish_last_advance_record): Flush fbuf, no need to seek.
610 * io/unix.c (fd_alloc_r_at): Remove unused where argument.
611 (fd_alloc_w_at): Likewise.
612 (fd_read): Remove third argument to fd_alloc_r_at.
613 (fd_write): Remove third argument to fd_alloc_w_at.
614 (fd_sset): Likewise.
615 (fd_open): Don't set alloc_r_at.
616 (mem_alloc_r_at): Remove unused where argument.
617 (mem_alloc_w_at): Likewise.
618 (mem_read): Don't incorrectly return previous errno, remove unused
619 third argument to alloc function.
620 (mem_write): Likewise.
621 (mem_set): Likewise.
622 (open_internal): Don't set alloc_r_at pointer.
623 * io/fbuf.c: New file.
624
4b267817
FXC
6252008-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
626
627 * libgfortran.h (gfc_char4_t): New type.
628 (GFC_SIZE_OF_CHAR_KIND): New macro.
629 (compare_string): Adjust prototype.
630 (compare_string_char4): New prototype.
631 * gfortran.map (GFORTRAN_1.1): Add _gfortran_adjustl_char4,
632 _gfortran_adjustr_char4, _gfortran_compare_string_char4,
633 _gfortran_concat_string_char4, _gfortran_string_index_char4,
634 _gfortran_string_len_trim_char4, _gfortran_string_minmax_char4,
635 _gfortran_string_scan_char4, _gfortran_string_trim_char4 and
636 _gfortran_string_verify_char4.
637 * intrinsics/string_intrinsics_inc.c: New file from content of
638 string_intrinsics.c with types replaced by macros.
639 * intrinsics/string_intrinsics.c: Move content to
640 string_intrinsics_inc.c.
641
36afed5a
JD
6422008-05-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
643
644 PR libfortran/36202
645 * io/list_read (eat_separator): Handle the CR-LF case correctly.
646
7afa92c5
JB
6472008-05-09 Julian Brown <julian@codesourcery.com>
648
649 * Makefile.am (LTLDFLAGS): New.
650 (libgfortran_la_LDFLAGS): Use above.
651 * Makefile.in: Regenerate.
652
d0d51277
JD
6532008-05-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
654
655 PR libfortran/36131
656 * io/transfer.c (formatted_transfer_scalar): Revert patch for PR34974.
657 (next_record_w): Likewise.
658
da96f5ab
TK
6592008-05-04 Thomas Koenig <tkoenig@gcc.gnu.org>
660
661 PR libfortran/35995
662 * m4/ifunction_logical.m4: If the extent of "array"
663 is less than zero, set it to zero. Use an explicit
664 flag for breaking out of the main loop to avoid, because
665 the data pointer for "array" may be NULL for an empty
666 array.
667 * m4/ifunction.m4: Likewise.
668 * generated/all_l1.c: Regenerated.
669 * generated/all_l16.c: Regenerated.
670 * generated/all_l2.c: Regenerated.
671 * generated/all_l4.c: Regenerated.
672 * generated/all_l8.c: Regenerated.
673 * generated/any_l1.c: Regenerated.
674 * generated/any_l16.c: Regenerated.
675 * generated/any_l2.c: Regenerated.
676 * generated/any_l4.c: Regenerated.
677 * generated/any_l8.c: Regenerated.
678 * generated/count_16_l.c: Regenerated.
679 * generated/count_1_l.c: Regenerated.
680 * generated/count_2_l.c: Regenerated.
681 * generated/count_4_l.c: Regenerated.
682 * generated/count_8_l.c: Regenerated.
683 * generated/maxloc1_16_i1.c: Regenerated.
684 * generated/maxloc1_16_i16.c: Regenerated.
685 * generated/maxloc1_16_i2.c: Regenerated.
686 * generated/maxloc1_16_i4.c: Regenerated.
687 * generated/maxloc1_16_i8.c: Regenerated.
688 * generated/maxloc1_16_r10.c: Regenerated.
689 * generated/maxloc1_16_r16.c: Regenerated.
690 * generated/maxloc1_16_r4.c: Regenerated.
691 * generated/maxloc1_16_r8.c: Regenerated.
692 * generated/maxloc1_4_i1.c: Regenerated.
693 * generated/maxloc1_4_i16.c: Regenerated.
694 * generated/maxloc1_4_i2.c: Regenerated.
695 * generated/maxloc1_4_i4.c: Regenerated.
696 * generated/maxloc1_4_i8.c: Regenerated.
697 * generated/maxloc1_4_r10.c: Regenerated.
698 * generated/maxloc1_4_r16.c: Regenerated.
699 * generated/maxloc1_4_r4.c: Regenerated.
700 * generated/maxloc1_4_r8.c: Regenerated.
701 * generated/maxloc1_8_i1.c: Regenerated.
702 * generated/maxloc1_8_i16.c: Regenerated.
703 * generated/maxloc1_8_i2.c: Regenerated.
704 * generated/maxloc1_8_i4.c: Regenerated.
705 * generated/maxloc1_8_i8.c: Regenerated.
706 * generated/maxloc1_8_r10.c: Regenerated.
707 * generated/maxloc1_8_r16.c: Regenerated.
708 * generated/maxloc1_8_r4.c: Regenerated.
709 * generated/maxloc1_8_r8.c: Regenerated.
710 * generated/maxval_i1.c: Regenerated.
711 * generated/maxval_i16.c: Regenerated.
712 * generated/maxval_i2.c: Regenerated.
713 * generated/maxval_i4.c: Regenerated.
714 * generated/maxval_i8.c: Regenerated.
715 * generated/maxval_r10.c: Regenerated.
716 * generated/maxval_r16.c: Regenerated.
717 * generated/maxval_r4.c: Regenerated.
718 * generated/maxval_r8.c: Regenerated.
719 * generated/minloc1_16_i1.c: Regenerated.
720 * generated/minloc1_16_i16.c: Regenerated.
721 * generated/minloc1_16_i2.c: Regenerated.
722 * generated/minloc1_16_i4.c: Regenerated.
723 * generated/minloc1_16_i8.c: Regenerated.
724 * generated/minloc1_16_r10.c: Regenerated.
725 * generated/minloc1_16_r16.c: Regenerated.
726 * generated/minloc1_16_r4.c: Regenerated.
727 * generated/minloc1_16_r8.c: Regenerated.
728 * generated/minloc1_4_i1.c: Regenerated.
729 * generated/minloc1_4_i16.c: Regenerated.
730 * generated/minloc1_4_i2.c: Regenerated.
731 * generated/minloc1_4_i4.c: Regenerated.
732 * generated/minloc1_4_i8.c: Regenerated.
733 * generated/minloc1_4_r10.c: Regenerated.
734 * generated/minloc1_4_r16.c: Regenerated.
735 * generated/minloc1_4_r4.c: Regenerated.
736 * generated/minloc1_4_r8.c: Regenerated.
737 * generated/minloc1_8_i1.c: Regenerated.
738 * generated/minloc1_8_i16.c: Regenerated.
739 * generated/minloc1_8_i2.c: Regenerated.
740 * generated/minloc1_8_i4.c: Regenerated.
741 * generated/minloc1_8_i8.c: Regenerated.
742 * generated/minloc1_8_r10.c: Regenerated.
743 * generated/minloc1_8_r16.c: Regenerated.
744 * generated/minloc1_8_r4.c: Regenerated.
745 * generated/minloc1_8_r8.c: Regenerated.
746 * generated/minval_i1.c: Regenerated.
747 * generated/minval_i16.c: Regenerated.
748 * generated/minval_i2.c: Regenerated.
749 * generated/minval_i4.c: Regenerated.
750 * generated/minval_i8.c: Regenerated.
751 * generated/minval_r10.c: Regenerated.
752 * generated/minval_r16.c: Regenerated.
753 * generated/minval_r4.c: Regenerated.
754 * generated/minval_r8.c: Regenerated.
755 * generated/product_c10.c: Regenerated.
756 * generated/product_c16.c: Regenerated.
757 * generated/product_c4.c: Regenerated.
758 * generated/product_c8.c: Regenerated.
759 * generated/product_i1.c: Regenerated.
760 * generated/product_i16.c: Regenerated.
761 * generated/product_i2.c: Regenerated.
762 * generated/product_i4.c: Regenerated.
763 * generated/product_i8.c: Regenerated.
764 * generated/product_r10.c: Regenerated.
765 * generated/product_r16.c: Regenerated.
766 * generated/product_r4.c: Regenerated.
767 * generated/product_r8.c: Regenerated.
768 * generated/sum_c10.c: Regenerated.
769 * generated/sum_c16.c: Regenerated.
770 * generated/sum_c4.c: Regenerated.
771 * generated/sum_c8.c: Regenerated.
772 * generated/sum_i1.c: Regenerated.
773 * generated/sum_i16.c: Regenerated.
774 * generated/sum_i2.c: Regenerated.
775 * generated/sum_i4.c: Regenerated.
776 * generated/sum_i8.c: Regenerated.
777 * generated/sum_r10.c: Regenerated.
778 * generated/sum_r16.c: Regenerated.
779 * generated/sum_r4.c: Regenerated.
780 * generated/sum_r8.c: Regenerated.
781
9e6dca75
TK
7822008-05-04 Thomas Koenig <tkoenig@gcc.gnu.org>
783
784 PR libfortran/35990
785 * intrinsics/pack_generic.c: Really commit.
786
7ad99d60
TK
7872008-05-04 Thomas Koenig <tkoenig@gcc.gnu.org>
788
789 PR libfortran/35990
790 * intrinsics/pack_generic.c: If an extent of the source
791 array is less then zero, set it to zero. Set the source
792 pointer to NULL if the source size is zero. Set the total
793 number of elements to zero if the vector has an extent
794 less or equal to zero.
795 * m4/pack.m4: Set the source pointer to NULL if the
796 source array is zero-sized. Set the total number of
797 elemements to zero if the vector has an extent less or
798 equal to zero.
799 * generated/pack_i1.c: Regenerated.
800 * generated/pack_i2.c: Regenerated.
801 * generated/pack_i4.c: Regenerated.
802 * generated/pack_i8.c: Regenerated.
803 * generated/pack_i16.c: Regenerated.
804 * generated/pack_r4.c: Regenerated.
805 * generated/pack_r8.c: Regenerated.
806 * generated/pack_r10.c: Regenerated.
807 * generated/pack_r16.c: Regenerated.
808 * generated/pack_c4.c: Regenerated.
809 * generated/pack_c8.c: Regenerated.
810 * generated/pack_c10.c: Regenerated.
811 * generated/pack_c16.c: Regenerated.
812
c26cc9a6
JD
8132008-05-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
814
815 PR libfortran/36094
816 * runtime/error.c (show_locus): Provide modified error message when
817 filename has not yet been associated with a unit number.
818 * io/open.c (encoding_opt[]): Comment out "utf-8" option and add TODO.
819
a39fafac
FXC
8202008-04-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
821
822 * intrinsics/selected_char_kind.c: New file.
823 * gfortran.map (GFORTRAN_1.1): Add _gfortran_selected_char_kind.
824 * Makefile.am: Add intrinsics/selected_char_kind.c.
825 * Makefile.in: Regenerate.
826
802367d7
TK
8272008-04-30 Thomas Koenig <tkoenig@gcc.gnu.org>
828
829 PR libfortran/35993
830 * ifunction.m4 (SCALAR_ARRAY_FUNCTION): Use correct
831 implementation for multi-dimensional return arrays when
832 the mask is .false.
833 * generated/maxloc1_16_i1.c: Regenerated.
834 * generated/maxloc1_16_i16.c: Regenerated.
835 * generated/maxloc1_16_i2.c: Regenerated.
836 * generated/maxloc1_16_i4.c: Regenerated.
837 * generated/maxloc1_16_i8.c: Regenerated.
838 * generated/maxloc1_16_r10.c: Regenerated.
839 * generated/maxloc1_16_r16.c: Regenerated.
840 * generated/maxloc1_16_r4.c: Regenerated.
841 * generated/maxloc1_16_r8.c: Regenerated.
842 * generated/maxloc1_4_i1.c: Regenerated.
843 * generated/maxloc1_4_i16.c: Regenerated.
844 * generated/maxloc1_4_i2.c: Regenerated.
845 * generated/maxloc1_4_i4.c: Regenerated.
846 * generated/maxloc1_4_i8.c: Regenerated.
847 * generated/maxloc1_4_r10.c: Regenerated.
848 * generated/maxloc1_4_r16.c: Regenerated.
849 * generated/maxloc1_4_r4.c: Regenerated.
850 * generated/maxloc1_4_r8.c: Regenerated.
851 * generated/maxloc1_8_i1.c: Regenerated.
852 * generated/maxloc1_8_i16.c: Regenerated.
853 * generated/maxloc1_8_i2.c: Regenerated.
854 * generated/maxloc1_8_i4.c: Regenerated.
855 * generated/maxloc1_8_i8.c: Regenerated.
856 * generated/maxloc1_8_r10.c: Regenerated.
857 * generated/maxloc1_8_r16.c: Regenerated.
858 * generated/maxloc1_8_r4.c: Regenerated.
859 * generated/maxloc1_8_r8.c: Regenerated.
860 * generated/maxval_i1.c: Regenerated.
861 * generated/maxval_i16.c: Regenerated.
862 * generated/maxval_i2.c: Regenerated.
863 * generated/maxval_i4.c: Regenerated.
864 * generated/maxval_i8.c: Regenerated.
865 * generated/maxval_r10.c: Regenerated.
866 * generated/maxval_r16.c: Regenerated.
867 * generated/maxval_r4.c: Regenerated.
868 * generated/maxval_r8.c: Regenerated.
869 * generated/minloc1_16_i1.c: Regenerated.
870 * generated/minloc1_16_i16.c: Regenerated.
871 * generated/minloc1_16_i2.c: Regenerated.
872 * generated/minloc1_16_i4.c: Regenerated.
873 * generated/minloc1_16_i8.c: Regenerated.
874 * generated/minloc1_16_r10.c: Regenerated.
875 * generated/minloc1_16_r16.c: Regenerated.
876 * generated/minloc1_16_r4.c: Regenerated.
877 * generated/minloc1_16_r8.c: Regenerated.
878 * generated/minloc1_4_i1.c: Regenerated.
879 * generated/minloc1_4_i16.c: Regenerated.
880 * generated/minloc1_4_i2.c: Regenerated.
881 * generated/minloc1_4_i4.c: Regenerated.
882 * generated/minloc1_4_i8.c: Regenerated.
883 * generated/minloc1_4_r10.c: Regenerated.
884 * generated/minloc1_4_r16.c: Regenerated.
885 * generated/minloc1_4_r4.c: Regenerated.
886 * generated/minloc1_4_r8.c: Regenerated.
887 * generated/minloc1_8_i1.c: Regenerated.
888 * generated/minloc1_8_i16.c: Regenerated.
889 * generated/minloc1_8_i2.c: Regenerated.
890 * generated/minloc1_8_i4.c: Regenerated.
891 * generated/minloc1_8_i8.c: Regenerated.
892 * generated/minloc1_8_r10.c: Regenerated.
893 * generated/minloc1_8_r16.c: Regenerated.
894 * generated/minloc1_8_r4.c: Regenerated.
895 * generated/minloc1_8_r8.c: Regenerated.
896 * generated/minval_i1.c: Regenerated.
897 * generated/minval_i16.c: Regenerated.
898 * generated/minval_i2.c: Regenerated.
899 * generated/minval_i4.c: Regenerated.
900 * generated/minval_i8.c: Regenerated.
901 * generated/minval_r10.c: Regenerated.
902 * generated/minval_r16.c: Regenerated.
903 * generated/minval_r4.c: Regenerated.
904 * generated/minval_r8.c: Regenerated.
905 * generated/product_c10.c: Regenerated.
906 * generated/product_c16.c: Regenerated.
907 * generated/product_c4.c: Regenerated.
908 * generated/product_c8.c: Regenerated.
909 * generated/product_i1.c: Regenerated.
910 * generated/product_i16.c: Regenerated.
911 * generated/product_i2.c: Regenerated.
912 * generated/product_i4.c: Regenerated.
913 * generated/product_i8.c: Regenerated.
914 * generated/product_r10.c: Regenerated.
915 * generated/product_r16.c: Regenerated.
916 * generated/product_r4.c: Regenerated.
917 * generated/product_r8.c: Regenerated.
918 * generated/sum_c10.c: Regenerated.
919 * generated/sum_c16.c: Regenerated.
920 * generated/sum_c4.c: Regenerated.
921 * generated/sum_c8.c: Regenerated.
922 * generated/sum_i1.c: Regenerated.
923 * generated/sum_i16.c: Regenerated.
924 * generated/sum_i2.c: Regenerated.
925 * generated/sum_i4.c: Regenerated.
926 * generated/sum_i8.c: Regenerated.
927 * generated/sum_r10.c: Regenerated.
928 * generated/sum_r16.c: Regenerated.
929 * generated/sum_r4.c: Regenerated.
930 * generated/sum_r8.c: Regenerated.
931
e94471ba
TK
9322008-04-25 Thomas Koenig <tkoenig@gcc.gnu.org>
933
934 PR libfortran/35960
935 * m4/reshape.m4: Fix typo in last commit.
936 * generated/reshape_i4.c: Regererated.
937 * generated/reshape_i8.c: Regenerated.
938 * generated/reshape_i16.c: Regenerated.
939 * generated/reshape_r4.c: Regenerated.
940 * generated/reshape_r8.c: Regenerated.
941 * generated/reshape_r10.c: Regenerated.
942 * generated/reshape_r16.c: Regenerated.
943 * generated/reshape_c4.c: Regenerated.
944 * generated/reshape_c8.c: Regenerated.
945 * generated/reshape_c10.c: Regenerated.
946 * generated/reshape_c16.c: Regenerated.
947
601e3332
FXC
9482008-04-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
949
950 * intrinsics/time_1.h (__time_1): Remove unused variable.
951
7edc89d4
TK
9522008-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
953
954 PR libfortran/35988
955 * m4/matmul.m4: Only issue a runtime error if extents are
956 non-zero.
957 * generated/matmul_i1.c: Regenerated.
958 * generated/matmul_i2.c: Regenerated.
959 * generated/matmul_i4.c: Regenerated.
960 * generated/matmul_i8.c: Regenerated.
961 * generated/matmul_i16.c: Regenerated.
962 * generated/matmul_r4.c: Regenerated.
963 * generated/matmul_r8.c: Regenerated.
964 * generated/matmul_r10.c: Regenerated.
965 * generated/matmul_r16.c: Regenerated.
966 * generated/matmul_c4.c: Regenerated.
967 * generated/matmul_c8.c: Regenerated.
968 * generated/matmul_c10.c: Regenerated.
969 * generated/matmul_c16.c: Regenerated.
970
6d26724a
RW
9712008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
972
973 * acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY)
974 (LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT)
975 (LIBGFOR_CHECK_ATTRIBUTE_ALIAS, LIBGFOR_CHECK_SYNC_FETCH_AND_ADD)
976 (LIBGFOR_GTHREAD_WEAK, LIBGFOR_CHECK_UNLINK_OPEN_FILE)
977 (LIBGFOR_CHECK_CRLF, LIBGFOR_CHECK_FOR_BROKEN_ISFINITE)
978 (LIBGFOR_CHECK_FOR_BROKEN_ISNAN)
979 (LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY, LIBGFOR_CHECK_WORKING_STAT)
980 (LIBGFOR_CHECK_FPSETMASK, LIBGFOR_CHECK_MINGW_SNPRINTF):
981 Fix cache variable names.
982 * configure, Makefile.in: Regenerate.
983
49339fa4
JD
9842008-04-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
985
986 PR fortran/35991
987 * intrinsics/cshift0.c (cshift0): Avoid divide by zero.
988
8c154b65
TK
9892008-04-20 Thomas Koenig <tkoenig@gcc.gnu.org>
990
991 PR libfortran/35960
992 * intrinsics/reshape_generic.c (reshape_internal): If the size
993 of the resized array is zero, as determined by the SHAPE
994 argument, return early.
995 * m4/reshape.m4: Likewise.
996 * generated/reshape_i4.c: Regererated.
997 * generated/reshape_i8.c: Regenerated.
998 * generated/reshape_i16.c: Regenerated.
999 * generated/reshape_r4.c: Regenerated.
1000 * generated/reshape_r8.c: Regenerated.
1001 * generated/reshape_r10.c: Regenerated.
1002 * generated/reshape_r16.c: Regenerated.
1003 * generated/reshape_c4.c: Regenerated.
1004 * generated/reshape_c8.c: Regenerated.
1005 * generated/reshape_c10.c: Regenerated.
1006 * generated/reshape_c16.c: Regenerated.
1007
deb984e6
PB
10082008-04-18 Paolo Bonzini <bonzini@gnu.org>
1009
1010 PR bootstrap/35457
1011 * aclocal.m4: Regenerate.
1012 * configure: Regenerate.
1013
3a5a8be1
TK
10142008-04-14 Thomas Koenig <tkoenig@gcc.gnu.org>
1015
1016 PR libfortran/32972
1017 * intrinsics/spread_generic.c (spread): Use spread_i2()
1018 for GFC_DTYPE_DERIVED_2 (fix typo from previous commit).
1019
c7d0f4d5
TK
10202008-04-13 Thomas Koenig <tkoenig@gcc.gnu.org>
1021 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1022
1023 PR libfortran/32972
1024 PR libfortran/32512
1025 configure.ac: Add test for uintptr_t.
1026 configure: Regenerated.
1027 config.h.in: Regenerated.
1028 * libgfortran.h: GFC_DTYPE_DERIVED_1: New macro.
1029 GFC_DTYPE_DERIVED_2: New macro.
1030 GFC_DTYPE_DERIVED_4: New macro.
1031 GFC_DTYPE_DERIVED_8: New macro.
1032 GFC_DTYPE_DERIVED_16: New macro.
1033 GFC_UNALIGNED_2: New macro.
1034 GFC_UNALIGNED_4: New macro.
1035 GFC_UNALIGNED_8: New macro.
1036 GFC_UNALIGNED_16: New macro.
1037 intptr_t: Define if we don't have it.
1038 uintptr_t: Likewise.
1039 * runtime/backtrace.c (show_backtrace): Use intptr_t.
1040 * intrinsics/signal.c (signal_sub): Likewise.
1041 (signal_sub_int): Likewise.
1042 (alarm_sub_int_i4): Likewise.
1043 * intrinsics/spread_generic.c (spread): Use the integer
1044 routines for handling derived types of sizes 1, 2, 4, 8 and 16
1045 if the alignment of all pointers is correct.
1046 (spread_scalar): Likewise.
1047 * intrinsics/pack_generic.c (pack): Likewise.
1048 Use GFD_DTYPE_TYPE_SIZE to avoid nested switch statements.
1049 * intrinsics/unpack_generic.c (unpack1): Likewise.
1050 (unpack0): Likewise.
1051 * runtime/in_pack_generic.c (internal_pack): Likewise.
1052 * runtime/in_unpack_generic.c (internal_unpack): Likewise.
1053
24722ea9
JJ
10542008-04-09 Jakub Jelinek <jakub@redhat.com>
1055
1056 * io/list_read.c (snprintf): Define if HAVE_SNPRINTF isn't defined.
1057 (nml_read_obj): Add nml_err_msg_size argument. Pass it down to
1058 recursive call. Use snprintf instead of sprintf when %s nl->var_name
1059 is used.
1060 (nml_get_obj_data): Add nml_err_msg_size argument. Pass it down to
1061 nml_read_obj call. Use snprintf instead of sprintf when %s
1062 nl->var_name is used. Pass nml_err_msg to nml_parse_qualifier instead
1063 of parse_err_msg array. Append " for namelist variable " and
1064 nl->var_name to it.
1065 (namelist_read): Increase size of nml_err_msg array to 200. Pass
1066 sizeof nml_err_msg as extra argument to nml_get_obj_data.
1067
931149a6
JD
10682008-04-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1069
1070 PR fortran/25829 28655
1071 * io/open.c (edit_modes): Set flags.async. (new_unit) Set flags.async
1072 and flags.status. (st_open): Initialize flags.async.
1073 * io/list_read.c (read_charactor): Use delim_status instead of
1074 flags.delim.
1075 * io/read.c (read_x): Use pad_status instead of flags.pad.
1076 * io/inquire.c (inquire_via_unit): Add new checks.
1077 (inquire_via_filename): Likewise.
1078 * io/io.h (st_parameter_inquire): Add new flags.
1079 (st_parameter_dt): Likewise.
1080 * io/unit.c (get_internal_unit): Set flags.async. (init_units): Set
1081 flags.async.
1082 * io/transfer.c: Add delim and pad option arrays. (read_sf): Use
1083 pad_status instead of flags.pad. (read_block): Likewise.
1084 (data_transfer_init): Set flags.async and add checks.
1085 * io/write.c (write_character): Use delim_status.
1086 (list_formatted_write_scalar): Likewise. (nml_write_obj): Likewise.
1087 (namelist_write): Likewise.
1088
10256cbe
JD
10892008-04-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1090
1091 PR fortran/25829 28655
1092 * gfortran.map: Add new symbol, _gfortran_st_wait.
1093 * libgfortran.h (st_paramter_common): Add new I/O parameters.
1094 * open.c (st_option decimal_opt[], st_option encoding_opt[],
1095 st_option round_opt[], st_option sign_opt[], st_option async_opt[]): New
1096 parameter option arrays. (edit_modes): Add checks for new parameters.
1097 (new_unit): Likewise. (st_open): Likewise.
1098 * list_read.c (CASE_SEPERATORS): Add ';' as a valid separator.
1099 (eat_separator): Handle deimal comma. (read_logical): Fix whitespace.
1100 (parse_real): Handle decimal comma. (read_real): Handle decimal comma.
1101 * read.c (read_a): Use decimal status flag to allow comma in place of a
1102 decimal point. (read_f): Allow comma as acceptable character in float.
1103 According to decimal flag, substitute a period for a comma.
1104 (read_x): If decimal status flag is comma, disable the read_comma flag,
1105 not allowing comma as a delimiter, an extension otherwise.
1106 * io.h: (unit_decimal, unit_encoding, unit_round, unit_sign,
1107 unit_async): New enumerators. Add all new I/O parameters.
1108 * unix.c (unix_stream, int_stream): Add io_mode asychronous I/O control.
1109 (move_pos_offset, fd_alloc_w_at): Fix some whitespace.
1110 (fd_sfree): Use new enumerator. (fd_read): Likewise.
1111 (fd_write): Likewise. (fd_close): Fix whitespace.
1112 (fd_open): Use new enumertors. (tempfile, regular_file,
1113 open_external): Fix whitespace. (output_stream, error_stream): Set
1114 method. (stream_offset): Fix whitespace.
1115 * transfer.c: (st_option decimal_opt[], sign_opt[], blank_opt[]): New
1116 option arrays. (formatted_transfer_scalar): Set sf_read_comma flag
1117 based on new decimal_status flag. (data_transfer_init): Initialize new
1118 parameters. Add checks for decimal, sign, and blank. (st_wait): New stub.
1119 * format.c: (format_lex): Add format specifiers DP, DC, and D.
1120 (parse_format_list): Parse the new specifiers.
1121 * write.c (write_decimal): Use new sign enumerators to set the sign.
1122 (write_complex): Handle decimal comma and semi-colon separator.
1123 (nml_write_obj): Likewise.
1124 * write_float.def: Revise sign enumerators. (calculate_sign): Use new
1125 sign enumerators. (output_float): Likewise. Use new decimal_status flag
1126 to set the decimal character to a point or a comma.
1127
75f2543f
TK
11282008-03-28 Thomas Koenig <tkoenig@gcc.gnu.org>
1129
1130 PR libfortran/32972
1131 PR libfortran/32512
1132 * Makefile.am: Add new variable, i_spread_c, containing
1133 pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, spread_i16.c,
1134 spread_r4.c, spread_r8.c, spread_r10.c, spread_r16.c,
1135 spread_c4.c, spread_c8.c, spread_c10.c, spread_c16.c.
1136 * Makefile.in: Regenerated.
1137 * libgfortran.h: Add prototypes for spread_i1, spread_i2,
1138 spread_i4, spread_i8, spread_i16, spread_r4, spread_r8,
1139 spread_c4, spread_c8, spread_c10, spread_c16,
1140 spread_scalar_i1, spread_scalar_i2, spread_scalar_i4,
1141 spread_scalar_i8, spread_scalar_i16, spread_scalar_r4
1142 spread_scalar_r8, spread_scalar_c4, spread_scalar_c8,
1143 spread_scalar_c10 and spread_scalar_c16.
1144 Add macros to isolate both type and size information
1145 from array descriptors with a single mask operation.
1146 * intrinsics/spread_generic.c: Add calls to specific
1147 spread functions.
1148 * m4/spread.m4: New file.
1149 * generated/spread_i1.c: New file.
1150 * generated/spread_i2.c: New file.
1151 * generated/spread_i4.c: New file.
1152 * generated/spread_i8.c: New file.
1153 * generated/spread_i16.c: New file.
1154 * generated/spread_r4.c: New file.
1155 * generated/spread_r8.c: New file.
1156 * generated/spread_r10.c: New file.
1157 * generated/spread_r16.c: New file.
1158 * generated/spread_c4.c: New file.
1159 * generated/spread_c8.c: New file.
1160 * generated/spread_c10.c: New file.
1161 * generated/spread_c16.c: New file.
1162
fc8bc175
JD
11632008-03-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1164
1165 PR libfortran/35699
1166 * io/transfer.c (write_buf): Don't pad the record, just return if the
1167 data is NULL. (next_record_w): If there are bytes left in the record
1168 for unformatted direct I/O, pad out the record with zero bytes.
1169
3e08bbcf
TB
11702008-03-28 Tobias Burnus <burnus@net-b.de>
1171
1172 PR fortran/35721
1173 * intrinsics/associated.c (associated): Ignore different
1174 stride of pointer vs. target if only one element is referred.
1175
40e43495
JD
11762008-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1177
1178 * io/unix.c (fd_close): Do not close STDIN.
1179
3478bba4
TK
11802007-03-23 Thomas Koenig <tkoenig@gcc.gnu.org
1181
1182 PR libfortran/32972
1183 * Makefile.am: Add new variable, i_unpack_c, containing
1184 unpack_i1.c, unpack_i2.c, unpack_i4.c, unpack_i8.c,
1185 unpack_i16.c, unpack_r4.c, unpack_r8.c, unpack_r10.c,
1186 unpack_r16.c, unpack_c4.c, unpack_c8.c, unpack_c10.c
1187 and unpack_c16.c
1188 Add i_unpack_c to gfor_built_src.
1189 Add rule to generate i_unpack_c from m4/unpack.m4.
1190 * Makefile.in: Regenerated.
1191 * libgfortran.h: Add prototypes for unpack0_i1, unpack0_i2,
1192 unpack0_i4, unpack0_i8, unpack0_i16, unpack0_r4, unpack0_r8,
1193 unpack0_r10, unpack0_r16, unpack0_c4, unpack0_c8, unpack0_c10,
1194 unpack0_c16, unpack1_i1, unpack1_i2, unpack1_i4, unpack1_i8,
1195 unpack1_i16, unpack1_r4, unpack1_r8, unpack1_r10, unpack1_r16,
1196 unpack1_c4, unpack1_c8, unpack1_c10 and unpack1_c16.
1197 * intrinsics/pack_generic.c (unpack1): Add calls to specific
1198 unpack1 functions.
1199 (unpack0): Add calls to specific unpack0 functions.
1200 * m4/unpack.m4: New file.
1201 * generated/unpack_i1.c: New file.
1202 * generated/unpack_i2.c: New file.
1203 * generated/unpack_i4.c: New file.
1204 * generated/unpack_i8.c: New file.
1205 * generated/unpack_i16.c: New file.
1206 * generated/unpack_r4.c: New file.
1207 * generated/unpack_r8.c: New file.
1208 * generated/unpack_r10.c: New file.
1209 * generated/unpack_r16.c: New file.
1210 * generated/unpack_c4.c: New file.
1211 * generated/unpack_c8.c: New file.
1212 * generated/unpack_c10.c: New file.
1213 * generated/unpack_c16.c: New file.
1214
35077d5a
JD
12152008-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1216
1217 PR libfortran/35632
1218 * io/transfer.c (data_transfer_init): Fix whitespace.
1219 (next_record_w): Truncate the file only if the stream
1220 position is short of the file end.
1221
042a12f4
JD
12222008-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1223
1224 * intrinsics/pack_generic.c: Fix typo.
1225
fc34570c
JB
12262008-03-21 Janne Blomqvist <jb@gcc.gnu.org>
1227
1228 * gfortran.map: Move erfc_scaled symbols to new symbol node
1229 GFORTRAN_1.1, thereby fixing ABI bug introduced in r132846.
1230
36240d3d
TK
12312008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
1232
1233 PR libfortran/32972
1234 * runtime/in_pack_generic.c (internal_pack): Call correct
1235 function, pack_i16, for GFC_INTEGER_16.
1236
3ef2513a
TK
12372008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
1238
1239 PR libfortran/32972
1240 * Makefile.am: Add new variable, i_pack_c, containing
1241 pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, pack_i16.c,
1242 pack_r4.c, pack_r8.c, pack_r10.c, pack_r16.c, pack_c4.c,
1243 pack_c8.c, pack_c10.c, pack_c16.c.
1244 Add m4/pack.m4 to m4_files.
1245 Add i_pack_c to gfor_built_src.
1246 Add rule to generate i_pack_c from m4/pack.m4.
1247 * Makefile.in: Regenerated.
1248 * libgfortran.h: Add prototypes for pack_i1, pack_i2, pack_i4,
1249 pack_i8, pack_i16, pack_r4, pack_r8, pack_c4, pack_c8,
1250 pack_c10, pack_c16.
1251 * intrinsics/pack_generic.c: Add calls to specific
1252 pack functions.
1253 * m4/pack.m4: New file.
1254 * generated/pack_i1.c: New file.
1255 * generated/pack_i2.c: New file.
1256 * generated/pack_i4.c: New file.
1257 * generated/pack_i8.c: New file.
1258 * generated/pack_i16.c: New file.
1259 * generated/pack_r4.c: New file.
1260 * generated/pack_r8.c: New file.
1261 * generated/pack_r10.c: New file.
1262 * generated/pack_r16.c: New file.
1263 * generated/pack_c4.c: New file.
1264 * generated/pack_c8.c: New file.
1265 * generated/pack_c10.c: New file.
1266 * generated/pack_c16.c: New file.
1267
17f46ec3
JD
12682008-03-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1269
1270 PR libfortran/35627
1271 * io/list_read.c (free_line): Clear the line buffer enable flag and
1272 reset the index into line_buffer, aka item_count.
1273 (next_char): Cleanup whitespace.
1274 (read_logical): Use unget_char to assure that the first character of the
1275 bad logical is saved in case it is part of an object name. Remove the
1276 clearing of index and flag that is now in free_line.
1277 (read_real): Likewise.
1278
2f3b8279
TK
12792008-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
1280
1281 PR libfortran/32972
1282 * runtime/in_pack_generic.c (internal_pack): Fix typo in
1283 last commit.
1284
8e1d7686
TK
12852008-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
1286
1287 PR libfortran/32972
1288 * Makefile.am (in_pack_c): Add in_pack_i1.c, in_pack_i2.c,
1289 in_pack_r4.c, in_pack_r8.c, in_pack_r10.c and in_pack_r16.c.
1290 (in_unpack_c): Add in_unpack_i1.c, in_unpack_i2.c,
1291 in_unpack_r4.c, in_unpack_r8.c, in_unpack_r10.c and
1292 in_unpack_r16.c.
1293 * Makefile.in: Regenerate.
1294 * libgfortran.h: Add prototypes for internal_pack_1,
1295 internal_pack_2, internal_pack_16, internal_pack_r4,
1296 internal_pack_r8, internal_pack_r10, internal_pack_r16,
1297 internal_pack_c10 and internal_pack_c16. Add prototypes for
1298 internal_unpack_1, internal_unpack_2, internal_unpack_16,
1299 internal_unpack_r4, internal_unpack_r8, internal_unpack_r10,
1300 internal_unpack_r16, internal_unpack_c10 and
1301 internal_unpack_c16.
1302 * runtime/in_pack_generic.c (internal_pack): Use sizeof instead
1303 of hardwired sizes.
1304 Add calls to internal_pack_1, internal_pack_2,
1305 internal_pack_16, internal_pack_r4, internal_pack_r8,
1306 internal_pack_r10, internal_pack_r16, internal_pack_c10 and
1307 internal_pack_c16.
1308 * runtime/in_unpack_generic.c (internal_unpack): Use sizeof
1309 instead of hardwired sizes.
1310 Add calls to internal_unpack_1, internal_unpack_2,
1311 internal_unpack_16, internal_unpack_r4, internal_unpack_r8,
1312 internal_unpack_r10, internal_unpack_r16, internal_unpack_c10
1313 and internal_unpack_c16.
1314 * generated/in_pack_r4.c: New file.
1315 * generated/in_pack_i2.c: New file.
1316 * generated/in_unpack_i1.c: New file.
1317 * generated/in_pack_r10.c: New file.
1318 * generated/in_unpack_r4.c: New file.
1319 * generated/in_unpack_i2.c: New file.
1320 * generated/in_unpack_r16.c: New file.
1321 * generated/in_pack_r8.c: New file.
1322 * generated/in_unpack_r10.c: New file.
1323 * generated/in_unpack_r8.c: New file.
1324 * generated/in_pack_r16.c: New file.
1325 * generated/in_pack_i1.c: New file.
1326
5a79ae84
JD
13272008-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1328
1329 PR libfortran/35617
1330 * io/list_read.c (eat_separator): If next character after eatline is '!'
1331 then eatline again.
1332
38d24731
RW
13332008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1334
1335 * aclocal.m4: Regenerate.
1336 * configure: Likewise.
1337 * Makefile.in: Likewise.
1338
cb31c4bc
FXC
13392008-03-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1340
1341 PR libfortran/35524
1342 * intrinsics/erfc_scaled_inc.c: Only define the long double
1343 variant of erfc_scaled if expl is available.
1344
2d3ca8b7
FXC
13452008-03-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1346
1347 PR libfortran/32812
1348 * intrinsics/random.c (scramble_seed, unscramble_seed): New
1349 functions.
1350 (random_seed_i4): Scramble the seed the user gives us before
1351 storing it, and unscramble it when we return it back later.
1352
25abf448
HPN
13532008-03-05 Hans-Peter Nilsson <hp@axis.com>
1354
1355 PR libfortran/35293
1356 * io/unix.c (fd_truncate): Fold s->special_file case into
1357 success case of ftruncate/chsize call instead of the failure case.
1358 Make failure case actually return failure. Properly update stream
1359 pointers on failure. Call runtime_error for targets without
1360 neither ftruncate nor chsize where such a call would be needed.
1361
f489fba1
FXC
13622008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1363
1364 PR fortran/33197
1365 * intrinsics/erfc_scaled_inc.c: New file.
1366 * intrinsics/erfc_scaled.c: New file.
1367 * gfortran.map (GFORTRAN_1.0): Add _gfortran_erfc_scaled_r*.
1368 * Makefile.am: Add intrinsics/erfc_scaled.c.
1369 * config.h.in: Regenerate.
1370 * configure: Regenerate.
1371 * Makefile.in: Regenerate.
1372
9bd97567
FXC
13732008-03-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1374
1375 PR libfortran/35355
1376 * intrinsics/time_1.h (__time_1): Fix calculation of user_usec
1377 for mingw.
1378
4dabf736
JB
13792008-03-01 Janne Blomqvist <jb@gcc.gnu.org>
1380
1381 PR libfortran/35063
1382 * io/unit.c (destroy_unit_mutex): Call __gthread_mutex_destroy
1383 instead of macro kludge.
1384
cc4947e6
JB
13852008-02-25 Janne Blomqvist <jb@gcc.gnu.org>
1386
1387 PR fortran/29549
f489fba1
FXC
1388 * Makefile.am: Add -fcx-fortran-rules to AM_CFLAGS for all of
1389 libgfortran.
1390 * Makefile.in: Regenerated.
cc4947e6 1391
5095283b
FXC
13922008-02-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1393
1394 * m4/ifunction_logical.m4: Add casts to get rid of warnings.
1395 * generated/all_l1.c: Regenerate.
1396 * generated/all_l2.c: Regenerate.
1397 * generated/all_l4.c: Regenerate.
1398 * generated/all_l8.c: Regenerate.
1399 * generated/all_l16.c: Regenerate.
1400 * generated/any_l1.c: Regenerate.
1401 * generated/any_l2.c: Regenerate.
1402 * generated/any_l4.c: Regenerate.
1403 * generated/any_l8.c: Regenerate.
1404 * generated/any_l16.c: Regenerate.
1405 * generated/count_1_l.c: Regenerate.
1406 * generated/count_2_l.c: Regenerate.
1407 * generated/count_4_l.c: Regenerate.
1408 * generated/count_8_l.c: Regenerate.
1409 * generated/count_16_l.c: Regenerate.
1410
a94caabf
FXC
14112008-02-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1412
1413 PR libfortran/32841
1414 * acinclude.m4: Don't use HAVE_MATH_H.
1415 * configure: Regenerate.
1416
e32883d1
JD
14172008-02-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1418
1419 PR libfortran/35132
1420 * io/transfer.c (next_record_w): Truncate after the last record for
1421 STREAM I/O.
1422
1423 PR libfortran/34954
1424 * io/transfer.c (data_transfer_init): Initialize dtp->rec if writing.
1425
1426 PR libfortran/34974
1427 * io/transfer.c (formatted_transfer_scalar): Flush the buffer if skips
1428 is less than zero. (next_record_w): Use sseek to position the file to
1429 the max position reached.
1430
50a932e0
JD
14312008-02-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1432
1433 PR libfortran/35036
1434 * write_float.def (output_float): Add error checks for zero digits
1435 after decimal point in E and D format specifiers.
1436
ef4195d6
JD
14372008-02-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1438
1439 PR libfortran/35063
1440 * io/unit.c (destroy_unit_mutex): New function that uses
1441 __gthread_mutex_destroy_function or pthread_mutex_destroy after
1442 unlocking and before free_mem for final closure of I/O unit.
1443 (delete_root): Use new function.
1444 (free_internal_unit): Likewise.
1445 (close_unit_1): Likewise.
1446
ee440dd0
TK
14472008-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
1448
1449 PR libfortran/35001
1450 * m4/shape.m4: Return 0 for extents <= 0.
1451 * generated/shape_i4.c: Regenerated.
1452 * generated/shape_i8.c: Regenerated.
1453 * generated/shape_i16.c: Regenerated.
1454
bc814056
TK
14552008-01-27 Thomas Koenig <tkoenig@gcc.gnu.org>
1456
1457 PR libfortran/34980
1458 * m4/shape.m4: If return array is empty, return early.
1459 * generated/shape_i4.c: Regenerated.
1460 * generated/shape_i8.c: Regenerated.
1461 * generated/shape_i16.c: Regenerated.
1462
6cac3630
TK
14632008-01-26 Thomas Koenig <tkoenig@gcc.gnu.org>
1464
1465 PR libfofortran/34887
1466 * io/transfer.c (next_record_w): Always move to the farthest
1467 position when completing the record (also when we are
1468 processing a slash edit descriptor).
1469
12d9e9be 14702008-01-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
4152bc26
JD
1471
1472 PR libfortran/34876
1473 * io/transfer.c (write_buf): Handle case of zero sized array.
1474 (transfer_array): Set data pointer to NULL and size to zero. Then
1475 make a data transfer and return.
1476
4f6bebc3
DE
14772008-01-24 David Edelsohn <edelsohn@gnu.org>
1478
1479 * configure: Regenerate.
1480
17c2c96c
JD
14812008-01-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1482
2045a99a 1483 PR libfortran/34795
17c2c96c
JD
1484 * io/inquire.c (inquire_via_unit): If a unit is opened, return values
1485 according to the open action for DIRECT, FORMATTED, and UNFORMATTED.
1486 (inquire_via_filename): Return "UNKNOWN" for SEQUENTIAL, DIRECT,
1487 FORAMATTED, and UNFORMATTED inquiries.
1488 * io/unix.c (inquire_sequential): Return "UNKNOWN" when appropriate
1489 for files that are not opened. (inquire_direct): Same.
1490 (inquire_formatted): Same.
1491
6c540522
JD
14922008-01-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1493
2045a99a 1494 PR libfortran/34782
6c540522
JD
1495 * io/transfer.c (formatted_transfer_scalar): Set max_pos to the greater
1496 of the current max_pos or the newly calculated position.
1497
81014334
TB
14982008-01-18 Tobias Burnus <burnus@net-b.de>
1499
1500 * io/write.c (write_real): Increase default precision
1501 for REAL(16) by one.
1502
4349e292
SB
15032008-01-16 Steven Bosscher <steven@gcc.gnu.org>
1504
1505 PR libfortran/34669
1506 * mk-kinds-h.sh: Compile with -S to avoid calling the assembler,
1507 to avoid piping the -fdump-parse-tree output to the assembler
1508 when configuring with -pipe.
1509 * mk-sik-inc.sh: Likewise.
1510 * mk-srk-inc.sh: Likewise.
1511
90469382
TK
15122008-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
1513
1514 PR libfortran/34671
1515 * gfortran.am: Added _gfortran_all_l1, _gfortran_all_l2,
1516 _gfortran_any_l1, _gfortran_any_l2, -28,15 _gfortran_count_1_l,
1517 _gfortran_count_16_l, _gfortran_count_2_l, _gfortran_count_4_l and
1518 _gfortran_count_8_l Removed _gfortran_count_16_l16,
1519 _gfortran_count_16_l4, _gfortran_count_16_l8,
1520 _gfortran_count_4_l16, _gfortran_count_4_l4, _gfortran_count_4_l8,
1521 _gfortran_count_8_l16, _gfortran_count_8_l4 and
1522 _gfortran_count_8_l8.
1523 * Makefile.am: Added generated/any_l1.c and generated/any_l2.c to
1524 i_any_c. Added generated/all_l1. and generated/all_l2.c to
1525 i_all_c. Removed generated/count_4_l4.c, generated/count_8_l4.c,
1526 generated/count_16_l4.c, generated/count_4_l8.c,
1527 generated/count_8_l8.c, generated/count_16_l8.c,
1528 generated/count_4_l16.c, generated/count_8_l16.c, and
1529 generated/count_16_l16.c from i_count_c. Added count_1_l.c,
1530 count_2_l.c, count_4_l.c, count_8_l.c and count_16_l.c to
1531 i_count_c. I_M4_DEPS2 depends on ifunction_logical.m4, for
1532 any of the files generated from all.m4, any.m4 and count.m4.
1533 * Makefile.in: Regenerated.
1534 * m4/ifunction_logical.m4: New file. Use
1535 GFC_LOGICAL_1 pointer for access to source arrays.
1536 * m4/any.m4: Include ifunction_logical.m4 instead of
1537 ifunction.m4. Don't check atype_name.
1538 * m4/all.m4: Likewise.
1539 * m4/count.m4: Likewise.
1540 * generated/any_l1.c: New file.
1541 * generated/any_l2.c: New file.
1542 * generated/all_l1.c: New file.
1543 * generated/count_1_l.c: New file.
1544 * generated/count_2_l.c: New file.
1545 * generated/count_4_l.c: New file.
1546 * generated/count_8_l.c: New file.
1547 * generated/count_16_l.c: New file.
1548 * generated/any_l4.c: Regenerated.
1549 * generated/any_l8.c: Regenerated.
1550 * generated/any_l16.c: Regenerated.
1551 * generated/all_l4.c: Regenerated.
1552 * generated/all_l8.c: Regenerated.
1553 * generated/all_l16.c: Regenerated.
1554 * generated/count_4_l4.c: Removed.
1555 * generated/count_4_l8.c: Removed.
1556 * generated/count_4_l16.c: Removed.
1557 * generated/count_8_l4.c: Removed.
1558 * generated/count_8_l8.c: Removed.
1559 * generated/count_8_l16.c: Removed.
1560 * generated/count_16_l4.c: Removed.
1561 * generated/count_16_l8.c: Removed.
1562 * generated/count_16_l16.c: Removed.
1563
ccacefc7
TK
15642008-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
1565
1566 PR libfortran/34746
1567 * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Use %ld
1568 in printf format for all bounds checking; cast all
1569 integer-like arguments to runtime_error() to long int.
1570 (`m'name`'rtype_qual`_'atype_code): Likewise.
1571 (`s'name`'rtype_qual`_'atype_code): Likewise.
1572 * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Likewise.
1573 (`m'name`'rtype_qual`_'atype_code): Likewise.
1574 (`s'name`'rtype_qual`_'atype_code): Likewise.
1575 * generated/all_l16.c: Regenerated.
1576 * generated/all_l4.c: Regenerated.
1577 * generated/all_l8.c: Regenerated.
1578 * generated/any_l16.c: Regenerated.
1579 * generated/any_l4.c: Regenerated.
1580 * generated/any_l8.c: Regenerated.
1581 * generated/count_16_l16.c: Regenerated.
1582 * generated/count_16_l4.c: Regenerated.
1583 * generated/count_16_l8.c: Regenerated.
1584 * generated/count_4_l16.c: Regenerated.
1585 * generated/count_4_l4.c: Regenerated.
1586 * generated/count_4_l8.c: Regenerated.
1587 * generated/count_8_l16.c: Regenerated.
1588 * generated/count_8_l4.c: Regenerated.
1589 * generated/count_8_l8.c: Regenerated.
1590 * generated/maxloc0_16_i1.c: Regenerated.
1591 * generated/maxloc0_16_i16.c: Regenerated.
1592 * generated/maxloc0_16_i2.c: Regenerated.
1593 * generated/maxloc0_16_i4.c: Regenerated.
1594 * generated/maxloc0_16_i8.c: Regenerated.
1595 * generated/maxloc0_16_r10.c: Regenerated.
1596 * generated/maxloc0_16_r16.c: Regenerated.
1597 * generated/maxloc0_16_r4.c: Regenerated.
1598 * generated/maxloc0_16_r8.c: Regenerated.
1599 * generated/maxloc0_4_i1.c: Regenerated.
1600 * generated/maxloc0_4_i16.c: Regenerated.
1601 * generated/maxloc0_4_i2.c: Regenerated.
1602 * generated/maxloc0_4_i4.c: Regenerated.
1603 * generated/maxloc0_4_i8.c: Regenerated.
1604 * generated/maxloc0_4_r10.c: Regenerated.
1605 * generated/maxloc0_4_r16.c: Regenerated.
1606 * generated/maxloc0_4_r4.c: Regenerated.
1607 * generated/maxloc0_4_r8.c: Regenerated.
1608 * generated/maxloc0_8_i1.c: Regenerated.
1609 * generated/maxloc0_8_i16.c: Regenerated.
1610 * generated/maxloc0_8_i2.c: Regenerated.
1611 * generated/maxloc0_8_i4.c: Regenerated.
1612 * generated/maxloc0_8_i8.c: Regenerated.
1613 * generated/maxloc0_8_r10.c: Regenerated.
1614 * generated/maxloc0_8_r16.c: Regenerated.
1615 * generated/maxloc0_8_r4.c: Regenerated.
1616 * generated/maxloc0_8_r8.c: Regenerated.
1617 * generated/maxloc1_16_i1.c: Regenerated.
1618 * generated/maxloc1_16_i16.c: Regenerated.
1619 * generated/maxloc1_16_i2.c: Regenerated.
1620 * generated/maxloc1_16_i4.c: Regenerated.
1621 * generated/maxloc1_16_i8.c: Regenerated.
1622 * generated/maxloc1_16_r10.c: Regenerated.
1623 * generated/maxloc1_16_r16.c: Regenerated.
1624 * generated/maxloc1_16_r4.c: Regenerated.
1625 * generated/maxloc1_16_r8.c: Regenerated.
1626 * generated/maxloc1_4_i1.c: Regenerated.
1627 * generated/maxloc1_4_i16.c: Regenerated.
1628 * generated/maxloc1_4_i2.c: Regenerated.
1629 * generated/maxloc1_4_i4.c: Regenerated.
1630 * generated/maxloc1_4_i8.c: Regenerated.
1631 * generated/maxloc1_4_r10.c: Regenerated.
1632 * generated/maxloc1_4_r16.c: Regenerated.
1633 * generated/maxloc1_4_r4.c: Regenerated.
1634 * generated/maxloc1_4_r8.c: Regenerated.
1635 * generated/maxloc1_8_i1.c: Regenerated.
1636 * generated/maxloc1_8_i16.c: Regenerated.
1637 * generated/maxloc1_8_i2.c: Regenerated.
1638 * generated/maxloc1_8_i4.c: Regenerated.
1639 * generated/maxloc1_8_i8.c: Regenerated.
1640 * generated/maxloc1_8_r10.c: Regenerated.
1641 * generated/maxloc1_8_r16.c: Regenerated.
1642 * generated/maxloc1_8_r4.c: Regenerated.
1643 * generated/maxloc1_8_r8.c: Regenerated.
1644 * generated/maxval_i1.c: Regenerated.
1645 * generated/maxval_i16.c: Regenerated.
1646 * generated/maxval_i2.c: Regenerated.
1647 * generated/maxval_i4.c: Regenerated.
1648 * generated/maxval_i8.c: Regenerated.
1649 * generated/maxval_r10.c: Regenerated.
1650 * generated/maxval_r16.c: Regenerated.
1651 * generated/maxval_r4.c: Regenerated.
1652 * generated/maxval_r8.c: Regenerated.
1653 * generated/minloc0_16_i1.c: Regenerated.
1654 * generated/minloc0_16_i16.c: Regenerated.
1655 * generated/minloc0_16_i2.c: Regenerated.
1656 * generated/minloc0_16_i4.c: Regenerated.
1657 * generated/minloc0_16_i8.c: Regenerated.
1658 * generated/minloc0_16_r10.c: Regenerated.
1659 * generated/minloc0_16_r16.c: Regenerated.
1660 * generated/minloc0_16_r4.c: Regenerated.
1661 * generated/minloc0_16_r8.c: Regenerated.
1662 * generated/minloc0_4_i1.c: Regenerated.
1663 * generated/minloc0_4_i16.c: Regenerated.
1664 * generated/minloc0_4_i2.c: Regenerated.
1665 * generated/minloc0_4_i4.c: Regenerated.
1666 * generated/minloc0_4_i8.c: Regenerated.
1667 * generated/minloc0_4_r10.c: Regenerated.
1668 * generated/minloc0_4_r16.c: Regenerated.
1669 * generated/minloc0_4_r4.c: Regenerated.
1670 * generated/minloc0_4_r8.c: Regenerated.
1671 * generated/minloc0_8_i1.c: Regenerated.
1672 * generated/minloc0_8_i16.c: Regenerated.
1673 * generated/minloc0_8_i2.c: Regenerated.
1674 * generated/minloc0_8_i4.c: Regenerated.
1675 * generated/minloc0_8_i8.c: Regenerated.
1676 * generated/minloc0_8_r10.c: Regenerated.
1677 * generated/minloc0_8_r16.c: Regenerated.
1678 * generated/minloc0_8_r4.c: Regenerated.
1679 * generated/minloc0_8_r8.c: Regenerated.
1680 * generated/minloc1_16_i1.c: Regenerated.
1681 * generated/minloc1_16_i16.c: Regenerated.
1682 * generated/minloc1_16_i2.c: Regenerated.
1683 * generated/minloc1_16_i4.c: Regenerated.
1684 * generated/minloc1_16_i8.c: Regenerated.
1685 * generated/minloc1_16_r10.c: Regenerated.
1686 * generated/minloc1_16_r16.c: Regenerated.
1687 * generated/minloc1_16_r4.c: Regenerated.
1688 * generated/minloc1_16_r8.c: Regenerated.
1689 * generated/minloc1_4_i1.c: Regenerated.
1690 * generated/minloc1_4_i16.c: Regenerated.
1691 * generated/minloc1_4_i2.c: Regenerated.
1692 * generated/minloc1_4_i4.c: Regenerated.
1693 * generated/minloc1_4_i8.c: Regenerated.
1694 * generated/minloc1_4_r10.c: Regenerated.
1695 * generated/minloc1_4_r16.c: Regenerated.
1696 * generated/minloc1_4_r4.c: Regenerated.
1697 * generated/minloc1_4_r8.c: Regenerated.
1698 * generated/minloc1_8_i1.c: Regenerated.
1699 * generated/minloc1_8_i16.c: Regenerated.
1700 * generated/minloc1_8_i2.c: Regenerated.
1701 * generated/minloc1_8_i4.c: Regenerated.
1702 * generated/minloc1_8_i8.c: Regenerated.
1703 * generated/minloc1_8_r10.c: Regenerated.
1704 * generated/minloc1_8_r16.c: Regenerated.
1705 * generated/minloc1_8_r4.c: Regenerated.
1706 * generated/minloc1_8_r8.c: Regenerated.
1707 * generated/minval_i1.c: Regenerated.
1708 * generated/minval_i16.c: Regenerated.
1709 * generated/minval_i2.c: Regenerated.
1710 * generated/minval_i4.c: Regenerated.
1711 * generated/minval_i8.c: Regenerated.
1712 * generated/minval_r10.c: Regenerated.
1713 * generated/minval_r16.c: Regenerated.
1714 * generated/minval_r4.c: Regenerated.
1715 * generated/minval_r8.c: Regenerated.
1716 * generated/product_c10.c: Regenerated.
1717 * generated/product_c16.c: Regenerated.
1718 * generated/product_c4.c: Regenerated.
1719 * generated/product_c8.c: Regenerated.
1720 * generated/product_i1.c: Regenerated.
1721 * generated/product_i16.c: Regenerated.
1722 * generated/product_i2.c: Regenerated.
1723 * generated/product_i4.c: Regenerated.
1724 * generated/product_i8.c: Regenerated.
1725 * generated/product_r10.c: Regenerated.
1726 * generated/product_r16.c: Regenerated.
1727 * generated/product_r4.c: Regenerated.
1728 * generated/product_r8.c: Regenerated.
1729 * generated/sum_c10.c: Regenerated.
1730 * generated/sum_c16.c: Regenerated.
1731 * generated/sum_c4.c: Regenerated.
1732 * generated/sum_c8.c: Regenerated.
1733 * generated/sum_i1.c: Regenerated.
1734 * generated/sum_i16.c: Regenerated.
1735 * generated/sum_i2.c: Regenerated.
1736 * generated/sum_i4.c: Regenerated.
1737 * generated/sum_i8.c: Regenerated.
1738 * generated/sum_r10.c: Regenerated.
1739 * generated/sum_r16.c: Regenerated.
1740 * generated/sum_r4.c: Regenerated.
1741 * generated/sum_r8.c: Regenerated.
1742
fd6590f8
TK
17432008-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
1744
1745 PR libfortran/34670
1746 * m4/iparm.m4 (upcase): New macro (copied from the m4 manual).
1747 (u_name): New macro for the upper case name of the intrinsic.
1748 * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Add
1749 bounds checking and rank check, depending on
1750 compile_options.bounds_check.
1751 (`m'name`'rtype_qual`_'atype_code): Likewise.
1752 (`s'name`'rtype_qual`_'atype_code): Likewise.
1753 * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Add
1754 bounds checking and rank check, depending on
1755 compile_options.bounds_check.
1756 (`m'name`'rtype_qual`_'atype_code): Likewise.
1757 (`s'name`'rtype_qual`_'atype_code): Likewise.
1758 * generated/all_l16.c: Regenerated.
1759 * generated/all_l4.c: Regenerated.
1760 * generated/all_l8.c: Regenerated.
1761 * generated/any_l16.c: Regenerated.
1762 * generated/any_l4.c: Regenerated.
1763 * generated/any_l8.c: Regenerated.
1764 * generated/count_16_l16.c: Regenerated.
1765 * generated/count_16_l4.c: Regenerated.
1766 * generated/count_16_l8.c: Regenerated.
1767 * generated/count_4_l16.c: Regenerated.
1768 * generated/count_4_l4.c: Regenerated.
1769 * generated/count_4_l8.c: Regenerated.
1770 * generated/count_8_l16.c: Regenerated.
1771 * generated/count_8_l4.c: Regenerated.
1772 * generated/count_8_l8.c: Regenerated.
1773 * generated/maxloc0_16_i1.c: Regenerated.
1774 * generated/maxloc0_16_i16.c: Regenerated.
1775 * generated/maxloc0_16_i2.c: Regenerated.
1776 * generated/maxloc0_16_i4.c: Regenerated.
1777 * generated/maxloc0_16_i8.c: Regenerated.
1778 * generated/maxloc0_16_r10.c: Regenerated.
1779 * generated/maxloc0_16_r16.c: Regenerated.
1780 * generated/maxloc0_16_r4.c: Regenerated.
1781 * generated/maxloc0_16_r8.c: Regenerated.
1782 * generated/maxloc0_4_i1.c: Regenerated.
1783 * generated/maxloc0_4_i16.c: Regenerated.
1784 * generated/maxloc0_4_i2.c: Regenerated.
1785 * generated/maxloc0_4_i4.c: Regenerated.
1786 * generated/maxloc0_4_i8.c: Regenerated.
1787 * generated/maxloc0_4_r10.c: Regenerated.
1788 * generated/maxloc0_4_r16.c: Regenerated.
1789 * generated/maxloc0_4_r4.c: Regenerated.
1790 * generated/maxloc0_4_r8.c: Regenerated.
1791 * generated/maxloc0_8_i1.c: Regenerated.
1792 * generated/maxloc0_8_i16.c: Regenerated.
1793 * generated/maxloc0_8_i2.c: Regenerated.
1794 * generated/maxloc0_8_i4.c: Regenerated.
1795 * generated/maxloc0_8_i8.c: Regenerated.
1796 * generated/maxloc0_8_r10.c: Regenerated.
1797 * generated/maxloc0_8_r16.c: Regenerated.
1798 * generated/maxloc0_8_r4.c: Regenerated.
1799 * generated/maxloc0_8_r8.c: Regenerated.
1800 * generated/maxloc1_16_i1.c: Regenerated.
1801 * generated/maxloc1_16_i16.c: Regenerated.
1802 * generated/maxloc1_16_i2.c: Regenerated.
1803 * generated/maxloc1_16_i4.c: Regenerated.
1804 * generated/maxloc1_16_i8.c: Regenerated.
1805 * generated/maxloc1_16_r10.c: Regenerated.
1806 * generated/maxloc1_16_r16.c: Regenerated.
1807 * generated/maxloc1_16_r4.c: Regenerated.
1808 * generated/maxloc1_16_r8.c: Regenerated.
1809 * generated/maxloc1_4_i1.c: Regenerated.
1810 * generated/maxloc1_4_i16.c: Regenerated.
1811 * generated/maxloc1_4_i2.c: Regenerated.
1812 * generated/maxloc1_4_i4.c: Regenerated.
1813 * generated/maxloc1_4_i8.c: Regenerated.
1814 * generated/maxloc1_4_r10.c: Regenerated.
1815 * generated/maxloc1_4_r16.c: Regenerated.
1816 * generated/maxloc1_4_r4.c: Regenerated.
1817 * generated/maxloc1_4_r8.c: Regenerated.
1818 * generated/maxloc1_8_i1.c: Regenerated.
1819 * generated/maxloc1_8_i16.c: Regenerated.
1820 * generated/maxloc1_8_i2.c: Regenerated.
1821 * generated/maxloc1_8_i4.c: Regenerated.
1822 * generated/maxloc1_8_i8.c: Regenerated.
1823 * generated/maxloc1_8_r10.c: Regenerated.
1824 * generated/maxloc1_8_r16.c: Regenerated.
1825 * generated/maxloc1_8_r4.c: Regenerated.
1826 * generated/maxloc1_8_r8.c: Regenerated.
1827 * generated/maxval_i1.c: Regenerated.
1828 * generated/maxval_i16.c: Regenerated.
1829 * generated/maxval_i2.c: Regenerated.
1830 * generated/maxval_i4.c: Regenerated.
1831 * generated/maxval_i8.c: Regenerated.
1832 * generated/maxval_r10.c: Regenerated.
1833 * generated/maxval_r16.c: Regenerated.
1834 * generated/maxval_r4.c: Regenerated.
1835 * generated/maxval_r8.c: Regenerated.
1836 * generated/minloc0_16_i1.c: Regenerated.
1837 * generated/minloc0_16_i16.c: Regenerated.
1838 * generated/minloc0_16_i2.c: Regenerated.
1839 * generated/minloc0_16_i4.c: Regenerated.
1840 * generated/minloc0_16_i8.c: Regenerated.
1841 * generated/minloc0_16_r10.c: Regenerated.
1842 * generated/minloc0_16_r16.c: Regenerated.
1843 * generated/minloc0_16_r4.c: Regenerated.
1844 * generated/minloc0_16_r8.c: Regenerated.
1845 * generated/minloc0_4_i1.c: Regenerated.
1846 * generated/minloc0_4_i16.c: Regenerated.
1847 * generated/minloc0_4_i2.c: Regenerated.
1848 * generated/minloc0_4_i4.c: Regenerated.
1849 * generated/minloc0_4_i8.c: Regenerated.
1850 * generated/minloc0_4_r10.c: Regenerated.
1851 * generated/minloc0_4_r16.c: Regenerated.
1852 * generated/minloc0_4_r4.c: Regenerated.
1853 * generated/minloc0_4_r8.c: Regenerated.
1854 * generated/minloc0_8_i1.c: Regenerated.
1855 * generated/minloc0_8_i16.c: Regenerated.
1856 * generated/minloc0_8_i2.c: Regenerated.
1857 * generated/minloc0_8_i4.c: Regenerated.
1858 * generated/minloc0_8_i8.c: Regenerated.
1859 * generated/minloc0_8_r10.c: Regenerated.
1860 * generated/minloc0_8_r16.c: Regenerated.
1861 * generated/minloc0_8_r4.c: Regenerated.
1862 * generated/minloc0_8_r8.c: Regenerated.
1863 * generated/minloc1_16_i1.c: Regenerated.
1864 * generated/minloc1_16_i16.c: Regenerated.
1865 * generated/minloc1_16_i2.c: Regenerated.
1866 * generated/minloc1_16_i4.c: Regenerated.
1867 * generated/minloc1_16_i8.c: Regenerated.
1868 * generated/minloc1_16_r10.c: Regenerated.
1869 * generated/minloc1_16_r16.c: Regenerated.
1870 * generated/minloc1_16_r4.c: Regenerated.
1871 * generated/minloc1_16_r8.c: Regenerated.
1872 * generated/minloc1_4_i1.c: Regenerated.
1873 * generated/minloc1_4_i16.c: Regenerated.
1874 * generated/minloc1_4_i2.c: Regenerated.
1875 * generated/minloc1_4_i4.c: Regenerated.
1876 * generated/minloc1_4_i8.c: Regenerated.
1877 * generated/minloc1_4_r10.c: Regenerated.
1878 * generated/minloc1_4_r16.c: Regenerated.
1879 * generated/minloc1_4_r4.c: Regenerated.
1880 * generated/minloc1_4_r8.c: Regenerated.
1881 * generated/minloc1_8_i1.c: Regenerated.
1882 * generated/minloc1_8_i16.c: Regenerated.
1883 * generated/minloc1_8_i2.c: Regenerated.
1884 * generated/minloc1_8_i4.c: Regenerated.
1885 * generated/minloc1_8_i8.c: Regenerated.
1886 * generated/minloc1_8_r10.c: Regenerated.
1887 * generated/minloc1_8_r16.c: Regenerated.
1888 * generated/minloc1_8_r4.c: Regenerated.
1889 * generated/minloc1_8_r8.c: Regenerated.
1890 * generated/minval_i1.c: Regenerated.
1891 * generated/minval_i16.c: Regenerated.
1892 * generated/minval_i2.c: Regenerated.
1893 * generated/minval_i4.c: Regenerated.
1894 * generated/minval_i8.c: Regenerated.
1895 * generated/minval_r10.c: Regenerated.
1896 * generated/minval_r16.c: Regenerated.
1897 * generated/minval_r4.c: Regenerated.
1898 * generated/minval_r8.c: Regenerated.
1899 * generated/product_c10.c: Regenerated.
1900 * generated/product_c16.c: Regenerated.
1901 * generated/product_c4.c: Regenerated.
1902 * generated/product_c8.c: Regenerated.
1903 * generated/product_i1.c: Regenerated.
1904 * generated/product_i16.c: Regenerated.
1905 * generated/product_i2.c: Regenerated.
1906 * generated/product_i4.c: Regenerated.
1907 * generated/product_i8.c: Regenerated.
1908 * generated/product_r10.c: Regenerated.
1909 * generated/product_r16.c: Regenerated.
1910 * generated/product_r4.c: Regenerated.
1911 * generated/product_r8.c: Regenerated.
1912 * generated/sum_c10.c: Regenerated.
1913 * generated/sum_c16.c: Regenerated.
1914 * generated/sum_c4.c: Regenerated.
1915 * generated/sum_c8.c: Regenerated.
1916 * generated/sum_i1.c: Regenerated.
1917 * generated/sum_i16.c: Regenerated.
1918 * generated/sum_i2.c: Regenerated.
1919 * generated/sum_i4.c: Regenerated.
1920 * generated/sum_i8.c: Regenerated.
1921 * generated/sum_r10.c: Regenerated.
1922 * generated/sum_r16.c: Regenerated.
1923 * generated/sum_r4.c: Regenerated.
1924 * generated/sum_r8.c: Regenerated.
1925
fa347f22
JD
19262008-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1927
1928 PR libfortran/34676
1929 * io/list_read.c (next_char): Only save the EOF condition for later if
1930 advance="no".
1931
9370b3c0
TK
19322008-01-03 Thomas Koenig <tkoenig@gcc.gnu.org>
1933
1934 PR libfortran/34565
1935 * io/io.h: Adjust protoypes for open_internal(),
1936 next_array_record() and init_loop_spec().
1937 * io/list_read.c (next_char): Use argument "finished"
1938 of next_array_record to check for end on internal file.
1939 * io/unit.c: Calculate the offset for an array
1940 internal file and supply this informatin to open_internal().
1941 * io/unix.c (open_internal): Set the offset for the internal
1942 file on open.
1943 * io/transfer.c (init_loop_spec): Calculate the starting
1944 record in case of negative strides. Return size of 0 for
1945 an empty array.
1946 (next_array_record): Use an extra flag to signal that the
1947 array is finished.
1948 (next_record_r): Use the new flag to next_array_record().
1949 (next_record_w): Likewise.