OSDN Git Service

2011-05-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2011-05-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2
3         PR libgfortran/48787
4         * io/write_float.def (output_float): Gather up integer declarations and
5         add new 'p' for scale factor. Use 'p' in place of the 'dtp' reference
6         everywhere. For ROUND_UP scan the digit string and only perform
7         rounding if something other than '0' is found.
8
9 2011-04-29  Janne Blomqvist  <jb@gcc.gnu.org>
10
11         * io/unix.c (min): New macro.
12         (unpack_filename): Return errno number for errors.
13         (regular_file): Use appropriately sized buffer for path.
14         (compare_file_filename): Likewise.
15         (find_file): Likewise.
16         (delete_file): Likewise.
17         (file_exists): Likewise.
18         (file_size): Likewise.
19         (inquire_sequential): Likewise.
20         (inquire_direct): Likewise.
21         (inquire_formatted): Likewise.
22         (inquire_access): Likewise.
23
24 2011-04-29  Janne Blomqvist  <jb@gcc.gnu.org>
25
26         PR libfortran/48488
27         * io/write.c (write_real, write_real_g0): Update comments.
28
29 2011-04-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
30             Janne Blomqvist  <jb@gcc.gnu.org>
31
32         PR libgfortran/48488
33         PR libgfortran/48602
34         PR libgfortran/48615
35         PR libgfortran/48684
36         PR libgfortran/48787
37         * io/write.c (write_d, write_e, write_f, write_en,
38         write_es): Add precision compemsation parameter to call.
39         (set_fnode_default): Adjust default widths to assure
40         round trip on write and read. (write_real): Adjust call to write_float.
41         (write_real_g0): Calculate compensation for extra precision and adjust
42         call to write_float.
43         * io/write_float.def (output_float_FMT_G_): Use volatile rather than
44         asm volatile to avoid optimization issue. Correctly calculate the
45         number of blanks (nb) to be appended and simplify calculation logic.
46         (write_float): Increase MIN_FIELD_WIDTH by one to accomodate the new
47         default widths. Eliminate the code that attempted to reduce the
48         the precision used in later sprintf functions.  Add call parameter to
49         compensate for extra precision.
50
51 2011-04-20  Jim Meyering  <meyering@redhat.com>
52
53         * intrinsics/move_alloc.c (move_alloc): Remove useless
54         if-before-free test.
55         * io/fbuf.c (fbuf_destroy): Likewise.
56         * io/format.c (save_parsed_format): Likewise.
57         * io/open.c (already_open): Likewise.
58         * io/unit.c (free_internal_unit, close_unit_1): Likewise.
59         * io/unix.c (mem_close): Likewise.
60
61 2011-04-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
62
63         PR libgfortran/48602
64         * io/write_float.def (output_float_FMT_G): Fix reversal in conditional.
65         Use asm volatile to mark temp variable, avoiding optimization errors.
66
67 2011-04-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
68
69         PR libgfortran/48602
70         * io/write_float.def (output_float_FMT_G): Use current rounding mode
71         to set the rounding parameters. (output_float): Skip rounding
72         if value is zero.
73         
74 2011-04-16  Janne Blomqvist  <jb@gcc.gnu.org>
75
76         * intrinsics/date_and_time.c (date_and_time): Remove sprintf CPP
77         branch.
78         * io/format.c (format_error): Use snprintf instead of sprintf.
79         * io/list_read.c: Move snprintf fallback macro to libgfortran.h.
80         (convert_integer): Use snprintf instead of sprintf.
81         (parse_repeat): Likewise.
82         (read_logical): Likewise.
83         (read_integer): Likewise.
84         (read_character): Likewise.
85         (parse_real): Likewise.
86         (read_complex): Likewise.
87         (read_real): Likewise.
88         (check_type): Likewise.
89         (nml_parse_qualifier): Add string length argument, use snprintf
90         instead of sprintf.
91         (nml_get_obj_data): Use snprintf instead of sprintf.
92         * io/open.c (new_unit): Remove sprintf CPP branch, use snprintf
93         instead of sprintf.
94         * io/transfer.c (require_type): Use snprintf instead of sprintf.
95         * io/unix.c (tempfile): Likewise.
96         * io/write.c (nml_write_obj): Likewise.
97         * io/write_float.def (output_float): Remove sprintf CPP branch,
98         use snprintf instead of sprintf.
99         * libgfortran.h: Add fallback snprintf macro from io/list_read.c.
100         * runtime/backtrace.c (show_backtrace): Remove sprintf CPP branch.
101         * runtime/main.c (store_exe_path): Use snprintf instead of
102         sprintf.
103
104 2011-04-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
105
106         PR libgfortran/48589
107         * io/write_float.def (write_infnan): Set width properly for G0.
108
109 2011-04-15  Tobias Burnus  <burnus@net-b.de>
110
111         PR fortran/18918
112         * Makefile.am: Build and install caf/single.c as
113         libcaf_single.a.
114         * Makefile.in: Regenerate.
115
116 2011-04-15  Janne Blomqvist  <jb@gcc.gnu.org>
117
118         PR libfortran/47571
119         * configure: Regenerated.
120         * config.h.in: Regenerated.
121         * acinclude.m4: Add alpha*-dec-osf* to gthread blacklist.
122         * configure.ac: Use separate symbol for clock_gettime in librt.
123         * intrinsics/system_clock.c: Use weakrefs only when needed and
124         supported.
125
126 2011-04-12  Janne Blomqvist  <jb@gcc.gnu.org>
127
128         * configure.ac: Use AC_TYPE_* to make sure we have (u)intptr_t,
129         check for ptrdiff_t.
130         * libgfortran.h: Remove (u)intptr_t definitions, use ptrdiff_t for
131         index_type, change cshift0* prototypes.
132         * config.h.in: Regenerated.
133         * configure: Regenerated.
134         * intrinsics/cshift0.c (cshift0): Use ptrdiff_t instead of ssize_t.
135         * io/io.h (array_loop_spec): Use index_type instead of ssize_t.
136         * io/list_read.c (nml_parse_qualifier): Likewise.
137         * io/write.c (nml_write_obj): Likewise.
138         * m4/cshift0.c (cshift0_'rtype_code`): Likewise.
139         * generated/cshift0_*.c: Regenerated.
140
141 2011-04-12  Janne Blomqvist  <jb@gcc.gnu.org>
142
143         * Makefile.am: Remove _GNU_SOURCE from AM_CPPFLAGS.
144         * Makefile.in: Regenerated.
145
146 2011-04-06  Tobias Burnus  <burnus@net-b.de>
147
148         PR fortran/18918
149         * caf/mpi.c (_gfortran_caf_init, _gfortran_caf_finalize):
150         Add global variable caf_mpi_initialized and use it for when
151         finalizing.
152
153 2011-04-04  Tobias Burnus  <burnus@net-b.de>
154
155         * unix.c: Adapt stat DEFINEs since MinGW64 supports LFS.
156         (fallback_access, open_internal4, compare_file_filename,
157         find_file, file_size, inquire_sequential, inquire_direct,
158         inquire_formatted): Use "struct stat" instead of gfstat_t.
159
160 2011-03-27  Tobias Burnus  <burnus@net-b.de>
161
162         PR fortran/18918
163         * caf/libcaf.h: New - coarray communication library.
164         * caf/mpi.c: New.
165         * caf/single.c: New.
166
167 2011-03-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
168
169         PR libgfortran/48030
170         * io/read.c (read_x): Re-implement using fbuf_getc.
171
172 2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
173
174         PR bootstrap/48135
175         * configure.ac (gfortran_use_symver): Handle --disable-symvers.
176         * configure: Regenerate.
177
178 2011-03-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
179
180         PR fortran/35667
181         * io/io.h (convert_infnan): Declare.
182         * io/read.c (convert_infnan): New.
183         (read_f): Use convert_infnan to convert INFs and NANs.
184         * list_read.c (parse_real, read_real): Likewise.
185
186 2011-03-19  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
187
188         PR libfortran/47439
189         * io/unix.c (tempfile): Work around poor mktemp() implementations.
190
191 2011-03-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
192
193         PR libfortran/47883
194         * acinclude.m4: Don't use AC_TRY_ macros.
195         * configure.ac: Likewise.
196         * configure: Regenerate.
197
198 2011-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>
199
200         PR libfortran/48066
201         * m4/ifunction.m4:  If return array is empty, return.
202         * m4/ifunction_logical.m4:  Likewise.
203         * generated/all_l16.c: Regenerated.
204         * generated/all_l1.c: Regenerated.
205         * generated/all_l2.c: Regenerated.
206         * generated/all_l4.c: Regenerated.
207         * generated/all_l8.c: Regenerated.
208         * generated/any_l16.c: Regenerated.
209         * generated/any_l1.c: Regenerated.
210         * generated/any_l2.c: Regenerated.
211         * generated/any_l4.c: Regenerated.
212         * generated/any_l8.c: Regenerated.
213         * generated/count_16_l.c: Regenerated.
214         * generated/count_1_l.c: Regenerated.
215         * generated/count_2_l.c: Regenerated.
216         * generated/count_4_l.c: Regenerated.
217         * generated/count_8_l.c: Regenerated.
218         * generated/maxloc1_16_i16.c: Regenerated.
219         * generated/maxloc1_16_i1.c: Regenerated.
220         * generated/maxloc1_16_i2.c: Regenerated.
221         * generated/maxloc1_16_i4.c: Regenerated.
222         * generated/maxloc1_16_i8.c: Regenerated.
223         * generated/maxloc1_16_r10.c: Regenerated.
224         * generated/maxloc1_16_r16.c: Regenerated.
225         * generated/maxloc1_16_r4.c: Regenerated.
226         * generated/maxloc1_16_r8.c: Regenerated.
227         * generated/maxloc1_4_i16.c: Regenerated.
228         * generated/maxloc1_4_i1.c: Regenerated.
229         * generated/maxloc1_4_i2.c: Regenerated.
230         * generated/maxloc1_4_i4.c: Regenerated.
231         * generated/maxloc1_4_i8.c: Regenerated.
232         * generated/maxloc1_4_r10.c: Regenerated.
233         * generated/maxloc1_4_r16.c: Regenerated.
234         * generated/maxloc1_4_r4.c: Regenerated.
235         * generated/maxloc1_4_r8.c: Regenerated.
236         * generated/maxloc1_8_i16.c: Regenerated.
237         * generated/maxloc1_8_i1.c: Regenerated.
238         * generated/maxloc1_8_i2.c: Regenerated.
239         * generated/maxloc1_8_i4.c: Regenerated.
240         * generated/maxloc1_8_i8.c: Regenerated.
241         * generated/maxloc1_8_r10.c: Regenerated.
242         * generated/maxloc1_8_r16.c: Regenerated.
243         * generated/maxloc1_8_r4.c: Regenerated.
244         * generated/maxloc1_8_r8.c: Regenerated.
245         * generated/maxval_i16.c: Regenerated.
246         * generated/maxval_i1.c: Regenerated.
247         * generated/maxval_i2.c: Regenerated.
248         * generated/maxval_i4.c: Regenerated.
249         * generated/maxval_i8.c: Regenerated.
250         * generated/maxval_r10.c: Regenerated.
251         * generated/maxval_r16.c: Regenerated.
252         * generated/maxval_r4.c: Regenerated.
253         * generated/maxval_r8.c: Regenerated.
254         * generated/minloc1_16_i16.c: Regenerated.
255         * generated/minloc1_16_i1.c: Regenerated.
256         * generated/minloc1_16_i2.c: Regenerated.
257         * generated/minloc1_16_i4.c: Regenerated.
258         * generated/minloc1_16_i8.c: Regenerated.
259         * generated/minloc1_16_r10.c: Regenerated.
260         * generated/minloc1_16_r16.c: Regenerated.
261         * generated/minloc1_16_r4.c: Regenerated.
262         * generated/minloc1_16_r8.c: Regenerated.
263         * generated/minloc1_4_i16.c: Regenerated.
264         * generated/minloc1_4_i1.c: Regenerated.
265         * generated/minloc1_4_i2.c: Regenerated.
266         * generated/minloc1_4_i4.c: Regenerated.
267         * generated/minloc1_4_i8.c: Regenerated.
268         * generated/minloc1_4_r10.c: Regenerated.
269         * generated/minloc1_4_r16.c: Regenerated.
270         * generated/minloc1_4_r4.c: Regenerated.
271         * generated/minloc1_4_r8.c: Regenerated.
272         * generated/minloc1_8_i16.c: Regenerated.
273         * generated/minloc1_8_i1.c: Regenerated.
274         * generated/minloc1_8_i2.c: Regenerated.
275         * generated/minloc1_8_i4.c: Regenerated.
276         * generated/minloc1_8_i8.c: Regenerated.
277         * generated/minloc1_8_r10.c: Regenerated.
278         * generated/minloc1_8_r16.c: Regenerated.
279         * generated/minloc1_8_r4.c: Regenerated.
280         * generated/minloc1_8_r8.c: Regenerated.
281         * generated/minval_i16.c: Regenerated.
282         * generated/minval_i1.c: Regenerated.
283         * generated/minval_i2.c: Regenerated.
284         * generated/minval_i4.c: Regenerated.
285         * generated/minval_i8.c: Regenerated.
286         * generated/minval_r10.c: Regenerated.
287         * generated/minval_r16.c: Regenerated.
288         * generated/minval_r4.c: Regenerated.
289         * generated/minval_r8.c: Regenerated.
290         * generated/product_c10.c: Regenerated.
291         * generated/product_c16.c: Regenerated.
292         * generated/product_c4.c: Regenerated.
293         * generated/product_c8.c: Regenerated.
294         * generated/product_i16.c: Regenerated.
295         * generated/product_i1.c: Regenerated.
296         * generated/product_i2.c: Regenerated.
297         * generated/product_i4.c: Regenerated.
298         * generated/product_i8.c: Regenerated.
299         * generated/product_r10.c: Regenerated.
300         * generated/product_r16.c: Regenerated.
301         * generated/product_r4.c: Regenerated.
302         * generated/product_r8.c: Regenerated.
303         * generated/sum_c10.c: Regenerated.
304         * generated/sum_c16.c: Regenerated.
305         * generated/sum_c4.c: Regenerated.
306         * generated/sum_c8.c: Regenerated.
307         * generated/sum_i16.c: Regenerated.
308         * generated/sum_i1.c: Regenerated.
309         * generated/sum_i2.c: Regenerated.
310         * generated/sum_i4.c: Regenerated.
311         * generated/sum_i8.c: Regenerated.
312         * generated/sum_r10.c: Regenerated.
313         * generated/sum_r16.c: Regenerated.
314         * generated/sum_r4.c: Regenerated.
315         * generated/sum_r8.c: Regenerated.
316
317 2011-03-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
318
319         PR libgfortran/48047
320         * io/write_float.def (write_float): Change MIN_FIELD_WIDTH to 48.
321
322 2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
323
324         PR libfortran/47802
325         * intrinsics/ctime.c (strctime): Use builtins to check localtime_r
326         return type.
327
328 2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
329
330         PR libfortran/47802
331         * intrinsics/ctime.c (strctime): Don't use return value of
332         localtime_r.
333
334 2011-02-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
335
336         PR libgfortran/47567
337         * io/write_float.def (output_float): Move handling of w = 0 to after
338         output rounding. Check for zero and set zero_flag accordingly. Set
339         width according to zero_flag. Add better comments.
340
341 2011-02-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
342
343         PR libgfortran/47778
344         * io/list_read.c (namelist_read): Intialize the error string buffere.
345         If pprev_nl was used during the previous namelist read and the rank
346         was zero, reset the pointer to NULL for the next namelist read.
347
348 2011-02-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
349
350         PR libfortran/45165
351         * unix.c (fallback_access): Fix file descriptor leaks.
352
353 2011-02-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
354
355         * acinclude.m4 (LIBGFOR_CHECK_FPSETMASK): Set shell variable
356         tested in configure.host.
357         * configure: Regenerate.
358
359 2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
360
361         PR libfortran/47802
362         * config.h.in: Regenerated.
363         * configure: Regenerated.
364         * configure.ac: Remove checks for ctime and ctime_r, add check for
365         strftime.
366         * intrinsics/date_and_time.c (localtime_r): Move fallback
367         implementation to time_1.h.
368         * intrinsics/time_1.h (localtime_r): Fallback implementation.
369         * intrinsics/ctime.c: Include time_1.h.
370         (ctime_r): Remove fallback implementation.
371         (strctime): New function.
372         (fdate): Use strctime instead of ctime_r.
373         (fdate_sub): Likewise.
374         (ctime): Likewise.
375         (ctime_sub): Likewise.
376
377 2011-02-24  Jakub Jelinek  <jakub@redhat.com>
378
379         PR fortran/47878
380         * io/transfer.c (read_sf): Call fbuf_getptr only at the end,
381         and subtract n, dtp->u.p.sf_seen_eor and seen_comma from it.
382
383 2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
384
385         PR libfortran/47802
386         * configure.ac: Add test for POSIX getpwuid_r.
387         * intrinsics/getlog.c (getlog): CPP test for
388         HAVE_POSIX_GETPWUID_R.
389         * config.h.in: Regenerated.
390         * configure: Regenerated.
391
392 2011-02-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
393
394         PR libgfortran/47567
395         * io/write_float.def (output_float): Remove special case handling of
396         zero with width 1.
397
398 2011-02-23  Janne Blomqvist  <jb@gcc.gnu.org>
399             Jerry DeLisle    <jvdelisle@gcc.gnu.org>
400
401         PR libfortran/47694
402         * io/fbuf.h (fbuf_getptr): New inline function.
403         * io/transfer.c (read_sf): Use fbuf_getptr and fbuf_getc to scan
404         through the string instead of fbuf_read.
405
406 2011-02-22  Tobias Burnus  <burnus@net-b.de>
407             Kai-Uwe Eckhardt  <kuehro@gmx.de>
408
409         PR libfortran/47830
410         * intrinsics/c99_functions.c (roundl): Make C valid for
411         HAVE_NEXTAFTERL.
412
413 2011-02-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
414
415         PR libgfortran/47567
416         * io/write_float.def (output_float): Adjust width for F0.d to
417         allow space for negative signs on zero.
418
419 2011-02-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
420
421         PR libgfortran/47667
422         * io/list_read.c (read_logical): Check for end of line before calling
423         eat_line. (read_integer): Likewise. (parse_real): Don't unget the
424         separator. Check for end of line before calling eat_line.
425         (read_complex): Allow line-end before and after parenthesis and comma.
426         Check for end of line before calling eat_line. (read_real): Check for
427         end of line before calling eat_line.
428
429 2011-02-16  Jakub Jelinek  <jakub@redhat.com>
430
431         PR libfortran/47757
432         * gfortran.map (GFORTRAN_1.4): Export
433         _gfortran_{m,s}i{all,any,parity}_i{1,2,4,8,16} and
434         _gfortran_{cshift0,eoshift{0,2}}_16_char4.
435
436 2011-02-15  Tobias Burnus  <burnus@net-b.de>
437
438         PR fortran/47716
439         PR fortran/47648
440         * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Use check from
441         libquadmath, which uses more features.
442         * configure: Regenerate.
443
444 2011-02-14  Jakub Jelinek  <jakub@redhat.com>
445
446         PR fortran/47642
447         * io/write_float.def (DTOAQ): Use quadmath_snprintf instead of
448         quadmath_flt128tostr.
449         * io/transfer128.c (tmp2): Initialize to quadmath_snprintf instead
450         of quadmath_flt128tostr.
451
452 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
453
454         * Makefile.in: Regenerate.
455         * aclocal.m4: Likewise.
456         * configure: Likewise.
457
458 2011-02-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
459
460         PR libgfortran/47567
461         * io/write_float.def (output_float): Eliminate some redundant code.
462         Adjust width for case of F0.X for values of zero and all other values.
463         Expand cases where '*' is set to give cleaner results.
464
465 2011-02-05  Janne Blomqvist  <jb@gcc.gnu.org>
466
467         PR libfortran/47571
468         * intrinsics/time_1.h (GF_CLOCK_MONOTONIC): Move to system_clock.c.
469         (weak_gettime): Likewise.
470         (gf_gettime): Change API, move weak_gettime() usage to
471         system_clock.c
472         * intrinsics/system_clock.c (GTHREAD_USE_WEAK): Define.
473         (gf_gettime_mono): New function.
474         (system_clock_4): Use gf_gettime_mono().
475         (system_clock_8): Likewise.
476         * intrinsics/date_and_time.c (date_and_time): Update gf_gettime()
477         usage.
478
479 2011-02-02  Janne Blomqvist  <jb@gcc.gnu.org>
480
481         PR libfortran/47571
482         * configure: Regenerated.
483         * configure.ac: Don't add librt to LIBS.
484         * intrinsics/time_1.h (weak_gettime): Weakref trickery for
485         clock_gettime().
486         (gf_gettime): Use weak_gettime() instead of clock_gettime().
487
488 2011-02-01  Janne Blomqvist  <jb@gcc.gnu.org>
489
490         * intrinsics/time_1.h: Include errno.h needed by fallbacks.
491
492 2011-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
493
494         * intrinsics/time_1.h: Fix definition of GF_CLOCK_MONOTONIC macro.
495
496 2011-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
497
498         * configure.ac: Check for clock_gettime().
499         * configure: Regenerated.
500         * config.h.in: Regenerated.
501         * intrinsics/time_1.h (__time_1): Rename to gf_cputime, add
502         times() fallback.
503         (gf_gettime): New function.
504         * intrinsics/cpu_time.c (__cpu_time_1): Update to call gf_cputime.
505         * intrinsics/date_and_time.c (date_and_time): Use gf_gettime.
506         * intrinsics/dtime.c (dtime_sub): Use gf_cputime.
507         * intrinsics/etime.c (etime_sub): Use gf_cputime.
508         * intrinsics/system_clock.c (system_clock_4): Use gf_gettime.
509         (system_clock_8): Use gf_gettime, increase count rate to allow
510         nanosecond precision, remove overflow prone branch.
511
512 2011-01-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
513
514         PR libgfortran/47434
515         * io/write_float.def (write_infnan): Use calculate_sign to determine
516         if the sign should be given and check field widths accordingly.
517
518 2011-01-29  Kai Tietz  <kai.tietz@onevision.com>
519
520         * intrinsics/ctime.c (ctime_r): Improve implementation.
521
522 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
523
524         PR libfortran/47431
525         * config.h.in: Regenerated.
526         * configure: Regenerated.
527         * configure.ac: Add check for ctime_r().
528         * intrinsics/ctime.c (ctime_r): Fallback implementation.
529         (fdate): Use ctime_r() instead of ctime().
530         (fdate_sub): Likewise.
531         (ctime): Likewise.
532         (ctime_sub): Likewise.
533
534 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
535
536         PR libfortran/47432
537         * config.h.in: Regenerated.
538         * configure: Regenerated.
539         * configure.ac: Add check for ttyname_r.
540         * io/unix.h: Add TTY_NAME_MAX, change stream_ttyname prototype.
541         * io/unix.c (stream_ttyname): Use ttyname_r if available, conform
542         to new prototype.
543         * io/inquire.c (inquire_via_unit): Use changed stream_ttyname.
544         * io/intrinsics.c (ttynam_sub): Likewise.
545         (ttynam): Likewise.
546
547 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
548
549         PR libfortran/47491
550         * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS to enable common
551         extensions.
552         * config.h.in: Regenerate.
553         * configure: Regenerate.
554
555 2011-01-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
556
557         PR libgfortran/47285
558         * io/write_float.def (write_infnan): Adjust processor selected width
559         to 3 if NaN.
560
561 2011-01-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
562
563         PR libgfortran/47285
564         * io/write_float.def (output_float): Return SUCCESS or FAILURE and use
565         the result to set the padding.
566
567 2011-01-26  Kai Tietz  <kai.tietz@onevision.com>
568
569         * intrinsics/getlog.c (getlog): Fix label/statement issue.
570
571 2011-01-25  Janne Blomqvist  <jb@gcc.gnu.org>
572
573         PR libfortran/47375
574         * config.h.in: Regenerated.
575         * configure: Regenerated.
576         * configure.ac: Add check for getpwuid_r.
577         * intrinsics/getlog.c (getlog): Use getpwuid_r() if available.
578
579 2011-01-22  Janne Blomqvist  <jb@gcc.gnu.org>
580
581         PR libfortran/46267
582         * config.h.in: Regenerated.
583         * configure: Regenerated.
584         * configure.ac: Check presence of strerror_r.
585         * intrinsics/gerror.c (gerror): Use gf_strerror, modify logic.
586         * io/unix.c (get_oserror): Remove.
587         * libgfortran.h (gf_strerror): Add prototype.
588         (get_oserror): Remove prototype.
589         * runtime/error.c (gf_strerror): New function.
590         (os_error): Use gf_strerror instead of get_oserror.
591         (generate_errror): Likewise.
592
593 2011-01-17  Janne Blomqvist  <jb@gcc.gnu.org>
594
595         PR libfortran/47296
596         * io/unix.c (tempfile): Set opp->file and opp->file_len also if an
597         error occurs.
598
599 2011-01-16  Jakub Jelinek  <jakub@redhat.com>
600
601         PR fortran/46625
602         * io/write_float.def (DTOAQ): Use quadmath_flt128tostr
603         instead of quadmath_dtoa.
604         * io/transfer128.c (tmp1, tmp2): New variables, bring in
605         strtoflt128 and quadmath_flt128tostr.
606         (transfer_real128, transfer_real128_write, transfer_complex128,
607         transfer_complex128_write): Remove tmp1/tmp2 variables.
608         * io/read.c (convert_real): Use strtoflt128 instead of
609         quadmath_strtopQ, adjust for the changed arguments and return
610         value.
611
612 2011-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
613
614         PR libgfortran/47296
615         * io/unix.c (unpack_filename): Return non-zero if the filename passed
616         in is NULL.
617
618 2011-01-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
619
620         PR libgfortran/47154
621         * io/list_read.c (namelist_read): Remove calls to hit_eof to avoid the
622         duplicate calls via next_record.
623
624 \f
625 Copyright (C) 2011 Free Software Foundation, Inc.
626
627 Copying and distribution of this file, with or without modification,
628 are permitted in any medium without royalty provided the copyright
629 notice and this notice are preserved.