OSDN Git Service

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