Introduce gimple_eh_dispatch
[official-gcc.git] / libgfortran / ChangeLog
blobcf04401982ec8ace44068e68884eb503e5835ca8
1 2014-10-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
3         * ieee/ieee_helper.c (ieee_is_finite_*, ieee_is_nan_*,
4         ieee_is_negative_*, ieee_is_normal_*, ieee_copy_sign_*,
5         ieee_unordered_*, ieee_logb_*, ieee_rint_*, ieee_scalb_*,
6         ieee_rem_*, ieee_next_after_*): Remove functions.
7         * gfortran.map (GFORTRAN_1.5): Remove corresponding symbols.
9 2014-10-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
11         PR libgfortran/63460
12         * io/unit.c (init_units): Initialize the DELIM flag to
13         UNSPECIFIED for the STDIN unit so that the flag is
14         correctly set later.
16 2014-10-01  Janne Blomqvist  <jb@gcc.gnu.org>
18         * intrinsics/pack_generic.c (pack_s_internal): Fix
19         -Wmaybe-uninitialized warning.
20         * m4/unpack.m4 (unpack0_'rtype_code`): Likewise.
21         (unpack1_'rtype_code`): Likewise.
22         * generated/unpack_*.m4: Regenerated.
24 2014-09-30  Janne Blomqvist  <jb@gcc.gnu.org>
26         * configure.ac (AM_CFLAGS): Add
27         -Werror=implicit-function-declaration.
28         * Makefile.in: Regenerated.
29         * aclocal.m4: Regenerated.
30         * configure: Regenerated.
32 2014-09-25  Tobias Burnus  <burnus@net-b.de>
34         * caf/libcaf.h (_gfortran_caf_co_broadcast): New prototype.
35         * caf/single.c (_gfortran_caf_co_broadcast): New.
37 2014-09-18  Janne Blomqvist  <jb@gcc.gnu.org>
39         PR libfortran/62768
40         * io/inquire.c (inquire_via_unit): Use gfc_unit.filename also when
41         HAVE_TTYNAME{_R} is not defined.
43 2014-09-17  Janne Blomqvist  <jb@gcc.gnu.org>
45         PR libfortran/62768
46         * io/io.h (gfc_unit): Store C string for the filename.
47         * io/close.c (st_close): Use gfc_unit.filename.
48         * io/inquire.c (inquire_via_unit): Likewise.
49         * io/open.c (new_unit): Likewise.
50         (already_open): Likewise, unlink file before freeing filename.
51         * io/unit.c (init_units): Likewise.
52         (close_unit_1): Likewise.
53         (filename_from_unit): Likewise.
54         * io/unix.c (compare_file_filename): Likewise.
55         (find_file0): Likewise.
56         (delete_file): Likewise.
58 2014-09-10  Janne Blomqvist  <jb@gcc.gnu.org>
60         * io/transfer.c (read_block_form): Fix pad status check (found by
61         Thomas Schwinge with -Wlogical-not-parentheses).
63 2014-08-31  Tobias Burnus  <burnus@net-b.de>
65         * caf/libcaf.h (_gfortran_caf_send, _gfortran_caf_get,
66         _gfortran_caf_sendget): Update prototype.
67         * caf/single.c (_gfortran_caf_send, _gfortran_caf_get,
68         _gfortran_caf_sendget): Handle may_require_tmp.
70 2014-08-20  Steven G. Kargl  <kargl@gcc.gnu.org>
72         PR libgfortran/62188
73         * m4/bessel.m4: Avoid indexing off the end of an array.
74         * generated/bessel_r10.c: Regenerated.
75         * generated/bessel_r16.c: Ditto.
76         * generated/bessel_r4.c: Ditto.
77         * generated/bessel_r8.c: Ditto.
79 2014-08-14  Tobias Burnus  <burnus@net-b.de>
81         * caf/libcaf.h (caf_register_t): Update for critical.
82         (_gfortran_caf_critical, _gfortran_caf_end_critical): Remove.
83         (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
84         * caf/single.c (_gfortran_caf_register): Handle locking
85         variables.
86         (_gfortran_caf_sendget): Re-name args for consistency.
87         (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
89 2014-08-04  Jakub Jelinek  <jakub@redhat.com>
91         * runtime/memory.c (xmallocarray): Avoid division for the common case.
93 2014-07-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
95         PR libgfortran/61632
96         * io/format.c (format_error): Avoid invalid string pointer by
97         using the fortran string length values to generate error string.
98         (parse_format): Allocate the null terminator for the format
99         string.
101 2014-07-12  Tobias Burnus  <burnus@net-b.de>
103         * caf/libcaf.h (_gfortran_caf_atomic_define,
104         _gfortran_caf_atomic_ref, _gfortran_caf_atomic_op,
105         _gfortran_caf_atomic_cas): New prototypes.
106         * caf/single.c (_gfortran_caf_atomic_define,
107         _gfortran_caf_atomic_ref, _gfortran_caf_atomic_op,
108         _gfortran_caf_atomic_cas): New functions.
110 2014-07-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
112         * config/fpu-*.h (get_fpu_rounding_mode, set_fpu_rounding_mode,
113         support_fpu_rounding_mode): Clean up, mark unreachable code as such.
115 2014-07-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
117         * libgfortran.h (support_fpu_underflow_control,
118         get_fpu_underflow_mode, set_fpu_underflow_mode): New prototypes.
119         * config/fpu-*.h (support_fpu_underflow_control,
120         get_fpu_underflow_mode, set_fpu_underflow_mode):
121         New functions.
122         * ieee/ieee_arithmetic.F90: Support underflow control.
124 2014-07-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
126         * config/fpu-sysv.h (get_fpu_rounding_mode): Use FP_RN, FP_RP,
127         FP_RM, FP_RZ unconditionally.
128         (set_fpu_rounding_mode): Likewise.
130 2014-07-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
132         * libgfortran.h: Assume __GNUC__.
134 2014-07-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
136         * runtime/stop.c: Use C11 _Noreturn.
137         * libgfortran.h: Use C11 _Noreturn in prototypes.
138         Move REALPART, IMAGPART and COMPLEX_ASSIGN macros...
139         * intrinsics/c99_functions.c: ... here.
141 2014-07-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
143         * config/fpu-387.h, config/fpu-aix.h, config/fpu-sysv.h,
144         config/fpu-glibc.h: Use static assertions.
146 2014-07-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
148         * configure, config.h.in: Regenerate.
149         * config/fpu-sysv.h: Include <assert.h>.
151 2014-07-02  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
153         * config/fpu-glibc.h: Fix comment about FE_DENORMAL.
155 2014-07-02  Uros Bizjak  <ubizjak@gmail.com>
157         * configure.host (ieee_flags): Add -mieee for alpha*.
159         * config/fpu-glibc.h (support_fpu_rounding_mode): Correctly handle
160         GFC_FPE_UPWARD, GFC_FPE_DOWNWARD and GFC_FPE_TOWARDZERO.
161         * config/fpu-aix.h (support_fpu_rounding_mode): Ditto.
163 2014-06-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
165         * config/fpu-387.h (my_fenv_t): Amend structure so it also works
166         on mingw32.
168 2014-06-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
170         PR libgfortran/61640
171         * io/list_read.c (next_char_internal): Adjust the read length to
172         a single wide character. (eat_spaces): Add missing paren.
173         * io/unix.c (mem_read4): Use the correct mem_alloc function for
174         wide character internal reads.
176 2014-06-28  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
178         PR fortran/29383
179         * configure.host: Add checks for IEEE support, rework priorities.
180         * configure.ac: Define IEEE_SUPPORT, check for fpsetsticky and
181         fpresetsticky.
182         * configure: Regenerate.
183         * Makefile.am: Build new ieee files, install IEEE_* modules.
184         * Makefile.in: Regenerate.
185         * gfortran.map (GFORTRAN_1.6): Add new symbols.
186         * libgfortran.h (get_fpu_trap_exceptions, set_fpu_trap_exceptions,
187         support_fpu_trap, set_fpu_except_flags, support_fpu_flag,
188         support_fpu_rounding_mode, get_fpu_state, set_fpu_state): New
189         prototypes.
190         * config/fpu-*.h (get_fpu_trap_exceptions,
191         set_fpu_trap_exceptions, support_fpu_trap, set_fpu_except_flags,
192         support_fpu_flag, support_fpu_rounding_mode, get_fpu_state,
193         set_fpu_state): New functions.
194         * ieee/ieee_features.F90: New file.
195         * ieee/ieee_exceptions.F90: New file.
196         * ieee/ieee_arithmetic.F90: New file.
197         * ieee/ieee_helper.c: New file.
199 2014-06-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
201         PR libgfortran/61499
202         * io/list_read.c (eat_spaces): Use a 'for' loop instead of
203         'while' loop to skip the loop if there are no bytes left in the
204         string. Only seek if actual spaces can be skipped.
206 2014-06-25  Tobias Burnus  <burnus@net-b.de>
208         * caf/single.c (assign_char4_from_char1, assign_char1_from_char4,
209         convert_type): New static functions.
210         (_gfortran_caf_get, _gfortran_caf_send): Use them.
212 2014-06-19  Tobias Burnus  <burnus@net-b.de>
214         * caf/single.c (_gfortran_caf_co_sum, _gfortran_caf_co_max,
215         _gfortran_caf_co_min): Fix stat setting.
217 2014-06-17  Tobias Burnus  <burnus@net-b.de>
219         * caf/libcaf.h (gfc_descriptor_t): New typedef.
220         (caf_vector_t): Update.
221         (_gfortran_caf_co_sum, _gfortran_caf_co_max, _gfortran_caf_co_min):
222         Remove vector-subscript argument.
223         (_gfortran_caf_co_send, _gfortran_caf_co_get,
224         _gfortran_caf_co_sendget): New.
225         * caf/single.c (_gfortran_caf_co_sum, _gfortran_caf_co_max,
226         _gfortran_caf_co_min): Remove vector-subscript argument.
227         (_gfortran_caf_co_send, _gfortran_caf_co_get,
228         _gfortran_caf_co_sendget): New.
230 2014-06-17  Janne Blomqvist  <jb@gcc.gnu.org>
232         * libgfortran.h (xmallocarray): New prototype.
233         * runtime/memory.c (xmallocarray): New function.
234         (xcalloc): Check for nonzero separately instead of multiplying.
235         * generated/*.c: Regenerated.
236         * intrinsics/cshift0.c (cshift0): Call xmallocarray instead of
237         xmalloc.
238         * intrinsics/eoshift0.c (eoshift0): Likewise.
239         * intrinsics/eoshift2.c (eoshift2): Likewise.
240         * intrinsics/pack_generic.c (pack_internal): Likewise.
241         (pack_s_internal): Likewise.
242         * intrinsics/reshape_generic.c (reshape_internal): Likewise.
243         * intrinsics/spread_generic.c (spread_internal): Likewise.
244         (spread_internal_scalar): Likewise.
245         * intrinsics/string_intrinsics_inc.c (string_trim): Likewise.
246         (string_minmax): Likewise.
247         * intrinsics/transpose_generic.c (transpose_internal): Likewise.
248         * intrinsics/unpack_generic.c (unpack_internal): Likewise.
249         * io/list_read.c (nml_touch_nodes): Don't cast xmalloc return value.
250         * io/transfer.c (st_set_nml_var): Call xmallocarray instead of
251         xmalloc.
252         * io/unit.c (get_internal_unit): Likewise.
253         (filename_from_unit): Don't cast xmalloc return value.
254         * io/write.c (nml_write_obj): Likewise, formatting.
255         * m4/bessel.m4 (bessel_jn_r'rtype_kind`): Call xmallocarray
256         instead of xmalloc.
257         (besse_yn_r'rtype_kind`): Likewise.
258         * m4/cshift1.m4 (cshift1): Likewise.
259         * m4/eoshift1.m4 (eoshift1): Likewise.
260         * m4/eoshift3.m4 (eoshift3): Likewise.
261         * m4/iforeach.m4: Likewise.
262         * m4/ifunction.m4: Likewise.
263         * m4/ifunction_logical.m4 (name`'rtype_qual`_'atype_code):
264         Likewise.
265         * m4/in_pack.m4 (internal_pack_'rtype_ccode`): Likewise.
266         * m4/matmul.m4 (matmul_'rtype_code`): Likewise.
267         * m4/matmull.m4 (matmul_'rtype_code`): Likewise.
268         * m4/pack.m4 (pack_'rtype_code`): Likewise.
269         * m4/reshape.m4 (reshape_'rtype_ccode`): Likewise.
270         * m4/shape.m4 (shape_'rtype_kind`): Likewise.
271         * m4/spread.m4 (spread_'rtype_code`): Likewise.
272         (spread_scalar_'rtype_code`): Likewise.
273         * m4/transpose.m4 (transpose_'rtype_code`): Likewise.
274         * m4/unpack.m4 (unpack0_'rtype_code`): Likewise.
275         (unpack1_'rtype_code`): Likewise.
276         * runtime/convert_char.c (convert_char1_to_char4): Likewise.
277         (convert_char4_to_char1): Simplify.
278         * runtime/environ.c (init_unformatted): Call xmallocarray instead
279         of xmalloc.
280         * runtime/in_pack_generic.c (internal_pack): Likewise.
282 2014-06-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
284         PR libfortran/60468
285         * configure.ac: Include <math.h> when checking for fp_except_t
286         and fp_rnd_t types.
287         * configure: Regenerate.
289 2014-06-08  Janne Blomqvist  <jb@gcc.gnu.org>
291         PR libfortran/56981
292         * io/unix.h (struct stream_vtable): Add new member function,
293         markeor.
294         (smarkeor): New inline function.
295         (flush_if_unbuffered): Remove prototype.
296         * io/unix.c (raw_markeor): New function.
297         (raw_vtable): Initialize markeor member.
298         (buf_markeor): New function.
299         (buf_vtable): Initialize markeor member.
300         (mem_vtable): Likewise.
301         (mem4_vtable): Likewise.
302         (flush_if_unbuffered): Remove function.
303         * io/transfer.c (next_record): Call smarkeor instead of
304         flush_if_unbuffered.
306 2014-05-27  Uros Bizjak  <ubizjak@gmail.com>
308         * intrinsics/getcwd.c: Include stdlib.h.
310 2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
312         * libgfortran.h (xrealloc): New prototype.
313         * runtime/memory.c (xrealloc): New function.
314         * io/fbuf.c (fbuf_alloc): Use xrealloc.
315         * io/list_read.c (push_char_default): Likewise.
316         (push_char4): Likewise.
318 2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
320         PR libfortran/61310
321         * intrinsics/ctime.c (strctime): Rename to gf_ctime, use snprintf
322         instead of strftime.
323         (fdate): Use gf_ctime.
324         (fdate_sub): Likewise.
325         (ctime): Likewise.
326         (ctime_sub): Likewise.
328 2014-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
330         PR libgfortran/55117
331         * io/list_read.c (extended_look_ahead): New helper function to
332         scan the namelist name and look for matches with the new '+'
333         extended type parent indicator.  (str_comp_extended): New
334         helper function to compare the namelist name with the varname
335         namelist. (find_nml_name): Use the new helper functions to match
336         the extended type varnames.
338 2014-05-23  Jerry DeLisle  <jvdelisle@gcc.gnu>
340         PR libfortran/61173
341         * io/list_read.c (eat_spaces): If the next character pointed to
342         is a space, don't seek, must be at the end.
344 2014-05-23  Hans-Peter Nilsson  <hp@axis.com>
346         * configure.ac [with_newlib] (HAVE_STRNLEN, HAVE_STRNDUP): Define.
347         * configure: Regenerate.
349 2014-05-23  Janne Blomqvist  <jb@gcc.gnu.org>
351         PR libfortran/60324
352         * runtime/string.c: Include stdlib.h.
354 2014-05-22  Janne Blomqvist  <jb@gcc.gnu.org>
356         PR libfortran/60324
357         * config.h.in: Regenerated.
358         * configure: Regenerated.
359         * configure.ac (AC_CHECK_FUNCS_ONCE): Check for strnlen and
360         strndup.
361         * libgfortran.h (fc_strdup): New prototype.
362         * runtime/string.c (strnlen): New fallback function.
363         (strndup): New fallback function.
364         (fc_strdup): New function.
365         * io/close.c (st_close): Use fc_strdup.
366         * io/open.c (new_unit): Likewise.
367         (already_open): Likewise.
368         * io/unit.c (filename_from_unit): Likewise.
369         * io/unix.c (unpack_filename): Remove function.
370         (regular_file): Rename to regular_file2, add path argument.
371         (regular_file): New function calling regular_file2.
372         (compare_file_filename): Use fc_strdup.
373         (find_file): Likewise.
374         (delete_file): Likewise.
375         (file_exists): Likewise.
376         (file_size): Likewise.
377         (inquire_sequential): Likewise.
378         (inquire_direct): Likewise.
379         (inquire_formatted): Likewise.
380         (inquire_access): Likewise.
381         * io/unix.h (unpack_filename): Remove prototype.
382         * runtime/main.c (please_free_exe_path_when_done): Change type to
383         bool.
384         (store_exe_path): Use malloced buffer, grow as needed.
386 2014-05-17  Jerry DeLisle  <jvdelisle@gcc.gnu>
388         PR libfortran/52539
389         * io/io.h (gfc_unit): New function pointers *next_char_fn_ptr
390         and *push_char_fn_ptr.
391         *io/list_read.c (next_char): Create macro with this name to call
392         the new function pointer. Split the original next_char function
393         into three new functions. (next_char_default, next_char_internal,
394         next_char_utf8): New functions. (push_char): Create macro with
395         this name to call new function pointer. Split the original
396         push_char into three new functions. (push_char_default,
397         push_char_internal, push_char4): New functions. (set_workers):
398         New function to initilize the function pointers depending on the
399         type of IO to be performed. (list_formatted_read_scalar): Use
400         set_workers function. (finish_list_read): Likewise.
401         (namelist_read): Likewise.
402         (nml_get_obj_data): Use push_char_default.
404 2014-05-16  Janne Blomqvist  <jb@gcc.gnu.org>
406         PR libfortran/61187
407         * io/unix.c (raw_close): Check if s->fd is -1.
408         (fd_to_stream): Check return value of fstat(), handle error.
410 2014-05-12  Janne Blomqvist  <jb@gcc.gnu.org>
412         PR libfortran/61035
413         * intrinsics/getcwd.c (getcwd_i4_sub): Avoid potentially large
414         stack allocation, avoid extra copying in the common case.
416 2014-05-12  Janne Blomqvist  <jb@gcc.gnu.org>
418         * configure.ac (AM_CFLAGS): Use -std=gnu11.
419         (CFLAGS): Likewise.
420         * configure: Regenerated.
422 2014-05-11  Tobias Burnus  <burnus@net-b.de>
424         * caf/libcaf.h (_gfortran_caf_num_images): Change type of
425         second argument to int.
426         * caf/mpi.c (_gfortran_caf_num_images): Ditto.
427         * caf/single.c (_gfortran_caf_num_images): Ditto.
429 2014-05-08  Tobias Burnus  <burnus@net-b.de>
431         * caf/libcaf.h (caf_vector_t, _gfortran_caf_co_sum,
432         _gfortran_caf_co_min, _gfortran_caf_co_max): Declare
433         * caf/single.c
435 2014-05-06  Jerry DeLisle  <jvdelisle@gcc.gnu>
437         PR libfortran/61049
438         * io/list_read.c (list_formatted_read_scalar): Use eat_separator
439         and delete extraneous code.
441 2014-04-30  Tobias Burnus  <burnus@net-b.de>
443         * caf/libcaf.h (_gfortran_caf_this_image, _gfortran_caf_num_images):
444         New prototypes.
445         (_gfortran_caf_init): Change prototype.
446         (mpi_token_t): New typedef.
447         (TOKEN): New define.
448         * caf/mpi.c (_gfortran_caf_this_image, _gfortran_caf_num_images):
449         New functions.
450         (_gfortran_caf_init): Update.
451         (_gfortran_caf_finalize, _gfortran_caf_register,
452         _gfortran_caf_deregister): Use mpi_token_t.
453         * caf/single.c (_gfortran_caf_this_image, _gfortran_caf_num_images):
454         New functions.
455         (_gfortran_caf_init): Update.
456         (_gfortran_caf_finalize, _gfortran_caf_register,
457         _gfortran_caf_deregister): Use mpi_token_t, simplify.
459 2014-04-26  Jerry DeLisle  <jvdelisle@gcc.gnu>
461         PR libfortran/52539
462         * io/list_read.c: Add uchar typedef. (push_char4): New function
463         to save kind=4 character. (next_char_utf8): New function to read
464         a single UTF-8 encoded character value. (read_chracter): Update
465         to use the new functions for reading UTF-8 strings.
466         (list_formatted_read_scalar): Update to handle list directed
467         reads of UTF-8 strings. (nml_read_obj): Likewise update for
468         UTF-8 strings in namelists.
469         * io/write.c (nml_write_obj): Add kind=4 character support for
470         namelist writes.
472 2014-04-24  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
474         * configure.ac: Quote usage of ac_cv_func_clock_gettime in if test.
475         * configure: Regenerate.
477 2014-04-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
479         * config/fpu-387.h [__sun__ && __svr4__]: Remove SSE execution
480         check.
482 2014-04-11  Jerry DeLisle  <jvdelisle@gcc.gnu>
484         PR libfortran/60810
485         io/unit.c (is_trim_ok): If internal unit is array, do not trim.
487 2014-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu>
489         PR libfortran/60148
490         * io/transfer.c (data_transfer_init): If std= was specified, set
491         delim status to DELIM_NONE of no other was specified.
493 2014-03-18  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
495         * configure.ac: Check for presence of fcntl.
496         * configure: Regenerate.
497         * config.h.in: Regenerate.
498         * io/unix.c (set_close_on_exec): Check for HAVE_FCNTL.
500 2014-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu>
502         PR libfortran/48600
503         * io/list_read.c (list_formatted_read_scalar): Do not use
504         eat_separator. Explicitly set the comma and end-of-line flags.
505         Check for END condition from finish_separator.
507 2014-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu>
509         PR libfortran/58324
510         * io/list_read.c (finish_list_read): Read one character to check
511         for the end of the file.  If it is the end, then issue the file
512         end error message.  If not, use eat_line to reach the end
513         without giving error.  The next attempt to read will then
514         issue the error as described above.
516 2014-03-12  Jerry DeLisle  <jvdelisle@gcc.gnu>
518         PR libfortran/38199
519         * io/read.c (read_decimal): Quickly skip spaces to avoid calls
520         to next_char.
521         * io/unit.c (is_trim_ok): New helper function to check various
522         conditions to see if its OK to trim the internal unit string.
523         (get_internal_unit): Use LEN_TRIM to shorten selected internal
524         unit strings for optimizing READ. Enable this optimization for
525         formatted READ.
526         * io/list_read.c (finish_list_read): Don't call eat_line for
527         internal units.
529 2014-03-08  Jerry DeLisle  <jvdelisle@gcc.gnu>
531         PR libfortran/38199
532         * io/list_read.c (next_char): Mark unlikely error checks.
533         (eat_spaces): For character array reading, skip ahead over
534         spaces rather than call next_char multiple times.
536 2014-03-08  Tobias Burnus  <burnus@net-b.de>
538         * libgfortran.h (unlikely, likely): Add usage comment.
540 2014-03-08  Dominique d'Humieres  <dominiq@lps.ens.fr>
542         PR libgfortran/60128
543         * io/write_float.def (output_float): Remove unused variable
544         nzero_real. Replace a double space with a single one.
545         (determine_en_precision): Fix wrong handling of the EN format.
547 2014-03-03  Jerry DeLisle  <jvdelisle@gcc.gnu>
549         PR libfortran/60148
550         * io/inquire.c (inquire_via_unit): In the case of
551         DELIM_UNSPECIFIED set inquire return string to "NONE".
552         * io/list_read.c (read_character): In the case of DELIM_NONE and
553         namelists, complete the character read using the namelist
554         variable length.
555         * io/open.c (new_unit): Don't set delim status to none if not
556         specified so that DELIM_UNSPECIFIED can be used later.
557         * io/transfer.c (data_transfer_init): For namelist I/O, if the
558         unit delim status is unspecified set the current status to quote.
559         Otherwise, set current status to the unit status.
560         * io/unit.c (get_internel_unit, init_unit): Remember to set
561         flags_delim initially to DELIM_UNSPECIFIED so defaults come out
562         correctly.
563         * io/write.c (write_character): Add a new function argument
564         "mode" to signify that raw output is to be used vs output with
565         delimiters. If the mode is set to DELIM (1) proceed with
566         delimiters. (list_formatted_write_scalar): Write the separator
567         only if a delimiter was previously specified. Update the call to
568         write_character with the mode argument given.
569         (namelist_write_newline): Use the mode argument. (nml_write_obj):
570         Use the mode argument. Remove use of tmp_delim. Write the
571         semi-colon or comma correctly only when needed with using
572         delimiters. Cleanup whitespace.
573         (namelist_write): If delim is not specified in namelist I/O,
574         default to using quotes. Get rid of the tmp_delim variable and
575         use the new mode argument in write_character.
577 2014-02-21  Tobias Burnus  <burnus@net-b.de>
579         PR fortran/60286
580         * libgfortran/io/inquire.c (yes, no): New static const char vars.
581         (inquire_via_unit): Use them. Use OPEN mode instead of using
582         POSIX's access to query about write=, read= and readwrite=.
584 2014-01-20  Jerry DeLisle  <jvdelisle@gcc.gnu>
585             Dominique d'Humieres  <dominiq@lps.ens.fr>
587         * io/write_float.def (output_float): Remove inadvertent test
588         code from previous patch.
590 2014-01-19  Jerry DeLisle  <jvdelisle@gcc.gnu>
591             Dominique d'Humieres  <dominiq@lps.ens.fr>
593         PR libfortran/59771
594         PR libfortran/59774
595         PR libfortran/59836
596         * io/write_float.def (output_float): Fix wrong handling of the
597         Fw.0 format.
598         (output_float_FMT_G_): Fixes rounding issues with -m32.
600 2014-01-11  Jerry DeLisle  <jvdelisle@gcc.gnu>
601             Dominique d'Humieres  <dominiq@lps.ens.fr>
602             Steven G. Kargl  <kargl@gcc.gnu.org>
604         PR libfortran/59700
605         PR libfortran/59764
606         * io/io.h (struct st_parameter_dt): Assign expanded_read flag to
607         unused bit. Define new variable line_buffer_pos.
608         * io/list_read.c (free_saved, next_char, l_push_char,
609         read_logical, read_real): Replace use of item_count with
610         line_buffer_pos for line_buffer look ahead.
611         (read_logical, read_integer, parse_real, read_real, check_type):
612         Adjust location of free_line to after generating error messages
613         to retain the correct item count for the message.
615 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
617         Update copyright years
619 Copyright (C) 2013-2014 Free Software Foundation, Inc.
621 Copying and distribution of this file, with or without modification,
622 are permitted in any medium without royalty provided the copyright
623 notice and this notice are preserved.