Merge from trunk:
[official-gcc.git] / gcc-4_6-mobile-vtable-security / libgfortran / ChangeLog
blob31e5895f4102ea7364927d519bea08e06f2b20f4
1 2012-03-01  Release Manager
3         * GCC 4.6.3 released.
5 2011-11-20  Andreas Tobler  <andreast@fgznet.ch>
7         * configure: Regenerate.
9 2011-10-26  Release Manager
11         * GCC 4.6.2 released.
13 2011-10-19  Janne Blomqvist  <jb@gcc.gnu.org>
14             Kai Tietz  <ktietz@redhat.com>
15             Tobias Burnus  <burnus@net-b.de>
17         PR fortran/50016
18         * io/unix.h (flush_sync): Add new libgfortran-internal prototype.
19         * io/unix.c (flush_sync): New function, which calls sflush and
20         on MinGW(-w64) also _commit.
21         (flush_all_units, flush_all_units_1): Replace sflush/_commit by
22         flush_sync.
23         * io/file_pos.c (st_flush): Replace sflush/_commit by flush_sync.
24         * io/intrinsics.c (flush_i4, flush_i8): Ditto.
26 2011-10-18  Tobias Burnus  <burnus@net-b.de>
27             Janne Blomqvist  <jb@gcc.gnu.org>
29         PR fortran/50016
30         * io/file_pos.c (st_flush): Call _commit on MinGW(-w64).
31         * io/intrinsics.c (flush_i4, flush_i8): Ditto.
32         * io/unix.c (flush_all_units_1, flush_all_units): Ditto.
33         (buf_flush): Remove _commit call.
34         * io/inquire.c (inquire_via_unit): Flush internal buffer
35         and call file_length instead of invoking stat via file_size.
37 2011-09-11  Thomas Koenig  <tkoenig@gcc.gnu.org>
39         Backport fron trunk
40         PR fortran/49479
41         * generated/m4/ifunction.m4:  Always call internal_malloc_size
42         even when there is a zero-sized return array.
43         * generated/generated/maxloc1_16_i16.c: Regenerated.
44         * generated/generated/maxloc1_16_i1.c: Regenerated.
45         * generated/generated/maxloc1_16_i2.c: Regenerated.
46         * generated/generated/maxloc1_16_i4.c: Regenerated.
47         * generated/generated/maxloc1_16_i8.c: Regenerated.
48         * generated/generated/maxloc1_16_r10.c: Regenerated.
49         * generated/generated/maxloc1_16_r16.c: Regenerated.
50         * generated/generated/maxloc1_16_r4.c: Regenerated.
51         * generated/generated/maxloc1_16_r8.c: Regenerated.
52         * generated/generated/maxloc1_4_i16.c: Regenerated.
53         * generated/generated/maxloc1_4_i1.c: Regenerated.
54         * generated/generated/maxloc1_4_i2.c: Regenerated.
55         * generated/generated/maxloc1_4_i4.c: Regenerated.
56         * generated/generated/maxloc1_4_i8.c: Regenerated.
57         * generated/generated/maxloc1_4_r10.c: Regenerated.
58         * generated/generated/maxloc1_4_r16.c: Regenerated.
59         * generated/generated/maxloc1_4_r4.c: Regenerated.
60         * generated/generated/maxloc1_4_r8.c: Regenerated.
61         * generated/generated/maxloc1_8_i16.c: Regenerated.
62         * generated/generated/maxloc1_8_i1.c: Regenerated.
63         * generated/generated/maxloc1_8_i2.c: Regenerated.
64         * generated/generated/maxloc1_8_i4.c: Regenerated.
65         * generated/generated/maxloc1_8_i8.c: Regenerated.
66         * generated/generated/maxloc1_8_r10.c: Regenerated.
67         * generated/generated/maxloc1_8_r16.c: Regenerated.
68         * generated/generated/maxloc1_8_r4.c: Regenerated.
69         * generated/generated/maxloc1_8_r8.c: Regenerated.
70         * generated/generated/maxval_i16.c: Regenerated.
71         * generated/generated/maxval_i1.c: Regenerated.
72         * generated/generated/maxval_i2.c: Regenerated.
73         * generated/generated/maxval_i4.c: Regenerated.
74         * generated/generated/maxval_i8.c: Regenerated.
75         * generated/generated/maxval_r10.c: Regenerated.
76         * generated/generated/maxval_r16.c: Regenerated.
77         * generated/generated/maxval_r4.c: Regenerated.
78         * generated/generated/maxval_r8.c: Regenerated.
79         * generated/generated/minloc1_16_i16.c: Regenerated.
80         * generated/generated/minloc1_16_i1.c: Regenerated.
81         * generated/generated/minloc1_16_i2.c: Regenerated.
82         * generated/generated/minloc1_16_i4.c: Regenerated.
83         * generated/generated/minloc1_16_i8.c: Regenerated.
84         * generated/generated/minloc1_16_r10.c: Regenerated.
85         * generated/generated/minloc1_16_r16.c: Regenerated.
86         * generated/generated/minloc1_16_r4.c: Regenerated.
87         * generated/generated/minloc1_16_r8.c: Regenerated.
88         * generated/generated/minloc1_4_i16.c: Regenerated.
89         * generated/generated/minloc1_4_i1.c: Regenerated.
90         * generated/generated/minloc1_4_i2.c: Regenerated.
91         * generated/generated/minloc1_4_i4.c: Regenerated.
92         * generated/generated/minloc1_4_i8.c: Regenerated.
93         * generated/generated/minloc1_4_r10.c: Regenerated.
94         * generated/generated/minloc1_4_r16.c: Regenerated.
95         * generated/generated/minloc1_4_r4.c: Regenerated.
96         * generated/generated/minloc1_4_r8.c: Regenerated.
97         * generated/generated/minloc1_8_i16.c: Regenerated.
98         * generated/generated/minloc1_8_i1.c: Regenerated.
99         * generated/generated/minloc1_8_i2.c: Regenerated.
100         * generated/generated/minloc1_8_i4.c: Regenerated.
101         * generated/generated/minloc1_8_i8.c: Regenerated.
102         * generated/generated/minloc1_8_r10.c: Regenerated.
103         * generated/generated/minloc1_8_r16.c: Regenerated.
104         * generated/generated/minloc1_8_r4.c: Regenerated.
105         * generated/generated/minloc1_8_r8.c: Regenerated.
106         * generated/generated/minval_i16.c: Regenerated.
107         * generated/generated/minval_i1.c: Regenerated.
108         * generated/generated/minval_i2.c: Regenerated.
109         * generated/generated/minval_i4.c: Regenerated.
110         * generated/generated/minval_i8.c: Regenerated.
111         * generated/generated/minval_r10.c: Regenerated.
112         * generated/generated/minval_r16.c: Regenerated.
113         * generated/generated/minval_r4.c: Regenerated.
114         * generated/generated/minval_r8.c: Regenerated.
115         * generated/generated/product_c10.c: Regenerated.
116         * generated/generated/product_c16.c: Regenerated.
117         * generated/generated/product_c4.c: Regenerated.
118         * generated/generated/product_c8.c: Regenerated.
119         * generated/generated/product_i16.c: Regenerated.
120         * generated/generated/product_i1.c: Regenerated.
121         * generated/generated/product_i2.c: Regenerated.
122         * generated/generated/product_i4.c: Regenerated.
123         * generated/generated/product_i8.c: Regenerated.
124         * generated/generated/product_r10.c: Regenerated.
125         * generated/generated/product_r16.c: Regenerated.
126         * generated/generated/product_r4.c: Regenerated.
127         * generated/generated/product_r8.c: Regenerated.
128         * generated/generated/sum_c10.c: Regenerated.
129         * generated/generated/sum_c16.c: Regenerated.
130         * generated/generated/sum_c4.c: Regenerated.
131         * generated/generated/sum_c8.c: Regenerated.
132         * generated/generated/sum_i16.c: Regenerated.
133         * generated/generated/sum_i1.c: Regenerated.
134         * generated/generated/sum_i2.c: Regenerated.
135         * generated/generated/sum_i4.c: Regenerated.
136         * generated/generated/sum_i8.c: Regenerated.
137         * generated/generated/sum_r10.c: Regenerated.
138         * generated/generated/sum_r16.c: Regenerated.
139         * generated/generated/sum_r4.c: Regenerated.
140         * generated/generated/sum_r8.c: Regenerated.
142 2011-08-29  Thomas Koenig  <tkoenig@gcc.gnu.org>
144         Backport from trunk
145         PR libfortran/50192
146         * intrinsics/string_intrinsics.c (memcmp_char4):  New function.
147         * intrinsics/string_intrinsics_inc.c:  New macro MEMCMP, either
148         set to memcmp or memcmp_char4.
149         (compare_string):  Use MEMCMP, with correct size for it.
150         * libgfortran.h:  Add prototype for memcmp_char4.
152 2011-08-19  Tobias Burnus  <burnus@net-b.de>
154         PR fortran/50109
155         * io/list_read.c (eat_separator): Fix skipping over "!" lines.
157 2011-07-27  Tobias Burnus  <burnus@net-b.de>
159         Backport from mainline
160         2011-07-23  Tobias Burnus  <burnus@net-b.de>
162         PR fortran/49791
163         * io/list_read.c (nml_parse_qualifier): Remove check to
164         enabled extended read for another case.
166 2011-07-13  Janne Blomqvist  <jb@gcc.gnu.org>
168         Backport from trunk:
169         PR libfortran/49296
170         * io/list_read.c (read_logical): Don't error out if a valid value
171         is followed by EOF instead of a normal separator.
172         (read_integer): Likewise.
174 2011-07-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
176         Partial backport from trunk:
177         PR fortran/49479
178         * runtime/memory.c:  If size is zero, allocate a single byte.
179         * m4/eoshift1.m4:  Remove double allocation.
180         * m4/eoshift3.m4:  Likewise.
181         * generated/eoshift1_4.c:  Regenerated.
182         * generated/eoshift1_8.c:  Regenerated.
183         * generated/eoshift1_16.c:  Regenerated.
184         * generated/eoshift3_4.c:  Regenerated.
185         * generated/eoshift3_8.c:  Regenerated.
186         * generated/eoshift3_16.c:  Regenerated.
188 2011-07-03  Janne Blomqvist  <jb@gcc.gnu.org>
190         Backport from mainline:
191         PR libfortran/49296
192         * io/list_read.c (read_character): Accept EOF as a separator when
193         reading string.
195 2011-06-27  Release Manager
197         * GCC 4.6.1 released.
199 2011-04-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
201         Backport from mainline:
202         PR libgfortran/48030
203         * io/read.c (read_x): Re-implement using fbuf_getc.
205 2011-04-18  Janne Blomqvist  <jb@gcc.gnu.org>
207         PR libfortran/47571
208         * configure: Regenerated.
209         * config.h.in: Regenerated.
210         * acinclude.m4: Add alpha*-dec-osf* to gthread blacklist.
211         * configure.ac: Use separate symbol for clock_gettime in librt.
212         * intrinsics/system_clock.c: Use weakrefs only when needed and
213         supported.
215 2011-03-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
217         Backport from mainline:
218         2011-03-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
220         PR bootstrap/48135
221         * configure.ac (gfortran_use_symver): Handle --disable-symvers.
222         * configure: Regenerate.
224 2011-03-25  Release Manager
226         * GCC 4.6.0 released.
228 2011-03-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
230         PR fortran/47571
231         * intrinsics/system_clock.c [__alpha__ && __osf__]
232         (HAVE_CLOCK_GETTIME): Undef.
234 2011-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>
236         PR libfortran/48066
237         * m4/ifunction.m4:  If return array is empty, return.
238         * m4/ifunction_logical.m4:  Likewise.
239         * generated/all_l16.c: Regenerated.
240         * generated/all_l1.c: Regenerated.
241         * generated/all_l2.c: Regenerated.
242         * generated/all_l4.c: Regenerated.
243         * generated/all_l8.c: Regenerated.
244         * generated/any_l16.c: Regenerated.
245         * generated/any_l1.c: Regenerated.
246         * generated/any_l2.c: Regenerated.
247         * generated/any_l4.c: Regenerated.
248         * generated/any_l8.c: Regenerated.
249         * generated/count_16_l.c: Regenerated.
250         * generated/count_1_l.c: Regenerated.
251         * generated/count_2_l.c: Regenerated.
252         * generated/count_4_l.c: Regenerated.
253         * generated/count_8_l.c: Regenerated.
254         * generated/maxloc1_16_i16.c: Regenerated.
255         * generated/maxloc1_16_i1.c: Regenerated.
256         * generated/maxloc1_16_i2.c: Regenerated.
257         * generated/maxloc1_16_i4.c: Regenerated.
258         * generated/maxloc1_16_i8.c: Regenerated.
259         * generated/maxloc1_16_r10.c: Regenerated.
260         * generated/maxloc1_16_r16.c: Regenerated.
261         * generated/maxloc1_16_r4.c: Regenerated.
262         * generated/maxloc1_16_r8.c: Regenerated.
263         * generated/maxloc1_4_i16.c: Regenerated.
264         * generated/maxloc1_4_i1.c: Regenerated.
265         * generated/maxloc1_4_i2.c: Regenerated.
266         * generated/maxloc1_4_i4.c: Regenerated.
267         * generated/maxloc1_4_i8.c: Regenerated.
268         * generated/maxloc1_4_r10.c: Regenerated.
269         * generated/maxloc1_4_r16.c: Regenerated.
270         * generated/maxloc1_4_r4.c: Regenerated.
271         * generated/maxloc1_4_r8.c: Regenerated.
272         * generated/maxloc1_8_i16.c: Regenerated.
273         * generated/maxloc1_8_i1.c: Regenerated.
274         * generated/maxloc1_8_i2.c: Regenerated.
275         * generated/maxloc1_8_i4.c: Regenerated.
276         * generated/maxloc1_8_i8.c: Regenerated.
277         * generated/maxloc1_8_r10.c: Regenerated.
278         * generated/maxloc1_8_r16.c: Regenerated.
279         * generated/maxloc1_8_r4.c: Regenerated.
280         * generated/maxloc1_8_r8.c: Regenerated.
281         * generated/maxval_i16.c: Regenerated.
282         * generated/maxval_i1.c: Regenerated.
283         * generated/maxval_i2.c: Regenerated.
284         * generated/maxval_i4.c: Regenerated.
285         * generated/maxval_i8.c: Regenerated.
286         * generated/maxval_r10.c: Regenerated.
287         * generated/maxval_r16.c: Regenerated.
288         * generated/maxval_r4.c: Regenerated.
289         * generated/maxval_r8.c: Regenerated.
290         * generated/minloc1_16_i16.c: Regenerated.
291         * generated/minloc1_16_i1.c: Regenerated.
292         * generated/minloc1_16_i2.c: Regenerated.
293         * generated/minloc1_16_i4.c: Regenerated.
294         * generated/minloc1_16_i8.c: Regenerated.
295         * generated/minloc1_16_r10.c: Regenerated.
296         * generated/minloc1_16_r16.c: Regenerated.
297         * generated/minloc1_16_r4.c: Regenerated.
298         * generated/minloc1_16_r8.c: Regenerated.
299         * generated/minloc1_4_i16.c: Regenerated.
300         * generated/minloc1_4_i1.c: Regenerated.
301         * generated/minloc1_4_i2.c: Regenerated.
302         * generated/minloc1_4_i4.c: Regenerated.
303         * generated/minloc1_4_i8.c: Regenerated.
304         * generated/minloc1_4_r10.c: Regenerated.
305         * generated/minloc1_4_r16.c: Regenerated.
306         * generated/minloc1_4_r4.c: Regenerated.
307         * generated/minloc1_4_r8.c: Regenerated.
308         * generated/minloc1_8_i16.c: Regenerated.
309         * generated/minloc1_8_i1.c: Regenerated.
310         * generated/minloc1_8_i2.c: Regenerated.
311         * generated/minloc1_8_i4.c: Regenerated.
312         * generated/minloc1_8_i8.c: Regenerated.
313         * generated/minloc1_8_r10.c: Regenerated.
314         * generated/minloc1_8_r16.c: Regenerated.
315         * generated/minloc1_8_r4.c: Regenerated.
316         * generated/minloc1_8_r8.c: Regenerated.
317         * generated/minval_i16.c: Regenerated.
318         * generated/minval_i1.c: Regenerated.
319         * generated/minval_i2.c: Regenerated.
320         * generated/minval_i4.c: Regenerated.
321         * generated/minval_i8.c: Regenerated.
322         * generated/minval_r10.c: Regenerated.
323         * generated/minval_r16.c: Regenerated.
324         * generated/minval_r4.c: Regenerated.
325         * generated/minval_r8.c: Regenerated.
326         * generated/product_c10.c: Regenerated.
327         * generated/product_c16.c: Regenerated.
328         * generated/product_c4.c: Regenerated.
329         * generated/product_c8.c: Regenerated.
330         * generated/product_i16.c: Regenerated.
331         * generated/product_i1.c: Regenerated.
332         * generated/product_i2.c: Regenerated.
333         * generated/product_i4.c: Regenerated.
334         * generated/product_i8.c: Regenerated.
335         * generated/product_r10.c: Regenerated.
336         * generated/product_r16.c: Regenerated.
337         * generated/product_r4.c: Regenerated.
338         * generated/product_r8.c: Regenerated.
339         * generated/sum_c10.c: Regenerated.
340         * generated/sum_c16.c: Regenerated.
341         * generated/sum_c4.c: Regenerated.
342         * generated/sum_c8.c: Regenerated.
343         * generated/sum_i16.c: Regenerated.
344         * generated/sum_i1.c: Regenerated.
345         * generated/sum_i2.c: Regenerated.
346         * generated/sum_i4.c: Regenerated.
347         * generated/sum_i8.c: Regenerated.
348         * generated/sum_r10.c: Regenerated.
349         * generated/sum_r16.c: Regenerated.
350         * generated/sum_r4.c: Regenerated.
351         * generated/sum_r8.c: Regenerated.
353 2011-03-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
355         PR libgfortran/48047
356         * io/write_float.def (write_float): Change MIN_FIELD_WIDTH to 48.
358 2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
360         PR libfortran/47802
361         * intrinsics/ctime.c (strctime): Use builtins to check localtime_r
362         return type.
364 2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
366         PR libfortran/47802
367         * intrinsics/ctime.c (strctime): Don't use return value of
368         localtime_r.
370 2011-02-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
372         PR libgfortran/47567
373         * io/write_float.def (output_float): Move handling of w = 0 to after
374         output rounding. Check for zero and set zero_flag accordingly. Set
375         width according to zero_flag. Add better comments.
377 2011-02-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
379         PR libgfortran/47778
380         * io/list_read.c (namelist_read): Intialize the error string buffere.
381         If pprev_nl was used during the previous namelist read and the rank
382         was zero, reset the pointer to NULL for the next namelist read.
384 2011-02-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
386         PR libfortran/45165
387         * unix.c (fallback_access): Fix file descriptor leaks.
389 2011-02-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
391         * acinclude.m4 (LIBGFOR_CHECK_FPSETMASK): Set shell variable
392         tested in configure.host.
393         * configure: Regenerate.
395 2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
397         PR libfortran/47802
398         * config.h.in: Regenerated.
399         * configure: Regenerated.
400         * configure.ac: Remove checks for ctime and ctime_r, add check for
401         strftime.
402         * intrinsics/date_and_time.c (localtime_r): Move fallback
403         implementation to time_1.h.
404         * intrinsics/time_1.h (localtime_r): Fallback implementation.
405         * intrinsics/ctime.c: Include time_1.h.
406         (ctime_r): Remove fallback implementation.
407         (strctime): New function.
408         (fdate): Use strctime instead of ctime_r.
409         (fdate_sub): Likewise.
410         (ctime): Likewise.
411         (ctime_sub): Likewise.
413 2011-02-24  Jakub Jelinek  <jakub@redhat.com>
415         PR fortran/47878
416         * io/transfer.c (read_sf): Call fbuf_getptr only at the end,
417         and subtract n, dtp->u.p.sf_seen_eor and seen_comma from it.
419 2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
421         PR libfortran/47802
422         * configure.ac: Add test for POSIX getpwuid_r.
423         * intrinsics/getlog.c (getlog): CPP test for
424         HAVE_POSIX_GETPWUID_R.
425         * config.h.in: Regenerated.
426         * configure: Regenerated.
428 2011-02-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
430         PR libgfortran/47567
431         * io/write_float.def (output_float): Remove special case handling of
432         zero with width 1.
434 2011-02-23  Janne Blomqvist  <jb@gcc.gnu.org>
435             Jerry DeLisle    <jvdelisle@gcc.gnu.org>
437         PR libfortran/47694
438         * io/fbuf.h (fbuf_getptr): New inline function.
439         * io/transfer.c (read_sf): Use fbuf_getptr and fbuf_getc to scan
440         through the string instead of fbuf_read.
442 2011-02-22  Tobias Burnus  <burnus@net-b.de>
443             Kai-Uwe Eckhardt  <kuehro@gmx.de>
445         PR libfortran/47830
446         * intrinsics/c99_functions.c (roundl): Make C valid for
447         HAVE_NEXTAFTERL.
449 2011-02-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
451         PR libgfortran/47567
452         * io/write_float.def (output_float): Adjust width for F0.d to
453         allow space for negative signs on zero.
455 2011-02-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
457         PR libgfortran/47667
458         * io/list_read.c (read_logical): Check for end of line before calling
459         eat_line. (read_integer): Likewise. (parse_real): Don't unget the
460         separator. Check for end of line before calling eat_line.
461         (read_complex): Allow line-end before and after parenthesis and comma.
462         Check for end of line before calling eat_line. (read_real): Check for
463         end of line before calling eat_line.
465 2011-02-16  Jakub Jelinek  <jakub@redhat.com>
467         PR libfortran/47757
468         * gfortran.map (GFORTRAN_1.4): Export
469         _gfortran_{m,s}i{all,any,parity}_i{1,2,4,8,16} and
470         _gfortran_{cshift0,eoshift{0,2}}_16_char4.
472 2011-02-15  Tobias Burnus  <burnus@net-b.de>
474         PR fortran/47716
475         PR fortran/47648
476         * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Use check from
477         libquadmath, which uses more features.
478         * configure: Regenerate.
480 2011-02-14  Jakub Jelinek  <jakub@redhat.com>
482         PR fortran/47642
483         * io/write_float.def (DTOAQ): Use quadmath_snprintf instead of
484         quadmath_flt128tostr.
485         * io/transfer128.c (tmp2): Initialize to quadmath_snprintf instead
486         of quadmath_flt128tostr.
488 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
490         * Makefile.in: Regenerate.
491         * aclocal.m4: Likewise.
492         * configure: Likewise.
494 2011-02-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
496         PR libgfortran/47567
497         * io/write_float.def (output_float): Eliminate some redundant code.
498         Adjust width for case of F0.X for values of zero and all other values.
499         Expand cases where '*' is set to give cleaner results.
501 2011-02-05  Janne Blomqvist  <jb@gcc.gnu.org>
503         PR libfortran/47571
504         * intrinsics/time_1.h (GF_CLOCK_MONOTONIC): Move to system_clock.c.
505         (weak_gettime): Likewise.
506         (gf_gettime): Change API, move weak_gettime() usage to
507         system_clock.c
508         * intrinsics/system_clock.c (GTHREAD_USE_WEAK): Define.
509         (gf_gettime_mono): New function.
510         (system_clock_4): Use gf_gettime_mono().
511         (system_clock_8): Likewise.
512         * intrinsics/date_and_time.c (date_and_time): Update gf_gettime()
513         usage.
515 2011-02-02  Janne Blomqvist  <jb@gcc.gnu.org>
517         PR libfortran/47571
518         * configure: Regenerated.
519         * configure.ac: Don't add librt to LIBS.
520         * intrinsics/time_1.h (weak_gettime): Weakref trickery for
521         clock_gettime().
522         (gf_gettime): Use weak_gettime() instead of clock_gettime().
524 2011-02-01  Janne Blomqvist  <jb@gcc.gnu.org>
526         * intrinsics/time_1.h: Include errno.h needed by fallbacks.
528 2011-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
530         * intrinsics/time_1.h: Fix definition of GF_CLOCK_MONOTONIC macro.
532 2011-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
534         * configure.ac: Check for clock_gettime().
535         * configure: Regenerated.
536         * config.h.in: Regenerated.
537         * intrinsics/time_1.h (__time_1): Rename to gf_cputime, add
538         times() fallback.
539         (gf_gettime): New function.
540         * intrinsics/cpu_time.c (__cpu_time_1): Update to call gf_cputime.
541         * intrinsics/date_and_time.c (date_and_time): Use gf_gettime.
542         * intrinsics/dtime.c (dtime_sub): Use gf_cputime.
543         * intrinsics/etime.c (etime_sub): Use gf_cputime.
544         * intrinsics/system_clock.c (system_clock_4): Use gf_gettime.
545         (system_clock_8): Use gf_gettime, increase count rate to allow
546         nanosecond precision, remove overflow prone branch.
548 2011-01-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
550         PR libgfortran/47434
551         * io/write_float.def (write_infnan): Use calculate_sign to determine
552         if the sign should be given and check field widths accordingly.
554 2011-01-29  Kai Tietz  <kai.tietz@onevision.com>
556         * intrinsics/ctime.c (ctime_r): Improve implementation.
558 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
560         PR libfortran/47431
561         * config.h.in: Regenerated.
562         * configure: Regenerated.
563         * configure.ac: Add check for ctime_r().
564         * intrinsics/ctime.c (ctime_r): Fallback implementation.
565         (fdate): Use ctime_r() instead of ctime().
566         (fdate_sub): Likewise.
567         (ctime): Likewise.
568         (ctime_sub): Likewise.
570 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
572         PR libfortran/47432
573         * config.h.in: Regenerated.
574         * configure: Regenerated.
575         * configure.ac: Add check for ttyname_r.
576         * io/unix.h: Add TTY_NAME_MAX, change stream_ttyname prototype.
577         * io/unix.c (stream_ttyname): Use ttyname_r if available, conform
578         to new prototype.
579         * io/inquire.c (inquire_via_unit): Use changed stream_ttyname.
580         * io/intrinsics.c (ttynam_sub): Likewise.
581         (ttynam): Likewise.
583 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
585         PR libfortran/47491
586         * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS to enable common
587         extensions.
588         * config.h.in: Regenerate.
589         * configure: Regenerate.
591 2011-01-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
593         PR libgfortran/47285
594         * io/write_float.def (write_infnan): Adjust processor selected width
595         to 3 if NaN.
597 2011-01-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
599         PR libgfortran/47285
600         * io/write_float.def (output_float): Return SUCCESS or FAILURE and use
601         the result to set the padding.
603 2011-01-26  Kai Tietz  <kai.tietz@onevision.com>
605         * intrinsics/getlog.c (getlog): Fix label/statement issue.
607 2011-01-25  Janne Blomqvist  <jb@gcc.gnu.org>
609         PR libfortran/47375
610         * config.h.in: Regenerated.
611         * configure: Regenerated.
612         * configure.ac: Add check for getpwuid_r.
613         * intrinsics/getlog.c (getlog): Use getpwuid_r() if available.
615 2011-01-22  Janne Blomqvist  <jb@gcc.gnu.org>
617         PR libfortran/46267
618         * config.h.in: Regenerated.
619         * configure: Regenerated.
620         * configure.ac: Check presence of strerror_r.
621         * intrinsics/gerror.c (gerror): Use gf_strerror, modify logic.
622         * io/unix.c (get_oserror): Remove.
623         * libgfortran.h (gf_strerror): Add prototype.
624         (get_oserror): Remove prototype.
625         * runtime/error.c (gf_strerror): New function.
626         (os_error): Use gf_strerror instead of get_oserror.
627         (generate_errror): Likewise.
629 2011-01-17  Janne Blomqvist  <jb@gcc.gnu.org>
631         PR libfortran/47296
632         * io/unix.c (tempfile): Set opp->file and opp->file_len also if an
633         error occurs.
635 2011-01-16  Jakub Jelinek  <jakub@redhat.com>
637         PR fortran/46625
638         * io/write_float.def (DTOAQ): Use quadmath_flt128tostr
639         instead of quadmath_dtoa.
640         * io/transfer128.c (tmp1, tmp2): New variables, bring in
641         strtoflt128 and quadmath_flt128tostr.
642         (transfer_real128, transfer_real128_write, transfer_complex128,
643         transfer_complex128_write): Remove tmp1/tmp2 variables.
644         * io/read.c (convert_real): Use strtoflt128 instead of
645         quadmath_strtopQ, adjust for the changed arguments and return
646         value.
648 2011-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
650         PR libgfortran/47296
651         * io/unix.c (unpack_filename): Return non-zero if the filename passed
652         in is NULL.
654 2011-01-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
656         PR libgfortran/47154
657         * io/list_read.c (namelist_read): Remove calls to hit_eof to avoid the
658         duplicate calls via next_record.
661 Copyright (C) 2011 Free Software Foundation, Inc.
663 Copying and distribution of this file, with or without modification,
664 are permitted in any medium without royalty provided the copyright
665 notice and this notice are preserved.