gcc/
[official-gcc.git] / libgfortran / ChangeLog
blob6cf885f947f533ec64f9046ede9f2a211281cc05
1 2014-01-20  Jerry DeLisle  <jvdelisle@gcc.gnu>
2             Dominique d'Humieres  <dominiq@lps.ens.fr>
4         * io/write_float.def (output_float): Remove inadvertent test
5         code from previous patch.
7 2014-01-19  Jerry DeLisle  <jvdelisle@gcc.gnu>
8             Dominique d'Humieres  <dominiq@lps.ens.fr>
10         PR libfortran/59771
11         PR libfortran/59774
12         PR libfortran/59836
13         * io/write_float.def (output_float): Fix wrong handling of the
14         Fw.0 format.
15         (output_float_FMT_G_): Fixes rounding issues with -m32.
17 2014-01-11  Jerry DeLisle  <jvdelisle@gcc.gnu>
18             Dominique d'Humieres  <dominiq@lps.ens.fr>
19             Steven G. Kargl  <kargl@gcc.gnu.org>
21         PR libfortran/59700
22         PR libfortran/59764
23         * io/io.h (struct st_parameter_dt): Assign expanded_read flag to
24         unused bit. Define new variable line_buffer_pos.
25         * io/list_read.c (free_saved, next_char, l_push_char,
26         read_logical, read_real): Replace use of item_count with
27         line_buffer_pos for line_buffer look ahead.
28         (read_logical, read_integer, parse_real, read_real, check_type):
29         Adjust location of free_line to after generating error messages
30         to retain the correct item count for the message. 
32 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
34         Update copyright years
36 2013-12-18  Steven G. Kargl  <kargl@gcc.gnu.org>
38         * io/read.c (read_f): Convert assert to runtime error.
40 2013-12-17  Andreas Tobler  <andreast@gcc.gnu.org>
42         * io/unix.c (tempfile_open): Only use the needed flag O_CLOEXEC.
44 2013-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu>
46         PR libfortran/59419
47         * io/file_pos.c (st_rewind): Do proper return after
48         generate_error.
49         * io/open.c (edit_modes): Move action code inside block that
50         checks for library ok. (new_unit): Do cleanup after error.
51         (st_open): Do proper return after error.
52         * io/transfer.c (data_transfer_init): Likewise.
53         
54 2013-12-11  Tobias Burnus  <burnus@net-b.de>
56         * config/fpu-387.h (sigill_hdlr, get_fpu_rounding_mode): Emit SSE
57         instructions when __SSE_MATH__ is defined.
59 2013-12-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
61         * intrinsics/erfc_scaled.c (_M_2_SQRTPI): Define if missing.
63 2013-12-01  Uros Bizjak  <ubizjak@gmail.com>
65         PR libfortran/59313
66         * intrinsics/erfc_scaled.c (erfc_scaled_r16): Also provide for
67         quadruple precision long double variant.
69 2013-11-20  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
71         * intrinsics/erfc_scaled.c (erfc_scaled_r16): Don't define if
72         __float128 is not available.
74 2013-11-20  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
76         PR libfortran/49024
77         * intrinsics/erfc_scaled.c (erfc_scaled_r16): New function.
78         * intrinsics/erfc_scaled_inc.c: Do not provide quadruple
79         precision variant.
81 2013-11-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
83         PR libfortran/51828
84         * intrinsics/unpack_generic.c (unpack_internal): Let the compiler
85         know that dim > 0 to avoid warnings.
87 2013-11-15  Janne Blomqvist  <jb@gcc.gnu.org>
88             Jerry DeLisle  <jvdelisle@gcc.gnu.org>
90         PR fortran/59108
91         * io/unix.c (regular_file): Don't set O_CREAT when opening a file
92         read-only with unknown status. Mask out O_CREAT when falling back
93         to opening read-only if ACTION= is not set and read-write fails.
95 2013-11-15  Steve Ellcey  <sellcey@mips.com>
97         * configure.ac: Do not define HAVE_STRTOLD.
98         * configure: Regenerate.
100 2013-11-10  Janne Blomqvist  <jb@gcc.gnu.org>
102         * configure.ac: Check presence of mkostemp.
103         * io/unix.c (set_close_on_exec): New function.
104         (tempfile_open): Use mkostemp and O_CLOEXEC if available, fallback
105         to calling set_close_on_exec.
106         (regular_file): Add O_CLOEXEC to flags if defined.
107         (open_external): Call set_close_on_exec if O_CLOEXEC is not
108         defined.
109         * config.h.in: Regenerated.
110         * configure: Regenerated.
111         * Makefile.in: Regenerated.
112         * aclocal.m4: Regenerated.
114 2013-10-01  Tobias Burnus  <burnus@net-b.de>
116         PR fortran/55469
117         * io/list_read (parse_repeat, read_integer, read_character,
118         parse_real, read_real, check_type, list_formatted_read_scalar,
119         finish_list_read): Call list_free.
121 2013-09-20  Alan Modra  <amodra@gmail.com>
123         * configure: Regenerate.
125 2013-07-23  Uros Bizjak  <ubizjak@gmail.com>
127         * config/fpu-387.h (get_fpu_rounding_mode): Read rounding mode
128         from SSE mxcsr register on x86_64.
130 2013-07-21  Ondřej Bílka  <neleai@seznam.cz>
132         * io/transfer.c: Fix comment typos.
134 2013-07-21  Tobias Burnus  <burnus@net-b.de>
136         PR fortran/35862
137         * config/fpu-387.h (set_fpu_rounding_mode,
138         get_fpu_rounding_mode): Add missing _ to fix build.
140 2013-07-21  Tobias Burnus  <burnus@net-b.de>
141             Uros Bizjak  <ubizjak@gmail.com>
143         PR fortran/35862
144         * libgfortran.h (set_fpu_rounding_mode,
145         get_fpu_rounding_mode): New prototypes.
146         * config/fpu-387.h (set_fpu_rounding_mode,
147         get_fpu_rounding_mode): New functions.
148         * config/fpu-aix.h (set_fpu_rounding_mode,
149         get_fpu_rounding_mode): Ditto.
150         * config/fpu-generic.h (set_fpu_rounding_mode,
151         get_fpu_rounding_mode): Ditto.
152         * config/fpu-glibc.h (set_fpu_rounding_mode,
153         get_fpu_rounding_mode): Ditto.
154         * config/fpu-sysv.h (set_fpu_rounding_mode,
155         get_fpu_rounding_mode): Ditto.
156         * configure.ac: Check for fp_rnd and fp_rnd_t.
157         * io/io.h (enum unit_round): Use GFC_FPE_* for the value.
158         * io/read.c (convert_real): Set FP ronding mode.
159         * Makefile.in: Regenerate.
160         * aclocal.m4: Regenerate.
161         * config.h.in: Regenerate.
162         * configure: Regenerate.
164 2013-06-24  Tobias Burnus  <burnus@net-b.de>
166         * configure.ac: Check for fp_except and fp_except_t.
167         * config/fpu-sysv.h: Conditionally use either type.
168         * configure: Regenerate.
169         * config.h.in: Regenerate.
171 2013-06-21  Eric Botcazou  <ebotcazou@adacore.com>
173         * config/fpu-sysv.h (get_fpu_except_flags): Fix typo.
175 2013-06-20  Uros Bizjak  <ubizjak@gmail.com>
177         * config/fpu-387.h (_FPU_MASK_ALL): New.
178         (_FPU_EX_ALL): Ditto.
179         (set_fpu): Use fstcw to store x87 FPU control word. Use fnclex to
180         clear stalled exception flags.  Correctly clear stalled SSE
181         exception flags.  Simplify code.
182         (get_fpu_except_flags): Simplify code.
184 2013-06-20  Tobias Burnus  <burnus@net-b.de>
186         PR fortran/57633
187         * io/list_read.c (next_char, eat_separator): Don't set EOL for \r.
189 2013-06-19  Uros Bizjak  <ubizjak@gmail.com>
191         * config/fpu-387.h: Use __asm__ and __volatile__ consistently.
192         (get_fpu_except_flags): Initialize result.
194 2013-06-17  Tobias Burnus  <burnus@net-b.de>
196         * libgfortran.h (compile_options_t) Add fpe_summary.
197         (get_fpu_except_flags): New prototype.
198         * runtime/compile_options.c (set_options, init_compile_options):
199         Handle fpe_summary.
200         * runtime/stop.c (report_exception): New function.
201         (stop_numeric, stop_numeric_f08, stop_string, error_stop_string,
202         error_stop_numeric): Call it.
203         * config/fpu-387.h (get_fpu_except_flags): New function.
204         * config/fpu-aix.h (get_fpu_except_flags): New function.
205         * config/fpu-generic.h (get_fpu_except_flags): New function.
206         * config/fpu-glibc.h (get_fpu_except_flags): New function.
207         * config/fpu-sysv.h (get_fpu_except_flags): New function.
208         * configure.ac: Check for fpxcp.h.
209         * configure: Regenerate.
210         * config.h.in: Regenerate.
212 2013-06-01  Tobias Burnus  <burnus@net-b.de>
214         PR fortran/57496
215         * io/write_float.def (ISFINITE2Q, ISFINITE2, ISFINITE2L, ISFINITE,
216         SIGNBIT2Q, SIGNBIT2, SIGNBIT2L, SIGNBIT, ISNAN2Q, ISNAN2, ISNAN2L,
217         ISNAN): New macros.
218         (output_float_FMT_G_,WRITE_FLOAT): Use them.
220 2013-05-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
222         * acinclude.m4 (libgfor_cv_have_as_needed): Check for -z ignore, too.
223         * configure: Regenerate.
225 2013-05-05  David Edelsohn  <dje.gcc@gmail.com>
227         * caf/libcaf.h (_gfortran_caf_critical): Add a prototype.
228         (_gfortran_caf_end_critical): Same.
230 2013-05-04  David Edelsohn  <dje.gcc@gmail.com>
232         * runtime/environ.c: Include unistd.h.
233         * runtime/pause.c: Test HAVE_UNISTD_H.
234         * runtime/stop.c: Same.
235         * io/open.c: Same.
236         * io/unix.c: Same.
237         * io/read.c (si_max): Protect declaration of value.
239 2013-04-29  Janne Blomqvist  <jb@gcc.gnu.org>
241         * intrinsics/system_clock (gf_gettime_mono): Use variable
242         resolution for fractional seconds argument.
243         (system_clock_4): Simplify, update for gf_gettime_mono change.
244         (system_clock_8): Likewise.
246 2013-04-29  Janne Blomqvist  <jb@gcc.gnu.org>
248         PR fortran/56981
249         * io/transfer.c (next_record_w_unf): First fix head marker, then
250         write tail.
251         (next_record): Call flush_if_unbuffered.
252         * io/unix.c (struct unix_stream): Add field unbuffered.
253         (flush_if_unbuffered): New function.
254         (fd_to_stream): New argument.
255         (open_external): Fix fd_to_stream call.
256         (input_stream): Likewise.
257         (output_stream): Likewise.
258         (error_stream): Likewise.
259         * io/unix.h (flush_if_unbuffered): New prototype.
261 2013-04-28  Janne Blomqvist  <jb@gcc.gnu.org>
263         * intrinsics/system_clock.c (system_clock_4): Fix sign error in
264         Windows version.
266 2013-04-15  Tobias Burnus  <burnus@net-b.de>
268         * list_read.c (finish_separator): Initialize variable.
270 2013-04-15  Janne Blomqvist  <jb@gcc.gnu.org>
272         PR fortran/56919
273         * intrinsics/time_1.h: Check __CYGWIN__ in addition to
274         __MINGW32__.
275         * intrinsics/system_clock.c (GF_CLOCK_MONOTONIC): Check
276         _POSIX_MONOTONIC_CLOCK as well.
277         (system_clock_4): Use GetTickCount on Windows.
278         (system_clock_8): Use QueryPerformanceCounter and
279         QueryPerformanceCounterFrequency on Windows.
281 2013-04-04  Tobias Burnus  <burnus@net-b.de>
283         PR fortran/56810
284         * io/list_read.c (check_type): Fix kind checking for COMPLEX.
286 2013-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
288         PR libfortran/56660
289         * io/list_read.c (nml_read_obj): Do not reset the read error flag
290         inside nml_read_obj. If the read error flag is found set just exit.
291         Fix some whitespace on comments.
292         (nml_read_obj_data): Reset the read error flag before the first call
293         to nml_read_object.
295 2013-03-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
297         PR libfortran/56786
298         * io/list_read.c (nml_parse_qualifier): Remove spurious next_char call
299         when checking for EOF. Use error return mechanism when EOF detected.
300         Do not return false unless parse_err_msg and parse_err_msg_size have
301         been set. Use hit_eof.
302         (nml_get_obj_data): Likewise use the correct error mechanism.
303         * io/transfer.c (hit_eof): Do not set AFTER_ENDFILE if in namelist
304         mode.
306 2013-03-29  Tobias Burnus  <burnus@net-b.de>
308         PR fortran/56737
309         * io/format.c (parse_format_list): Also cache FMT_STRING.
310         (parse_format): Update call.
312 2013-03-29  Tobias Burnus  <burnus@net-b.de>
314         PR fortran/56737
315         * io/format.c (parse_format): With caching, copy
316         dtp->format string.
317         (save_parsed_format): Use dtp->format directy without
318         copying.
320 2013-03-29  Tobias Burnus  <burnus@net-b.de>
322         PR fortran/56735
323         * io/list_read.c (nml_query): Only abort when
324         an error occured.
325         (namelist_read): Add goto instead of falling through.
327 2013-03-25  Tilo Schwarz  <tilo@tilo-schwarz.de>
329         PR libfortran/52512
330         * io/list_read.c (nml_parse_qualifier): To check for a derived type
331         don't use the namelist head element type but the current element type.
332         (nml_get_obj_data): Add current namelist element type to
333         nml_parse_qualifier call.
335 2013-03-24  Tobias Burnus  <burnus@net-b.de>
337         PR fortran/56696
338         * io/list_read.c (read_real): Fix EOF diagnostic.
340 2013-03-20  Tilo Schwarz  <tilo@tilo-schwarz.de>
342         PR libfortran/51825
343         * io/list_read.c (nml_read_obj): Don't end the component loop on a
344         nested derived type, but continue with the next loop iteration.
345         (nml_get_obj_data): Don't move the first_nl pointer further in the
346         list if a qualifier was found.
348 2013-03-20  Tilo Schwarz  <tilo@tilo-schwarz.de>
350         PR libfortran/48618
351         * io/open.c (st_open): Raise error for unit number < 0 only if
352         unit number does not exist already.
354 2013-03-19  Janne Blomqvist  <jb@gcc.gnu.org>
356         * libgfortran.h: Include stdbool.h.
357         (enum try): Remove.
358         (notify_std): Change return type to bool.
359         * intrinsics/chmod.c: Don't include stdbool.h.
360         * intrinsics/execute_command_line.c: Likewise.
361         * io/format.c: Likewise.
362         * io/list_read.c (nml_parse_qualifier): Change return type to bool.
363         (nml_read_obj): Likewise.
364         (nml_get_obj_data): Likewise.
365         * io/transfer.c (read_block_form): Fix comment.
366         (write_buf): Change return type to bool.
367         * io/write.c: Don't include stdbool.h.
368         * io/write_float.def (output_float): Change return type to bool.
369         (output_float_FMT_G_ ## x): Change type of result variable.
370         * runtime/error.c (notify_std): Change return type to bool.
372 2013-03-11  Tobias Burnus  <burnus@net-b.de>
374         * io/transfer.c (read_block_direct): Correct condition.
375         * intrinsics/execute_command_line.c (execute_command_line):
376         Remove dead code for the HAVE_FORK case.
378 2013-02-21  Janne Blomqvist  <jb@gcc.gnu.org>
380         PR libfortran/30162
381         * io/open.c (test_endfile): Call stell only if size != 0.
382         * io/unix.c (raw_tell): Revert r194679.
383         (raw_size): Return size field only for regular files, otherwise 0.
385 2013-02-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
387         PR target/56347
388         * acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_POWF): Remove check for
389         broken powf.
390         * configure.ac (LIBGFOR_CHECK_FOR_BROKEN_POWF): Likewise.
391         * intrinsics/c99_functions.c: Likewise.
392         * configure: Rebuilt.
393         * config.h.in: Rebuilt.
395 2013-02-06  Janus Weil  <janus@gcc.gnu.org>
397         PR fortran/55978
398         * runtime/in_pack_generic.c (internal_pack): Return if base_addr is
399         NULL.
401 2013-01-23  Janne Blomqvist  <jb@gcc.gnu.org>
403         * io/file_pos.c (unformatted_backspace): Use __builtin_bswapXX
404         instead of reverse_memcpy.
405         * io/io.h (reverse_memcpy): Remove prototype.
406         * io/transfer.c (reverse_memcpy): Make static, move towards
407         beginning of file.
408         (bswap_array): New function.
409         (unformatted_read): Use bswap_array to byte swap the data
410         in-place.
411         (unformatted_write): Use a larger temp buffer and bswap_array.
412         (us_read): Use __builtin_bswapXX instead of reverse_memcpy.
413         (write_us_marker): Likewise.
415 2013-01-14  Richard Sandiford  <rdsandiford@googlemail.com>
417         Update copyright years.
419 2013-01-06  Tobias Burnus  <burnus@net-b.de>
421         PR fortran/54678
422         * intrinsics/env.c (get_environment_variable_i8): Don't use
423         uninitialized variable.
425 2013-01-02  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
427         PR libfortran/55818
428         * io/list_read.c (read_real): Do not call hit_eof when EOF can be
429         treated as a value separator.
430         (parse_real): Likewise.
431         (read_logical): Likewise.
432         (read_character): Likewise.
433         (read_complex): Likewise.
435 Copyright (C) 2013-2014 Free Software Foundation, Inc.
437 Copying and distribution of this file, with or without modification,
438 are permitted in any medium without royalty provided the copyright
439 notice and this notice are preserved.