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>
13 * io/write_float.def (output_float): Fix wrong handling of the
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>
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>
47 * io/file_pos.c (st_rewind): Do proper return after
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.
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>
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>
77 * intrinsics/erfc_scaled.c (erfc_scaled_r16): New function.
78 * intrinsics/erfc_scaled_inc.c: Do not provide quadruple
81 2013-11-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
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>
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
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>
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>
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>
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>
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):
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>
215 * io/write_float.def (ISFINITE2Q, ISFINITE2, ISFINITE2L, ISFINITE,
216 SIGNBIT2Q, SIGNBIT2, SIGNBIT2L, SIGNBIT, ISNAN2Q, ISNAN2, ISNAN2L,
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.
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>
249 * io/transfer.c (next_record_w_unf): First fix head marker, then
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
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>
273 * intrinsics/time_1.h: Check __CYGWIN__ in addition to
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>
284 * io/list_read.c (check_type): Fix kind checking for COMPLEX.
286 2013-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
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
295 2013-03-31 Jerry DeLisle <jvdelisle@gcc.gnu.org>
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
306 2013-03-29 Tobias Burnus <burnus@net-b.de>
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>
315 * io/format.c (parse_format): With caching, copy
317 (save_parsed_format): Use dtp->format directy without
320 2013-03-29 Tobias Burnus <burnus@net-b.de>
323 * io/list_read.c (nml_query): Only abort when
325 (namelist_read): Add goto instead of falling through.
327 2013-03-25 Tilo Schwarz <tilo@tilo-schwarz.de>
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>
338 * io/list_read.c (read_real): Fix EOF diagnostic.
340 2013-03-20 Tilo Schwarz <tilo@tilo-schwarz.de>
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>
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.
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>
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>
388 * acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_POWF): Remove check for
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>
398 * runtime/in_pack_generic.c (internal_pack): Return if base_addr is
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
408 (bswap_array): New function.
409 (unformatted_read): Use bswap_array to byte swap the data
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>
422 * intrinsics/env.c (get_environment_variable_i8): Don't use
423 uninitialized variable.
425 2013-01-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
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.