OSDN Git Service

2006-06-20 Paul Thomas <pault@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2006-06-20  Paul Thomas  <pault@gcc.gnu.org>
2
3         PR libfortran/28005
4         * m4/matmul.m4: aystride = 1 does not uniquely detect the
5         presence of a temporary transpose; an array element in the
6         first dimension produces the same signature.  Detect this
7         using the rank of a and add specific code.
8         * generated/matmul_r4.c: Regenerate.
9         * generated/matmul_r8.c: Regenerate.
10         * generated/matmul_r10.c: Regenerate.
11         * generated/matmul_r16.c: Regenerate.
12         * generated/matmul_c4.c: Regenerate.
13         * generated/matmul_c8.c: Regenerate.
14         * generated/matmul_c10.c: Regenerate.
15         * generated/matmul_c16.c: Regenerate.
16         * generated/matmul_i4.c: Regenerate.
17         * generated/matmul_i8.c: Regenerate.
18         * generated/matmul_i16.c: Regenerate.
19
20 2006-06-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
21
22         PR libgomp/27254
23         * io/unit.c (get_internal_unit): Initialize and lock thread mutex
24         for internal units.
25
26 2006-06-06  Janne Blomqvist  <jb@gcc.gnu.org>
27
28         * m4/in_pack.m4: Add TODO comment about detecting temporaries,
29         remove test for stride 0, update copyright year.
30         * m4/transpose.m4: Remove test for stride 0, update copyright
31         year.
32         * m4/iforeach.m4: Likewise.
33         * m4/shape.m4: Likewise.
34         * m4/in_unpack.m4: Likewise.
35         * m4/reshape.m4: Likewise.
36         * m4/ifunction.m4: Likewise.
37         * m4/matmul.m4: Likewise.
38         * m4/matmull.m4: Likewise.
39         * intrinsics/etime.c: Likewise.
40         * intrinsics/transpose_generic.c: Likewise.
41         * intrinsics/spread_generic.c: Likewise.
42         * intrinsics/stat.c: Likewise.
43         * intrinsics/reshape_generic.c: Likewise.
44         * intrinsics/random.c: Likewise.
45         * generated/*: Regenerated from above changed m4 files.
46         
47 2006-05-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
48
49         PR libgfortran/27757
50         * io/unix.c (fd_seek): Set active to zero.
51
52 2006-05-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
53
54         PR libgfortran/27634
55         * io/format.c (parse_format_list): Allow missing period in format only
56         if -std=legacy.
57
58 2006-05-28  Thomas Koenig  <Thomas.Koenig@online.de>
59
60         * intrinsics/string_intrinsics.c (compare_string):
61         Use memcmp instead of strncmp to avoid tripping over
62         CHAR(0) in a string.
63
64 2006-05-27  Janne Blomqvist  <jb@gcc.gnu.org>
65
66         * io/io.h (find_or_create_unit): Correct export declaration.
67         
68 2006-05-27  Janne Blomqvist  <jb@gcc.gnu.org>
69
70         * intrinsics/abort.c (abort_): Remove.
71
72 2006-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
73
74         * configure.ac: Remove AC_FUNC_MMAP.
75         * configure: Regenerated.
76         * Makefile.in: Regenerated.
77         * config.h.in: Regenerated.
78         * aclocal.m4: Regenerated.
79
80 2006-05-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
81
82         * intrinsics/associated.c (associated): Zero-sized arrays should
83         not be reported as ASSOCIATED.
84
85 2006-05-24  Carlos O'Donell  <carlos@codesourcery.com>
86
87         * Makefile.am: Add install-html target. Add install-html to .PHONY
88         * Makefile.in: Regenerate.
89         * aclocal.m4: Regenerate.
90         
91 2006-05-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
92
93         PR libgfortran/24459
94         * io/list_read.c (nml_parse_qualifier): Leave loop spec end value
95         at default value unless -std=f95 or if an array section
96         is specified in namelist input.  Warn if -pedantic.
97         * io/io.h (st_parameter_dt): Add expanded_read flag.
98
99 2006-05-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
100
101         PR libgfortran/22423
102         * io/transfer.c (read_block): Return NULL instead of nothing.
103         
104 2006-05-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
105
106         PR libgfortran/27575
107         * io/transfer.c (read_block):  Add check for end file condition.
108         (read_block_direct): Add check for end file condition.
109
110 2006-05-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
111
112         PR libfortran/26985
113         * m4/matmul.m4: Correct the condition for the memset call,
114         and remove the unneeded call to size0.
115         * generated/matmul_r4.c: Regenerate.
116         * generated/matmul_r8.c: Regenerate.
117         * generated/matmul_r10.c: Regenerate.
118         * generated/matmul_r16.c: Regenerate.
119         * generated/matmul_c4.c: Regenerate.
120         * generated/matmul_c8.c: Regenerate.
121         * generated/matmul_c10.c: Regenerate.
122         * generated/matmul_c16.c: Regenerate.
123         * generated/matmul_i4.c: Regenerate.
124         * generated/matmul_i8.c: Regenerate.
125         * generated/matmul_i16.c: Regenerate.
126
127 2006-04-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
128
129         PR libgfortran/27360
130         * io/list_read.c (read_logical):  Free line_buffer and free saved.
131
132 2006-04-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
133
134         PR libgfortran/27304
135         * io/transfer.c (formatted_transfer_scalar):  Generate error if data
136         descriptors are exhausted.
137         * io/format.c (next_format0): Fix comment.
138
139 2006-04-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
140
141         PR libgfortran/20257
142         * io/io.h: Add prototypes for get_internal_unit and free_internal_unit.
143         * io/unit.c (get_internal_unit): Initialize unit number, not zero.
144         (free_internal_unit): New function to consolidate freeing memory.
145         (get_unit): Initialize internal_unit_desc to NULL when unit is
146         external.
147         * io/unix.c (mem_close): Check for not NULL before freeing memory.
148         * io/transfer.c (read_block): Reset bytes_left and skip error if unit
149         is preconnected and default record length is reached.
150         (read_block_direct): Ditto.
151         (write_block): Ditto.
152         (write_buf): Ditto.
153         (data_transfer_init): Only flush if not internal unit.
154         (finalize_transfer): Ditto and delete code to free memory used by
155         internal units.
156         (st_read_done): Use new function - free_internal_unit.
157         (st_write_done): Use new function - free_internal unit.
158
159 2006-04-22  Jakub Jelinek  <jakub@redhat.com>
160
161         PR fortran/26769
162         * Makefile.am (i_transpose_c): Add generated/transpose_r16.c.
163         (i_reshape_c): Add generated/reshape_r16.c.
164         * Makefile.in: Regenerated.
165         * generated/transpose_r16.c: Generated new file.
166         * generated/redhape_r16.c: Generated new file.
167
168 2006-04-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
169
170         PR libgfortran/27138
171         * io/list_read.c (eat_line): New function.
172         (parse_repeat): Use new function and free_saved.
173         (read_logical): Same.
174         (read_integer): Use new function.
175         (parse_real): Use nml_bad_return and new function.
176         (read_complex): Use new function and free_saved.
177         (read_real): Same.
178
179 2006-04-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
180
181         PR libgfortran/26766
182         * io/io.h: Add bit to identify associated unit as internal.
183         * io/unit.c (get_external_unit): Renamed the find_unit_1 function to
184         reflect the external unit functionality vs internal unit.
185         (get_internal_unit): New function to allocate and initialize an internal
186         unit structure.
187         (get_unit): Use get_internal_unit and get_external_unit.
188         (is_internal_unit): Revised to use new bit added in io.h.
189         * io/transfer.c (data_transfer_init): Fix line width.
190         (st_read_done): Free memory allocated for internal unit.
191         (st_write_done): Add test to only flush and truncate when not an
192         internal unit.  Free memory allocated for internal unit.
193
194 2006-04-11  Jakub Jelinek  <jakub@redhat.com>
195
196         * io/io.h (st_parameter_dt): Revert 2005-12-10 change to
197         u.pad, fix comment.
198         (check_st_parameter_dt): New compile time assert.
199
200 2006-04-10  Jakub Jelinek  <jakub@redhat.com>
201
202         PR libgfortran/24685
203         * io/write.c (MIN_FIELD_WIDTH, STR, STR1): Define.
204         (output_float): Increase buffer sizes for IEEE quad and IBM extended
205         long double.
206         (write_real): Output REAL(16) as 1PG43.34E4 rather than 1PG40.31E4.
207
208 2006-04-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
209
210         PR libgfortran/26890
211         * io/io.h: Revert change to pad size made on 2006-03-30.
212         Add comment explaining dependency with fortran/trans-io.c.
213         
214 2006-04-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
215
216         * io/write.c (output_float): Update condition to not error when
217         decimal precision in format specifier is zero.
218
219 2006-04-01  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
220
221         * config/fpu-387.h: Use previously added SSE code in all
222         cases, as it really is the right thing to do.
223
224 2006-03-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
225
226         PR libgfortran/26890
227         * io/io.h: Add size_used to st_parameter_dt, adjust pad size.
228         *io/transfer.c (data_transfer_init): Initialize size_used to zero.
229         (read_sf): Use size_used.
230         (read_block): Likewise.
231         (read_block_direct): Likewise.
232         (write_block): Likewise.
233         (write_buf): Likewise and eliminate erroneous FAILURE return.
234         (finalize_transfer): Assign value of size_used to *dtp->size.
235
236 2006-03-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
237
238         PR libfortran/26712
239         * config/fpu-387.h: Add special case for handling of SSE
240         control bit on i386-darwin.
241
242 2006-03-30  Thomas Koenig  <Thomas.Koenig@online.de>
243
244         PR fortran/25031
245         * runtime/memory.c (allocate_array):  If stat is present and
246         the variable is already allocated, free the variable, do
247         the allocation and set stat.
248         (allocate_array_64):  Likewise.  Whitespace fix.
249
250 2006-03-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
251
252         PR libgfortran/26880
253         * io/file_pos.c (st_rewind): Clear read_bad flag.
254
255 2006-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
256
257         PR libgfortran/26661
258         * io/io.h: Add read_sf so it can be used by read_x.
259         * io/transfer.c (read_sf): Pass no_error flag to read_sf.  Use it to
260         break out rather than error on EOF or EOR conditions.
261         (read_block): Update call to read_sf.
262         (read_block_direct): Ditto.
263         * io/read.c (read_x): Use the modified read_sf instead of read_block.
264
265 2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>
266
267         PR libfortran/26735
268         * io/transfer.c (data_transfer_init):  Set u_flags.convert
269         on an unopened unit if specified by environment variable
270         (via get_unformatted_convert) or by compile-time option.
271
272 2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>
273
274         PR fortran/26769
275         * Makefile.am:  Add transpose_r10.c and reshape_r10.c.
276         * aclocal.m4:  Regenerate using aclocal 1.9.3.
277         * Makefile.in:  Regenerate using automake 1.9.3.
278         * m4/iparm.m4 (rtype_ccode):  If rtype_letter is `i',
279         evaluate to rtype_kind, otherwise to rtype_code.
280         * generated/transpose_r10.c:  Add.
281         * generated/reshape_r10.c:  Add.
282
283 2006-03-22  Thomas Koenig  <Thomas.Koenig@online.de>
284
285         PR fortran/19303
286         * libgfortran.h (compile_options_t):  Add record_marker.
287         * runtime/compile_options.c (set_record_marker):
288         New function.
289         * io/open.c:  If we have four-byte record markers, use
290         GFC_INTEGER_4_HUGE as default record length.
291         * io/file_pos.c (unformatted_backspace):  Handle
292         different size record markers.
293         * io/transfer.c (us_read):  Likewise.
294         (us_write):  Likewise.
295         (next_record_r):  Likewise.
296         (write_us_marker):  Likewise.
297         (next_record_w):  Likewise.
298
299 2006-03-20  Thomas Koenig  <Thomas.Koenig@online.de>
300
301         PR fortran/20935
302         * m4/iforeach.m4:  Add SCALAR_FOREACH_FUNCTION macro.
303         * m4/ifunction.m4:  Add SCALAR_ARRAY_FUNCTION macro.
304         * m4/minloc0.m4:  Use SCALAR_FOREACH_FUNCTION.
305         * m4/minloc1.m4:  Use SCALAR_ARRAY_FUNCTION.
306         * m4/maxloc0.m4:  Use SCALAR_FOREACH_FUNCTION.
307         * m4/maxloc1.m4:  Use SCALAR_ARRAY_FUNCTION.
308         * m4/minval.m4:  Likewise.
309         * m4/maxval.m4:  Likewise.
310         * m4/product.m4:  Likewise.
311         * m4/sum.m4:  Likewise.
312         * minloc0_16_i16.c : Regenerated.
313         * minloc0_16_i4.c : Regenerated.
314         * minloc0_16_i8.c : Regenerated.
315         * minloc0_16_r10.c : Regenerated.
316         * minloc0_16_r16.c : Regenerated.
317         * minloc0_16_r4.c : Regenerated.
318         * minloc0_16_r8.c : Regenerated.
319         * minloc0_4_i16.c : Regenerated.
320         * minloc0_4_i4.c : Regenerated.
321         * minloc0_4_i8.c : Regenerated.
322         * minloc0_4_r10.c : Regenerated.
323         * minloc0_4_r16.c : Regenerated.
324         * minloc0_4_r4.c : Regenerated.
325         * minloc0_4_r8.c : Regenerated.
326         * minloc0_8_i16.c : Regenerated.
327         * minloc0_8_i4.c : Regenerated.
328         * minloc0_8_i8.c : Regenerated.
329         * minloc0_8_r10.c : Regenerated.
330         * minloc0_8_r16.c : Regenerated.
331         * minloc0_8_r4.c : Regenerated.
332         * minloc0_8_r8.c : Regenerated.
333         * minloc1_16_i16.c : Regenerated.
334         * minloc1_16_i4.c : Regenerated.
335         * minloc1_16_i8.c : Regenerated.
336         * minloc1_16_r10.c : Regenerated.
337         * minloc1_16_r16.c : Regenerated.
338         * minloc1_16_r4.c : Regenerated.
339         * minloc1_16_r8.c : Regenerated.
340         * minloc1_4_i16.c : Regenerated.
341         * minloc1_4_i4.c : Regenerated.
342         * minloc1_4_i8.c : Regenerated.
343         * minloc1_4_r10.c : Regenerated.
344         * minloc1_4_r16.c : Regenerated.
345         * minloc1_4_r4.c : Regenerated.
346         * minloc1_4_r8.c : Regenerated.
347         * minloc1_8_i16.c : Regenerated.
348         * minloc1_8_i4.c : Regenerated.
349         * minloc1_8_i8.c : Regenerated.
350         * minloc1_8_r10.c : Regenerated.
351         * minloc1_8_r16.c : Regenerated.
352         * minloc1_8_r4.c : Regenerated.
353         * minloc1_8_r8.c : Regenerated.
354         * maxloc0_16_i16.c : Regenerated.
355         * maxloc0_16_i4.c : Regenerated.
356         * maxloc0_16_i8.c : Regenerated.
357         * maxloc0_16_r10.c : Regenerated.
358         * maxloc0_16_r16.c : Regenerated.
359         * maxloc0_16_r4.c : Regenerated.
360         * maxloc0_16_r8.c : Regenerated.
361         * maxloc0_4_i16.c : Regenerated.
362         * maxloc0_4_i4.c : Regenerated.
363         * maxloc0_4_i8.c : Regenerated.
364         * maxloc0_4_r10.c : Regenerated.
365         * maxloc0_4_r16.c : Regenerated.
366         * maxloc0_4_r4.c : Regenerated.
367         * maxloc0_4_r8.c : Regenerated.
368         * maxloc0_8_i16.c : Regenerated.
369         * maxloc0_8_i4.c : Regenerated.
370         * maxloc0_8_i8.c : Regenerated.
371         * maxloc0_8_r10.c : Regenerated.
372         * maxloc0_8_r16.c : Regenerated.
373         * maxloc0_8_r4.c : Regenerated.
374         * maxloc0_8_r8.c : Regenerated.
375         * maxloc1_16_i16.c : Regenerated.
376         * maxloc1_16_i4.c : Regenerated.
377         * maxloc1_16_i8.c : Regenerated.
378         * maxloc1_16_r10.c : Regenerated.
379         * maxloc1_16_r16.c : Regenerated.
380         * maxloc1_16_r4.c : Regenerated.
381         * maxloc1_16_r8.c : Regenerated.
382         * maxloc1_4_i16.c : Regenerated.
383         * maxloc1_4_i4.c : Regenerated.
384         * maxloc1_4_i8.c : Regenerated.
385         * maxloc1_4_r10.c : Regenerated.
386         * maxloc1_4_r16.c : Regenerated.
387         * maxloc1_4_r4.c : Regenerated.
388         * maxloc1_4_r8.c : Regenerated.
389         * maxloc1_8_i16.c : Regenerated.
390         * maxloc1_8_i4.c : Regenerated.
391         * maxloc1_8_i8.c : Regenerated.
392         * maxloc1_8_r10.c : Regenerated.
393         * maxloc1_8_r16.c : Regenerated.
394         * maxloc1_8_r4.c : Regenerated.
395         * maxloc1_8_r8.c : Regenerated.
396         * maxval_i16.c : Regenerated.
397         * maxval_i4.c : Regenerated.
398         * maxval_i8.c : Regenerated.
399         * maxval_r10.c : Regenerated.
400         * maxval_r16.c : Regenerated.
401         * maxval_r4.c : Regenerated.
402         * maxval_r8.c : Regenerated.
403         * minval_i16.c : Regenerated.
404         * minval_i4.c : Regenerated.
405         * minval_i8.c : Regenerated.
406         * minval_r10.c : Regenerated.
407         * minval_r16.c : Regenerated.
408         * minval_r4.c : Regenerated.
409         * minval_r8.c : Regenerated.
410         * sum_c10.c : Regenerated.
411         * sum_c16.c : Regenerated.
412         * sum_c4.c : Regenerated.
413         * sum_c8.c : Regenerated.
414         * sum_i16.c : Regenerated.
415         * sum_i4.c : Regenerated.
416         * sum_i8.c : Regenerated.
417         * sum_r10.c : Regenerated.
418         * sum_r16.c : Regenerated.
419         * sum_r4.c : Regenerated.
420         * sum_r8.c : Regenerated.
421         * product_c10.c : Regenerated.
422         * product_c16.c : Regenerated.
423         * product_c4.c : Regenerated.
424         * product_c8.c : Regenerated.
425         * product_i16.c : Regenerated.
426         * product_i4.c : Regenerated.
427         * product_i8.c : Regenerated.
428         * product_r10.c : Regenerated.
429         * product_r16.c : Regenerated.
430         * product_r4.c : Regenerated.
431         * product_r8.c : Regenerated.
432
433 2006-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
434
435         PR libgfortran/26509
436         * libgfortran.h: Add ERROR_DIRECT_EOR.
437         * runtime/error.c (translate_error): Add translation for new error.
438         * io/transfer.c (write_buf): Add check for EOR when mode is 
439         direct access.
440
441 2006-03-13  Paul Thomas  <pault@gcc.gnu.org>
442
443         PR fortran/25378
444         * libgfortran/m4/minloc1.m4: Set the initial position to zero and
445         modify the condition for updating it, to implement the F2003
446         requirement for all(mask).eq.false.
447         * libgfortran/m4/maxloc1.m4: The same.
448         * libgfortran/m4/iforeach.m4: The same.
449         * libgfortran/m4/minloc0.m4: The same.
450         * libgfortran/m4/maxloc0.m4: The same.
451         * libgfortran/generated/maxloc0_16_i16.c: Regenerated, together
452         with 41 others.
453         * libgfortran/generated/minloc0_16_i16.c: Regenerated, together
454         with 41 others.
455
456 2006-03-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
457
458         PR libgfortran/26499
459         * io/file_pos (st_rewind): Flush always.
460         * io/unix.c (fd_truncate): Return SUCCESS rather than FAILURE for
461         special files like /dev/null.
462         * io/transfer.c (st_write_done): Remove broken logic that
463         prevented calling fd_truncate.
464
465 2006-03-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
466
467         PR libgfortran/26554
468         * io/list_read.c (read_logical): Return the value if not in namelist
469         mode.
470
471 2006-03-03  Thomas Koenig  <Thomas.Koenig@online.de>
472
473         PR fortran/25031
474         * runtime/memory.c:  Adjust copyright years.
475         (allocate_array):  New function.
476         (allocate64_array):  New function.
477         * libgfortran.h (error_codes):  Add ERROR_ALLOCATION.
478
479 2006-02-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
480
481         PR libgfortran/26136
482         * io/io.h: Add flag for reading from line_buffer.
483         * io/list_read.c (l_push_char): New function to save namelist
484         input when reading logicals.
485         (free_line): New function to free line_buffer memory.
486         (next_char): Added feature to read from line_buffer.
487         (read_logical): Use new functions to test for '=' after reading a
488         logical value, checking for possible variable name.
489         (namelist_read): Use free_line when all done.
490
491 2006-02-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
492
493         PR libgfortran/26464
494         * io/file_pos.c (st_backspace): Flush and truncate file
495         when in AFTER_ENDFILE condition.
496         * io/transfer.c (st_read_done): Remove flush, no longer needed.
497
498 2006-02-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
499
500         PR libgfortran/26423
501         * io/unix.c (fd_seek): Revert change from 25949.
502         (fd_read): Same.
503         (fd_write): Same.
504
505 2006-02-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
506
507         * io/open.c (edit_modes): Correct abusive copy-pasting.
508
509 2006-02-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
510
511         PR libfortran/24903
512         * m4/dotprodc.m4: Use __builtin_conj instead of assigning real
513         and imaginary parts separately.
514         * generated/dotprod_c4.c: Regenerated.
515         * generated/dotprod_c8.c: Regenerated.
516         * generated/dotprod_c10.c: Regenerated.
517         * generated/dotprod_c16.c: Regenerated.
518
519 2006-02-12  Janne Blomqvist  <jb@gcc.gnu.org>
520
521         PR libgfortran/25949
522         * io/io.h: Add set function pointer to struct stream.  
523         * io/unix.c (fd_seek): Only update offset, don't seek.
524         (fd_sset): New function.
525         (fd_read): Call lseek directly if necessary.
526         (fd_write): Likewise.
527         (fd_open): Set pointer to fd_sset.
528         (mem_set): New function.
529         (open_internal): Set pointer to mem_set.
530         * io/transfer.c (write_block_direct): Rename to write_buf, add
531         error return, non-pointer length argument.
532         (unformatted_write): Update to use write_buf.
533         (us_write): Simplify by using swrite instead of salloc_w.
534         (write_us_marker): New function.
535         (new_record_w): Use sset instead of memset, use write_us_marker,
536         simplify by using swrite instead of salloc_w.
537
538 2006-02-08  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
539
540         PR libfortran/25425
541         * libgfortran.h: Add pedantic field to compile_options struct.
542         * io/write.c (calculate_G_format): Depending on the standard,
543         choose E or F format for list-directed output of 0.0.
544         * runtime/error.c (notify_std): Make warning and error dependent
545         on pedanticity.
546         * runtime/compile_options.c (set_std): Use new pedantic argument.
547
548 2006-02-07  Dale Ranta  <dir@lanl.gov>
549
550         PR fortran/25577
551         * intrinsics/mvbits.c: Shift '(TYPE)1' type when building 'lenmask'.
552
553 2006-02-07  Rainer Emrich <r.emrich@de.tecosim.com>
554
555         * intrinsics/c99_functions.c: Work around incompatible
556         declarations of cabs{,f,l} on pre-C99 IRIX systems.
557
558 2005-02-06  Thomas Koenig  <Thomas.Koenig@online.de>
559
560         PR libfortran/23815
561         * runtime/environ.c (init_unformatted):  Add GFORTRAN_CONVERT_UNIT
562         environment variable.
563         (top level):  Add defines, type and static variables for
564         GFORTRAN_CONVERT_UNIT handling.
565         (search_unit):  New function.
566         (match_word): New function.
567         (match_integer): New function.
568         (next_token): New function.
569         (push_token): New function.
570         (mark_single): New function.
571         (mark_range): New funciton.
572         (do_parse): New function.
573         (init_unformatted): New function.
574         (get_unformatted_convert): New function.
575         * runtime/compile_options.c:  Add set_convert().
576         * libgfortran.h:  Add convert to compile_options_t.
577         * io/open.c (st_open): Call get_unformatted_convert to get
578         unit default; if CONVERT_NONE is returned, check for
579         the presence of a CONVERT specifier and use it.
580         As default, use compile_options.convert.
581         * io/io.h (top level): Add CONVERT_NONE to unit_convert, to signal
582         "nothing has been set".
583         (top level): Add prototype for get_unformatted_convert.
584
585 2006-02-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
586
587         PR libfortran/24685
588         * io/write.c (write_real): Widen the default format for real(10)
589         variables output.
590
591 2006-01-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
592
593         PR libgfortran/25835
594         * io/transfer.c (st_read_done): Flush buffers when read is done.
595
596 2006-01-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
597
598         PR libgfortran/25697
599         * io/transfer.c (us_read): Detect end of file condition from previous
600         operations and bail out (no need to pre-position).
601
602 2006-01-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
603
604         PR libgfortran/25631
605         * io/transfer.c (formatted_transfer_scalar): Adjust pending_spaces and
606         skips so that TL works correctly when no bytes_used yet.  
607
608 2006-01-16  Roger Sayle  <roger@eyesopen.com>
609
610         * configure.ac (CFLAGS): Update to include -std=gnu99 so that
611         the configure tests will be run with the same environment as
612         used to compile the libgfortran source code.
613         * configure: Regenerate.
614
615 2006-01-12  Roger Sayle  <roger@eyesopen.com>
616
617         * intrinsics/c99_functions.c: Add function prototypes to avoid
618         warnings from -Wstrict-prototypes -Wmissing-prototypes.  On Tru64
619         work around a brain-dead libm by redirecting calls to cabs{,f,l}
620         to a local __gfc_cabs{,f,l}.
621
622 2006-01-07  Janne Blomqvist  <jb@gcc.gnu.org>
623
624         * configure.ac: Remove check for sys/mman.h.
625         * configure: Regenerated.
626         * Makefile.in: Regenerated.
627         * config.h.in: Regenerated.
628         * aclocal.m4: Regenerated.
629         
630 2006-01-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
631
632         PR libgfortran/25598
633         * io/file_pos.c (unformatted_backspace): Assure the new file position
634         to seek is not less than zero.
635         (st_backspace): Set unit bytes_left to zero.
636         * io/transfer.c (next_record_r): Fix line lengths, no functional change.
637
638 2006-01-02  Paolo Bonzini  <bonzini@gnu.org>
639
640         PR target/25259
641         * configure.ac: Use GCC_HEADER_STDINT.
642         * libgfortran.h: Include gstdint.h.
643         * aclocal.m4: Regenerate.
644         * configure: Regenerate.
645
646 2006-01-01  Steven G. Kargl  <kargls@comcast.net>
647
648         * ChangeLog: Split into years ...
649         * ChangeLog-2002: here.
650         * ChangeLog-2003: here.
651         * ChangeLog-2004: here.
652         * ChangeLog-2005: here.