OSDN Git Service

PR tree-optimization/26796
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2006-03-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2
3         PR libgfortran/26880
4         * io/file_pos.c (st_rewind): Clear read_bad flag.
5
6 2006-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
7
8         PR libgfortran/26661
9         * io/io.h: Add read_sf so it can be used by read_x.
10         * io/transfer.c (read_sf): Pass no_error flag to read_sf.  Use it to
11         break out rather than error on EOF or EOR conditions.
12         (read_block): Update call to read_sf.
13         (read_block_direct): Ditto.
14         * io/read.c (read_x): Use the modified read_sf instead of read_block.
15
16 2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>
17
18         PR libfortran/26735
19         * io/transfer.c (data_transfer_init):  Set u_flags.convert
20         on an unopened unit if specified by environment variable
21         (via get_unformatted_convert) or by compile-time option.
22
23 2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>
24
25         PR fortran/26769
26         * Makefile.am:  Add transpose_r10.c and reshape_r10.c.
27         * aclocal.m4:  Regenerate using aclocal 1.9.3.
28         * Makefile.in:  Regenerate using automake 1.9.3.
29         * m4/iparm.m4 (rtype_ccode):  If rtype_letter is `i',
30         evaluate to rtype_kind, otherwise to rtype_code.
31         * generated/transpose_r10.c:  Add.
32         * generated/reshape_r10.c:  Add.
33
34 2006-03-22  Thomas Koenig  <Thomas.Koenig@online.de>
35
36         PR fortran/19303
37         * libgfortran.h (compile_options_t):  Add record_marker.
38         * runtime/compile_options.c (set_record_marker):
39         New function.
40         * io/open.c:  If we have four-byte record markers, use
41         GFC_INTEGER_4_HUGE as default record length.
42         * io/file_pos.c (unformatted_backspace):  Handle
43         different size record markers.
44         * io/transfer.c (us_read):  Likewise.
45         (us_write):  Likewise.
46         (next_record_r):  Likewise.
47         (write_us_marker):  Likewise.
48         (next_record_w):  Likewise.
49
50 2006-03-20  Thomas Koenig  <Thomas.Koenig@online.de>
51
52         PR fortran/20935
53         * m4/iforeach.m4:  Add SCALAR_FOREACH_FUNCTION macro.
54         * m4/ifunction.m4:  Add SCALAR_ARRAY_FUNCTION macro.
55         * m4/minloc0.m4:  Use SCALAR_FOREACH_FUNCTION.
56         * m4/minloc1.m4:  Use SCALAR_ARRAY_FUNCTION.
57         * m4/maxloc0.m4:  Use SCALAR_FOREACH_FUNCTION.
58         * m4/maxloc1.m4:  Use SCALAR_ARRAY_FUNCTION.
59         * m4/minval.m4:  Likewise.
60         * m4/maxval.m4:  Likewise.
61         * m4/product.m4:  Likewise.
62         * m4/sum.m4:  Likewise.
63         * minloc0_16_i16.c : Regenerated.
64         * minloc0_16_i4.c : Regenerated.
65         * minloc0_16_i8.c : Regenerated.
66         * minloc0_16_r10.c : Regenerated.
67         * minloc0_16_r16.c : Regenerated.
68         * minloc0_16_r4.c : Regenerated.
69         * minloc0_16_r8.c : Regenerated.
70         * minloc0_4_i16.c : Regenerated.
71         * minloc0_4_i4.c : Regenerated.
72         * minloc0_4_i8.c : Regenerated.
73         * minloc0_4_r10.c : Regenerated.
74         * minloc0_4_r16.c : Regenerated.
75         * minloc0_4_r4.c : Regenerated.
76         * minloc0_4_r8.c : Regenerated.
77         * minloc0_8_i16.c : Regenerated.
78         * minloc0_8_i4.c : Regenerated.
79         * minloc0_8_i8.c : Regenerated.
80         * minloc0_8_r10.c : Regenerated.
81         * minloc0_8_r16.c : Regenerated.
82         * minloc0_8_r4.c : Regenerated.
83         * minloc0_8_r8.c : Regenerated.
84         * minloc1_16_i16.c : Regenerated.
85         * minloc1_16_i4.c : Regenerated.
86         * minloc1_16_i8.c : Regenerated.
87         * minloc1_16_r10.c : Regenerated.
88         * minloc1_16_r16.c : Regenerated.
89         * minloc1_16_r4.c : Regenerated.
90         * minloc1_16_r8.c : Regenerated.
91         * minloc1_4_i16.c : Regenerated.
92         * minloc1_4_i4.c : Regenerated.
93         * minloc1_4_i8.c : Regenerated.
94         * minloc1_4_r10.c : Regenerated.
95         * minloc1_4_r16.c : Regenerated.
96         * minloc1_4_r4.c : Regenerated.
97         * minloc1_4_r8.c : Regenerated.
98         * minloc1_8_i16.c : Regenerated.
99         * minloc1_8_i4.c : Regenerated.
100         * minloc1_8_i8.c : Regenerated.
101         * minloc1_8_r10.c : Regenerated.
102         * minloc1_8_r16.c : Regenerated.
103         * minloc1_8_r4.c : Regenerated.
104         * minloc1_8_r8.c : Regenerated.
105         * maxloc0_16_i16.c : Regenerated.
106         * maxloc0_16_i4.c : Regenerated.
107         * maxloc0_16_i8.c : Regenerated.
108         * maxloc0_16_r10.c : Regenerated.
109         * maxloc0_16_r16.c : Regenerated.
110         * maxloc0_16_r4.c : Regenerated.
111         * maxloc0_16_r8.c : Regenerated.
112         * maxloc0_4_i16.c : Regenerated.
113         * maxloc0_4_i4.c : Regenerated.
114         * maxloc0_4_i8.c : Regenerated.
115         * maxloc0_4_r10.c : Regenerated.
116         * maxloc0_4_r16.c : Regenerated.
117         * maxloc0_4_r4.c : Regenerated.
118         * maxloc0_4_r8.c : Regenerated.
119         * maxloc0_8_i16.c : Regenerated.
120         * maxloc0_8_i4.c : Regenerated.
121         * maxloc0_8_i8.c : Regenerated.
122         * maxloc0_8_r10.c : Regenerated.
123         * maxloc0_8_r16.c : Regenerated.
124         * maxloc0_8_r4.c : Regenerated.
125         * maxloc0_8_r8.c : Regenerated.
126         * maxloc1_16_i16.c : Regenerated.
127         * maxloc1_16_i4.c : Regenerated.
128         * maxloc1_16_i8.c : Regenerated.
129         * maxloc1_16_r10.c : Regenerated.
130         * maxloc1_16_r16.c : Regenerated.
131         * maxloc1_16_r4.c : Regenerated.
132         * maxloc1_16_r8.c : Regenerated.
133         * maxloc1_4_i16.c : Regenerated.
134         * maxloc1_4_i4.c : Regenerated.
135         * maxloc1_4_i8.c : Regenerated.
136         * maxloc1_4_r10.c : Regenerated.
137         * maxloc1_4_r16.c : Regenerated.
138         * maxloc1_4_r4.c : Regenerated.
139         * maxloc1_4_r8.c : Regenerated.
140         * maxloc1_8_i16.c : Regenerated.
141         * maxloc1_8_i4.c : Regenerated.
142         * maxloc1_8_i8.c : Regenerated.
143         * maxloc1_8_r10.c : Regenerated.
144         * maxloc1_8_r16.c : Regenerated.
145         * maxloc1_8_r4.c : Regenerated.
146         * maxloc1_8_r8.c : Regenerated.
147         * maxval_i16.c : Regenerated.
148         * maxval_i4.c : Regenerated.
149         * maxval_i8.c : Regenerated.
150         * maxval_r10.c : Regenerated.
151         * maxval_r16.c : Regenerated.
152         * maxval_r4.c : Regenerated.
153         * maxval_r8.c : Regenerated.
154         * minval_i16.c : Regenerated.
155         * minval_i4.c : Regenerated.
156         * minval_i8.c : Regenerated.
157         * minval_r10.c : Regenerated.
158         * minval_r16.c : Regenerated.
159         * minval_r4.c : Regenerated.
160         * minval_r8.c : Regenerated.
161         * sum_c10.c : Regenerated.
162         * sum_c16.c : Regenerated.
163         * sum_c4.c : Regenerated.
164         * sum_c8.c : Regenerated.
165         * sum_i16.c : Regenerated.
166         * sum_i4.c : Regenerated.
167         * sum_i8.c : Regenerated.
168         * sum_r10.c : Regenerated.
169         * sum_r16.c : Regenerated.
170         * sum_r4.c : Regenerated.
171         * sum_r8.c : Regenerated.
172         * product_c10.c : Regenerated.
173         * product_c16.c : Regenerated.
174         * product_c4.c : Regenerated.
175         * product_c8.c : Regenerated.
176         * product_i16.c : Regenerated.
177         * product_i4.c : Regenerated.
178         * product_i8.c : Regenerated.
179         * product_r10.c : Regenerated.
180         * product_r16.c : Regenerated.
181         * product_r4.c : Regenerated.
182         * product_r8.c : Regenerated.
183
184 2006-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
185
186         PR libgfortran/26509
187         * libgfortran.h: Add ERROR_DIRECT_EOR.
188         * runtime/error.c (translate_error): Add translation for new error.
189         * io/transfer.c (write_buf): Add check for EOR when mode is 
190         direct access.
191
192 2006-03-13  Paul Thomas  <pault@gcc.gnu.org>
193
194         PR fortran/25378
195         * libgfortran/m4/minloc1.m4: Set the initial position to zero and
196         modify the condition for updating it, to implement the F2003
197         requirement for all(mask).eq.false.
198         * libgfortran/m4/maxloc1.m4: The same.
199         * libgfortran/m4/iforeach.m4: The same.
200         * libgfortran/m4/minloc0.m4: The same.
201         * libgfortran/m4/maxloc0.m4: The same.
202         * libgfortran/generated/maxloc0_16_i16.c: Regenerated, together
203         with 41 others.
204         * libgfortran/generated/minloc0_16_i16.c: Regenerated, together
205         with 41 others.
206
207 2006-03-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
208
209         PR libgfortran/26499
210         * io/file_pos (st_rewind): Flush always.
211         * io/unix.c (fd_truncate): Return SUCCESS rather than FAILURE for
212         special files like /dev/null.
213         * io/transfer.c (st_write_done): Remove broken logic that
214         prevented calling fd_truncate.
215
216 2006-03-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
217
218         PR libgfortran/26554
219         * io/list_read.c (read_logical): Return the value if not in namelist
220         mode.
221
222 2006-03-03  Thomas Koenig  <Thomas.Koenig@online.de>
223
224         PR fortran/25031
225         * runtime/memory.c:  Adjust copyright years.
226         (allocate_array):  New function.
227         (allocate64_array):  New function.
228         * libgfortran.h (error_codes):  Add ERROR_ALLOCATION.
229
230 2006-02-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
231
232         PR libgfortran/26136
233         * io/io.h: Add flag for reading from line_buffer.
234         * io/list_read.c (l_push_char): New function to save namelist
235         input when reading logicals.
236         (free_line): New function to free line_buffer memory.
237         (next_char): Added feature to read from line_buffer.
238         (read_logical): Use new functions to test for '=' after reading a
239         logical value, checking for possible variable name.
240         (namelist_read): Use free_line when all done.
241
242 2006-02-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
243
244         PR libgfortran/26464
245         * io/file_pos.c (st_backspace): Flush and truncate file
246         when in AFTER_ENDFILE condition.
247         * io/transfer.c (st_read_done): Remove flush, no longer needed.
248
249 2006-02-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
250
251         PR libgfortran/26423
252         * io/unix.c (fd_seek): Revert change from 25949.
253         (fd_read): Same.
254         (fd_write): Same.
255
256 2006-02-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
257
258         * io/open.c (edit_modes): Correct abusive copy-pasting.
259
260 2006-02-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
261
262         PR libfortran/24903
263         * m4/dotprodc.m4: Use __builtin_conj instead of assigning real
264         and imaginary parts separately.
265         * generated/dotprod_c4.c: Regenerated.
266         * generated/dotprod_c8.c: Regenerated.
267         * generated/dotprod_c10.c: Regenerated.
268         * generated/dotprod_c16.c: Regenerated.
269
270 2006-02-12  Janne Blomqvist  <jb@gcc.gnu.org>
271
272         PR libgfortran/25949
273         * io/io.h: Add set function pointer to struct stream.  
274         * io/unix.c (fd_seek): Only update offset, don't seek.
275         (fd_sset): New function.
276         (fd_read): Call lseek directly if necessary.
277         (fd_write): Likewise.
278         (fd_open): Set pointer to fd_sset.
279         (mem_set): New function.
280         (open_internal): Set pointer to mem_set.
281         * io/transfer.c (write_block_direct): Rename to write_buf, add
282         error return, non-pointer length argument.
283         (unformatted_write): Update to use write_buf.
284         (us_write): Simplify by using swrite instead of salloc_w.
285         (write_us_marker): New function.
286         (new_record_w): Use sset instead of memset, use write_us_marker,
287         simplify by using swrite instead of salloc_w.
288
289 2006-02-08  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
290
291         PR libfortran/25425
292         * libgfortran.h: Add pedantic field to compile_options struct.
293         * io/write.c (calculate_G_format): Depending on the standard,
294         choose E or F format for list-directed output of 0.0.
295         * runtime/error.c (notify_std): Make warning and error dependent
296         on pedanticity.
297         * runtime/compile_options.c (set_std): Use new pedantic argument.
298
299 2006-02-07  Dale Ranta  <dir@lanl.gov>
300
301         PR fortran/25577
302         * intrinsics/mvbits.c: Shift '(TYPE)1' type when building 'lenmask'.
303
304 2006-02-07  Rainer Emrich <r.emrich@de.tecosim.com>
305
306         * intrinsics/c99_functions.c: Work around incompatible
307         declarations of cabs{,f,l} on pre-C99 IRIX systems.
308
309 2005-02-06  Thomas Koenig  <Thomas.Koenig@online.de>
310
311         PR libfortran/23815
312         * runtime/environ.c (init_unformatted):  Add GFORTRAN_CONVERT_UNIT
313         environment variable.
314         (top level):  Add defines, type and static variables for
315         GFORTRAN_CONVERT_UNIT handling.
316         (search_unit):  New function.
317         (match_word): New function.
318         (match_integer): New function.
319         (next_token): New function.
320         (push_token): New function.
321         (mark_single): New function.
322         (mark_range): New funciton.
323         (do_parse): New function.
324         (init_unformatted): New function.
325         (get_unformatted_convert): New function.
326         * runtime/compile_options.c:  Add set_convert().
327         * libgfortran.h:  Add convert to compile_options_t.
328         * io/open.c (st_open): Call get_unformatted_convert to get
329         unit default; if CONVERT_NONE is returned, check for
330         the presence of a CONVERT specifier and use it.
331         As default, use compile_options.convert.
332         * io/io.h (top level): Add CONVERT_NONE to unit_convert, to signal
333         "nothing has been set".
334         (top level): Add prototype for get_unformatted_convert.
335
336 2006-02-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
337
338         PR libfortran/24685
339         * io/write.c (write_real): Widen the default format for real(10)
340         variables output.
341
342 2006-01-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
343
344         PR libgfortran/25835
345         * io/transfer.c (st_read_done): Flush buffers when read is done.
346
347 2006-01-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
348
349         PR libgfortran/25697
350         * io/transfer.c (us_read): Detect end of file condition from previous
351         operations and bail out (no need to pre-position).
352
353 2006-01-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
354
355         PR libgfortran/25631
356         * io/transfer.c (formatted_transfer_scalar): Adjust pending_spaces and
357         skips so that TL works correctly when no bytes_used yet.  
358
359 2006-01-16  Roger Sayle  <roger@eyesopen.com>
360
361         * configure.ac (CFLAGS): Update to include -std=gnu99 so that
362         the configure tests will be run with the same environment as
363         used to compile the libgfortran source code.
364         * configure: Regenerate.
365
366 2006-01-12  Roger Sayle  <roger@eyesopen.com>
367
368         * intrinsics/c99_functions.c: Add function prototypes to avoid
369         warnings from -Wstrict-prototypes -Wmissing-prototypes.  On Tru64
370         work around a brain-dead libm by redirecting calls to cabs{,f,l}
371         to a local __gfc_cabs{,f,l}.
372
373 2006-01-07  Janne Blomqvist  <jb@gcc.gnu.org>
374
375         * configure.ac: Remove check for sys/mman.h.
376         * configure: Regenerated.
377         * Makefile.in: Regenerated.
378         * config.h.in: Regenerated.
379         * aclocal.m4: Regenerated.
380         
381 2006-01-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
382
383         PR libgfortran/25598
384         * io/file_pos.c (unformatted_backspace): Assure the new file position
385         to seek is not less than zero.
386         (st_backspace): Set unit bytes_left to zero.
387         * io/transfer.c (next_record_r): Fix line lengths, no functional change.
388
389 2006-01-02  Paolo Bonzini  <bonzini@gnu.org>
390
391         PR target/25259
392         * configure.ac: Use GCC_HEADER_STDINT.
393         * libgfortran.h: Include gstdint.h.
394         * aclocal.m4: Regenerate.
395         * configure: Regenerate.
396
397 2006-01-01  Steven G. Kargl  <kargls@comcast.net>
398
399         * ChangeLog: Split into years ...
400         * ChangeLog-2002: here.
401         * ChangeLog-2003: here.
402         * ChangeLog-2004: here.
403         * ChangeLog-2005: here.