OSDN Git Service

70c2b527d79ad002b3baf5b3992368e6d13a7ada
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2011-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>
2
3         PR libfortran/48066
4         * m4/ifunction.m4:  If return array is empty, return.
5         * m4/ifunction_logical.m4:  Likewise.
6         * generated/all_l16.c: Regenerated.
7         * generated/all_l1.c: Regenerated.
8         * generated/all_l2.c: Regenerated.
9         * generated/all_l4.c: Regenerated.
10         * generated/all_l8.c: Regenerated.
11         * generated/any_l16.c: Regenerated.
12         * generated/any_l1.c: Regenerated.
13         * generated/any_l2.c: Regenerated.
14         * generated/any_l4.c: Regenerated.
15         * generated/any_l8.c: Regenerated.
16         * generated/count_16_l.c: Regenerated.
17         * generated/count_1_l.c: Regenerated.
18         * generated/count_2_l.c: Regenerated.
19         * generated/count_4_l.c: Regenerated.
20         * generated/count_8_l.c: Regenerated.
21         * generated/maxloc1_16_i16.c: Regenerated.
22         * generated/maxloc1_16_i1.c: Regenerated.
23         * generated/maxloc1_16_i2.c: Regenerated.
24         * generated/maxloc1_16_i4.c: Regenerated.
25         * generated/maxloc1_16_i8.c: Regenerated.
26         * generated/maxloc1_16_r10.c: Regenerated.
27         * generated/maxloc1_16_r16.c: Regenerated.
28         * generated/maxloc1_16_r4.c: Regenerated.
29         * generated/maxloc1_16_r8.c: Regenerated.
30         * generated/maxloc1_4_i16.c: Regenerated.
31         * generated/maxloc1_4_i1.c: Regenerated.
32         * generated/maxloc1_4_i2.c: Regenerated.
33         * generated/maxloc1_4_i4.c: Regenerated.
34         * generated/maxloc1_4_i8.c: Regenerated.
35         * generated/maxloc1_4_r10.c: Regenerated.
36         * generated/maxloc1_4_r16.c: Regenerated.
37         * generated/maxloc1_4_r4.c: Regenerated.
38         * generated/maxloc1_4_r8.c: Regenerated.
39         * generated/maxloc1_8_i16.c: Regenerated.
40         * generated/maxloc1_8_i1.c: Regenerated.
41         * generated/maxloc1_8_i2.c: Regenerated.
42         * generated/maxloc1_8_i4.c: Regenerated.
43         * generated/maxloc1_8_i8.c: Regenerated.
44         * generated/maxloc1_8_r10.c: Regenerated.
45         * generated/maxloc1_8_r16.c: Regenerated.
46         * generated/maxloc1_8_r4.c: Regenerated.
47         * generated/maxloc1_8_r8.c: Regenerated.
48         * generated/maxval_i16.c: Regenerated.
49         * generated/maxval_i1.c: Regenerated.
50         * generated/maxval_i2.c: Regenerated.
51         * generated/maxval_i4.c: Regenerated.
52         * generated/maxval_i8.c: Regenerated.
53         * generated/maxval_r10.c: Regenerated.
54         * generated/maxval_r16.c: Regenerated.
55         * generated/maxval_r4.c: Regenerated.
56         * generated/maxval_r8.c: Regenerated.
57         * generated/minloc1_16_i16.c: Regenerated.
58         * generated/minloc1_16_i1.c: Regenerated.
59         * generated/minloc1_16_i2.c: Regenerated.
60         * generated/minloc1_16_i4.c: Regenerated.
61         * generated/minloc1_16_i8.c: Regenerated.
62         * generated/minloc1_16_r10.c: Regenerated.
63         * generated/minloc1_16_r16.c: Regenerated.
64         * generated/minloc1_16_r4.c: Regenerated.
65         * generated/minloc1_16_r8.c: Regenerated.
66         * generated/minloc1_4_i16.c: Regenerated.
67         * generated/minloc1_4_i1.c: Regenerated.
68         * generated/minloc1_4_i2.c: Regenerated.
69         * generated/minloc1_4_i4.c: Regenerated.
70         * generated/minloc1_4_i8.c: Regenerated.
71         * generated/minloc1_4_r10.c: Regenerated.
72         * generated/minloc1_4_r16.c: Regenerated.
73         * generated/minloc1_4_r4.c: Regenerated.
74         * generated/minloc1_4_r8.c: Regenerated.
75         * generated/minloc1_8_i16.c: Regenerated.
76         * generated/minloc1_8_i1.c: Regenerated.
77         * generated/minloc1_8_i2.c: Regenerated.
78         * generated/minloc1_8_i4.c: Regenerated.
79         * generated/minloc1_8_i8.c: Regenerated.
80         * generated/minloc1_8_r10.c: Regenerated.
81         * generated/minloc1_8_r16.c: Regenerated.
82         * generated/minloc1_8_r4.c: Regenerated.
83         * generated/minloc1_8_r8.c: Regenerated.
84         * generated/minval_i16.c: Regenerated.
85         * generated/minval_i1.c: Regenerated.
86         * generated/minval_i2.c: Regenerated.
87         * generated/minval_i4.c: Regenerated.
88         * generated/minval_i8.c: Regenerated.
89         * generated/minval_r10.c: Regenerated.
90         * generated/minval_r16.c: Regenerated.
91         * generated/minval_r4.c: Regenerated.
92         * generated/minval_r8.c: Regenerated.
93         * generated/product_c10.c: Regenerated.
94         * generated/product_c16.c: Regenerated.
95         * generated/product_c4.c: Regenerated.
96         * generated/product_c8.c: Regenerated.
97         * generated/product_i16.c: Regenerated.
98         * generated/product_i1.c: Regenerated.
99         * generated/product_i2.c: Regenerated.
100         * generated/product_i4.c: Regenerated.
101         * generated/product_i8.c: Regenerated.
102         * generated/product_r10.c: Regenerated.
103         * generated/product_r16.c: Regenerated.
104         * generated/product_r4.c: Regenerated.
105         * generated/product_r8.c: Regenerated.
106         * generated/sum_c10.c: Regenerated.
107         * generated/sum_c16.c: Regenerated.
108         * generated/sum_c4.c: Regenerated.
109         * generated/sum_c8.c: Regenerated.
110         * generated/sum_i16.c: Regenerated.
111         * generated/sum_i1.c: Regenerated.
112         * generated/sum_i2.c: Regenerated.
113         * generated/sum_i4.c: Regenerated.
114         * generated/sum_i8.c: Regenerated.
115         * generated/sum_r10.c: Regenerated.
116         * generated/sum_r16.c: Regenerated.
117         * generated/sum_r4.c: Regenerated.
118         * generated/sum_r8.c: Regenerated.
119
120 2011-03-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
121
122         PR libgfortran/48047
123         * io/write_float.def (write_float): Change MIN_FIELD_WIDTH to 48.
124
125 2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
126
127         PR libfortran/47802
128         * intrinsics/ctime.c (strctime): Use builtins to check localtime_r
129         return type.
130
131 2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
132
133         PR libfortran/47802
134         * intrinsics/ctime.c (strctime): Don't use return value of
135         localtime_r.
136
137 2011-02-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
138
139         PR libgfortran/47567
140         * io/write_float.def (output_float): Move handling of w = 0 to after
141         output rounding. Check for zero and set zero_flag accordingly. Set
142         width according to zero_flag. Add better comments.
143
144 2011-02-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
145
146         PR libgfortran/47778
147         * io/list_read.c (namelist_read): Intialize the error string buffere.
148         If pprev_nl was used during the previous namelist read and the rank
149         was zero, reset the pointer to NULL for the next namelist read.
150
151 2011-02-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
152
153         PR libfortran/45165
154         * unix.c (fallback_access): Fix file descriptor leaks.
155
156 2011-02-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
157
158         * acinclude.m4 (LIBGFOR_CHECK_FPSETMASK): Set shell variable
159         tested in configure.host.
160         * configure: Regenerate.
161
162 2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
163
164         PR libfortran/47802
165         * config.h.in: Regenerated.
166         * configure: Regenerated.
167         * configure.ac: Remove checks for ctime and ctime_r, add check for
168         strftime.
169         * intrinsics/date_and_time.c (localtime_r): Move fallback
170         implementation to time_1.h.
171         * intrinsics/time_1.h (localtime_r): Fallback implementation.
172         * intrinsics/ctime.c: Include time_1.h.
173         (ctime_r): Remove fallback implementation.
174         (strctime): New function.
175         (fdate): Use strctime instead of ctime_r.
176         (fdate_sub): Likewise.
177         (ctime): Likewise.
178         (ctime_sub): Likewise.
179
180 2011-02-24  Jakub Jelinek  <jakub@redhat.com>
181
182         PR fortran/47878
183         * io/transfer.c (read_sf): Call fbuf_getptr only at the end,
184         and subtract n, dtp->u.p.sf_seen_eor and seen_comma from it.
185
186 2011-02-24  Janne Blomqvist  <jb@gcc.gnu.org>
187
188         PR libfortran/47802
189         * configure.ac: Add test for POSIX getpwuid_r.
190         * intrinsics/getlog.c (getlog): CPP test for
191         HAVE_POSIX_GETPWUID_R.
192         * config.h.in: Regenerated.
193         * configure: Regenerated.
194
195 2011-02-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
196
197         PR libgfortran/47567
198         * io/write_float.def (output_float): Remove special case handling of
199         zero with width 1.
200
201 2011-02-23  Janne Blomqvist  <jb@gcc.gnu.org>
202             Jerry DeLisle    <jvdelisle@gcc.gnu.org>
203
204         PR libfortran/47694
205         * io/fbuf.h (fbuf_getptr): New inline function.
206         * io/transfer.c (read_sf): Use fbuf_getptr and fbuf_getc to scan
207         through the string instead of fbuf_read.
208
209 2011-02-22  Tobias Burnus  <burnus@net-b.de>
210             Kai-Uwe Eckhardt  <kuehro@gmx.de>
211
212         PR libfortran/47830
213         * intrinsics/c99_functions.c (roundl): Make C valid for
214         HAVE_NEXTAFTERL.
215
216 2011-02-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
217
218         PR libgfortran/47567
219         * io/write_float.def (output_float): Adjust width for F0.d to
220         allow space for negative signs on zero.
221
222 2011-02-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
223
224         PR libgfortran/47667
225         * io/list_read.c (read_logical): Check for end of line before calling
226         eat_line. (read_integer): Likewise. (parse_real): Don't unget the
227         separator. Check for end of line before calling eat_line.
228         (read_complex): Allow line-end before and after parenthesis and comma.
229         Check for end of line before calling eat_line. (read_real): Check for
230         end of line before calling eat_line.
231
232 2011-02-16  Jakub Jelinek  <jakub@redhat.com>
233
234         PR libfortran/47757
235         * gfortran.map (GFORTRAN_1.4): Export
236         _gfortran_{m,s}i{all,any,parity}_i{1,2,4,8,16} and
237         _gfortran_{cshift0,eoshift{0,2}}_16_char4.
238
239 2011-02-15  Tobias Burnus  <burnus@net-b.de>
240
241         PR fortran/47716
242         PR fortran/47648
243         * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Use check from
244         libquadmath, which uses more features.
245         * configure: Regenerate.
246
247 2011-02-14  Jakub Jelinek  <jakub@redhat.com>
248
249         PR fortran/47642
250         * io/write_float.def (DTOAQ): Use quadmath_snprintf instead of
251         quadmath_flt128tostr.
252         * io/transfer128.c (tmp2): Initialize to quadmath_snprintf instead
253         of quadmath_flt128tostr.
254
255 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
256
257         * Makefile.in: Regenerate.
258         * aclocal.m4: Likewise.
259         * configure: Likewise.
260
261 2011-02-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
262
263         PR libgfortran/47567
264         * io/write_float.def (output_float): Eliminate some redundant code.
265         Adjust width for case of F0.X for values of zero and all other values.
266         Expand cases where '*' is set to give cleaner results.
267
268 2011-02-05  Janne Blomqvist  <jb@gcc.gnu.org>
269
270         PR libfortran/47571
271         * intrinsics/time_1.h (GF_CLOCK_MONOTONIC): Move to system_clock.c.
272         (weak_gettime): Likewise.
273         (gf_gettime): Change API, move weak_gettime() usage to
274         system_clock.c
275         * intrinsics/system_clock.c (GTHREAD_USE_WEAK): Define.
276         (gf_gettime_mono): New function.
277         (system_clock_4): Use gf_gettime_mono().
278         (system_clock_8): Likewise.
279         * intrinsics/date_and_time.c (date_and_time): Update gf_gettime()
280         usage.
281
282 2011-02-02  Janne Blomqvist  <jb@gcc.gnu.org>
283
284         PR libfortran/47571
285         * configure: Regenerated.
286         * configure.ac: Don't add librt to LIBS.
287         * intrinsics/time_1.h (weak_gettime): Weakref trickery for
288         clock_gettime().
289         (gf_gettime): Use weak_gettime() instead of clock_gettime().
290
291 2011-02-01  Janne Blomqvist  <jb@gcc.gnu.org>
292
293         * intrinsics/time_1.h: Include errno.h needed by fallbacks.
294
295 2011-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
296
297         * intrinsics/time_1.h: Fix definition of GF_CLOCK_MONOTONIC macro.
298
299 2011-01-31  Janne Blomqvist  <jb@gcc.gnu.org>
300
301         * configure.ac: Check for clock_gettime().
302         * configure: Regenerated.
303         * config.h.in: Regenerated.
304         * intrinsics/time_1.h (__time_1): Rename to gf_cputime, add
305         times() fallback.
306         (gf_gettime): New function.
307         * intrinsics/cpu_time.c (__cpu_time_1): Update to call gf_cputime.
308         * intrinsics/date_and_time.c (date_and_time): Use gf_gettime.
309         * intrinsics/dtime.c (dtime_sub): Use gf_cputime.
310         * intrinsics/etime.c (etime_sub): Use gf_cputime.
311         * intrinsics/system_clock.c (system_clock_4): Use gf_gettime.
312         (system_clock_8): Use gf_gettime, increase count rate to allow
313         nanosecond precision, remove overflow prone branch.
314
315 2011-01-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
316
317         PR libgfortran/47434
318         * io/write_float.def (write_infnan): Use calculate_sign to determine
319         if the sign should be given and check field widths accordingly.
320
321 2011-01-29  Kai Tietz  <kai.tietz@onevision.com>
322
323         * intrinsics/ctime.c (ctime_r): Improve implementation.
324
325 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
326
327         PR libfortran/47431
328         * config.h.in: Regenerated.
329         * configure: Regenerated.
330         * configure.ac: Add check for ctime_r().
331         * intrinsics/ctime.c (ctime_r): Fallback implementation.
332         (fdate): Use ctime_r() instead of ctime().
333         (fdate_sub): Likewise.
334         (ctime): Likewise.
335         (ctime_sub): Likewise.
336
337 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
338
339         PR libfortran/47432
340         * config.h.in: Regenerated.
341         * configure: Regenerated.
342         * configure.ac: Add check for ttyname_r.
343         * io/unix.h: Add TTY_NAME_MAX, change stream_ttyname prototype.
344         * io/unix.c (stream_ttyname): Use ttyname_r if available, conform
345         to new prototype.
346         * io/inquire.c (inquire_via_unit): Use changed stream_ttyname.
347         * io/intrinsics.c (ttynam_sub): Likewise.
348         (ttynam): Likewise.
349
350 2011-01-27  Janne Blomqvist  <jb@gcc.gnu.org>
351
352         PR libfortran/47491
353         * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS to enable common
354         extensions.
355         * config.h.in: Regenerate.
356         * configure: Regenerate.
357
358 2011-01-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
359
360         PR libgfortran/47285
361         * io/write_float.def (write_infnan): Adjust processor selected width
362         to 3 if NaN.
363
364 2011-01-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
365
366         PR libgfortran/47285
367         * io/write_float.def (output_float): Return SUCCESS or FAILURE and use
368         the result to set the padding.
369
370 2011-01-26  Kai Tietz  <kai.tietz@onevision.com>
371
372         * intrinsics/getlog.c (getlog): Fix label/statement issue.
373
374 2011-01-25  Janne Blomqvist  <jb@gcc.gnu.org>
375
376         PR libfortran/47375
377         * config.h.in: Regenerated.
378         * configure: Regenerated.
379         * configure.ac: Add check for getpwuid_r.
380         * intrinsics/getlog.c (getlog): Use getpwuid_r() if available.
381
382 2011-01-22  Janne Blomqvist  <jb@gcc.gnu.org>
383
384         PR libfortran/46267
385         * config.h.in: Regenerated.
386         * configure: Regenerated.
387         * configure.ac: Check presence of strerror_r.
388         * intrinsics/gerror.c (gerror): Use gf_strerror, modify logic.
389         * io/unix.c (get_oserror): Remove.
390         * libgfortran.h (gf_strerror): Add prototype.
391         (get_oserror): Remove prototype.
392         * runtime/error.c (gf_strerror): New function.
393         (os_error): Use gf_strerror instead of get_oserror.
394         (generate_errror): Likewise.
395
396 2011-01-17  Janne Blomqvist  <jb@gcc.gnu.org>
397
398         PR libfortran/47296
399         * io/unix.c (tempfile): Set opp->file and opp->file_len also if an
400         error occurs.
401
402 2011-01-16  Jakub Jelinek  <jakub@redhat.com>
403
404         PR fortran/46625
405         * io/write_float.def (DTOAQ): Use quadmath_flt128tostr
406         instead of quadmath_dtoa.
407         * io/transfer128.c (tmp1, tmp2): New variables, bring in
408         strtoflt128 and quadmath_flt128tostr.
409         (transfer_real128, transfer_real128_write, transfer_complex128,
410         transfer_complex128_write): Remove tmp1/tmp2 variables.
411         * io/read.c (convert_real): Use strtoflt128 instead of
412         quadmath_strtopQ, adjust for the changed arguments and return
413         value.
414
415 2011-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
416
417         PR libgfortran/47296
418         * io/unix.c (unpack_filename): Return non-zero if the filename passed
419         in is NULL.
420
421 2011-01-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
422
423         PR libgfortran/47154
424         * io/list_read.c (namelist_read): Remove calls to hit_eof to avoid the
425         duplicate calls via next_record.
426
427 \f
428 Copyright (C) 2011 Free Software Foundation, Inc.
429
430 Copying and distribution of this file, with or without modification,
431 are permitted in any medium without royalty provided the copyright
432 notice and this notice are preserved.