PR libstdc++/79486 use lvalues in result_of expressions
[official-gcc.git] / libgfortran / ChangeLog-2015
blob601650d41cda79070dbcee272c88df24a4204148
1 2015-12-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
3         PR libfortran/68987
4         io/format.c (format_error): Remove unneeded memory cleanup.
6 2015-12-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
8         PR libfortran/68867
9         * io/write.c (set_fnode_default): For kind=16, set the decimal precision
10         depending on the platform binary precision, 106 or 113.
12 2015-12-05  Juoko Orava <jouko.orava@iki.fi>
14         PR fortran/50201
15         * io/write_float.def: Avoid marking quadmath_snprintf as an untyped
16         weak reference, which fixing linking with -static.
18 2015-11-26  Tobias Burnus  <burnus@net-b.de>
19             Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
21         * caf/libcaf.h (_gfortran_caf_event_post,
22         _gfortran_caf_event_wait,_gfortran_caf_event_query): New prototypes.
23         * caf/single.c (_gfortran_caf_event_post,
24         _gfortran_caf_event_wait,_gfortran_caf_event_query): Implement.
26 2015-11-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
28         PR libfortran/52251
29         * io/transfer.c (formatted_transfer_scalar_write): Reset skips count.
30         (finalize_transfer): For ADVANCE_NO, emit pending spaces and reset the
31         skip count.
33 2015-11-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
35         * io/write_float.def (output_float): Move block determining
36         room for leading zero to before checkng g0 formatting.
38 2015-09-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
40         PR libfortran/67527
41         PR libfortran/67535
42         PR libfortran/67536
43         * io/io.h: Use unsigned values for 31-bit left shifts.
44         * io/unix.c (buf_read): Do not call memcpy() with NULL pointer arg.
45         * io/write.c (nml_write_obj): Likewise.
47 2015-09-05  Janne Blomqvist  <jb@gcc.gnu.org>
49         PR fortran/53379
50         * libgfortran.h (exit_error): New prototype.
51         * runtime/error.c (exit_error): New function.
52         (os_error): Call exit_error instead of exit.
53         (runtime_error): Likewise.
54         (runtime_error_at): Likewise.
55         (internal_error): Likewise.
56         (generate_error): Likewise.
57         (notify_std): Likewise.
58         * runtime/stop.c (error_stop_string): Likewise.
59         (error_stop_numeric): Likewise.
61 2015-09-04  Janne Blomqvist  <jb@gcc.gnu.org>
63         * io/unix.h (delete_file): Remove prototype.
64         * io/unix.c (delete_file): Remove function.
65         * io/close.c (st_close): Replace delete_file and unlink with
66         remove.
67         * io/open.c (already_open): Replace unlink with remove.
69 2015-09-02  Janne Blomqvist  <jb@gcc.gnu.org>
71         PR libfortran/67414
72         * io/write.c (gfc_itoa): Move to runtime/string.c.
73         * libgfortran.h (show_backtrace): Make arg bool.
74         (gfc_itoa): New prototype.
75         * runtime/backtrace.c (struct mystate): Change type of try_simple
76         field, add in_signal_handler field.
77         (error_callback): Print out error number, or if not in a signal
78         handler, the error message.
79         (show_backtrace): Change type of arg, change initialization of
80         struct mystate.
81         (backtrace): Call show_backtrace with correct arg type.
82         * runtime/compile_options.c (backtrace_handler): Call with correct
83         arg type.
84         * runtime/error.c (sys_abort): Likewise.
85         (gf_strerror): Handle newlocale() failure.
86         * runtime/string.c (gfc_itoa): Function moved here from
87         io/write.c.
89 2015-08-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
91         PR libfortran/47571
92         * acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Reinstate.
93         * configure.ac: Call LIBGFOR_GTHREAD_WEAK again.
94         * config.h.in: Regenerate.
95         * configure: Regenerate.
97 2015-08-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
99         PR libfortran/47571
100         * acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Remove.
101         (LIBGFOR_CHECK_WEAKREF): New test.
102         * configure.ac: Call LIBGFOR_CHECK_WEAKREF instead of
103         LIBGFOR_GTHREAD_WEAK.
104         * config.h.in: Regenerate.
105         * configure: Regenerate.
106         * intrinsics/system_clock.c: Use SUPPORTS_WEAKREF instead of
107         SUPPORTS_WEAK and GTHREAD_USE_WEAK.
109 2015-08-29 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
111         PR libgfortran/67367
112         * io/unix.c (buf_read): Check for error condition and if found
113         return the error code.
115 2015-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
117         * acinclude.m4: Remove LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT.
118         * configure.ac: Remove checks for strcasestr, execl, close,
119         getrlimit, readlink, getppid, powl, erfl, j0l, j1l, y0l, y1l,
120         tgammal, and lgammal.
121         * config.h.in: Regenerate.
122         * configure: Regenerate.
124 2015-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
126         * io/unix.c (min): Remove unused macro.
128 2015-08-28  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
130         PR fortran/53668
131         * intrinsics/malloc.c: Adapt comments.
133 2015-08-28  James Greenhalgh  <james.greenhalgh@arm.com>
135         * configure.ac: Auto-detect newlib function support unless we
136         know there are issues when configuring for a host.
137         * configure: Regenerate.
139 2015-08-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
141         PR fortran/29600
142         * Makefile.am: Add generated/shape_i{1,2}.c
143         * Makefile.in: Regenerate.
144         * generated/shape_i1.c: New generated file.
145         * generated/shape_i2.c: New generated file.
146         * generated/shape_i4.c: Regenerate.
147         * generated/shape_i8.c: Regenerate.
148         * generated/shape_i16.c: Regenerate.
149         * gfortran.map (GFORTRAN_1.7): Add _gfortran_shape_{1,2}.
150         * m4/shape.m4: Fix parameter type.
152 2015-08-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
154         * libgfortran.h (show_variables): Remove prototype.
155         * runtime/environ.c (print_spaces, var_source, show_integer,
156         show_boolean, show_sep, show_string): Remove functions.
157         * runtime/main.c (init): Remove dead code.
159 2015-08-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
161         * io/unit.c (get_internal_unit): Make default sign mode unspecified.
162         (init_units): Make default sign mode unspecified.
164 2015-08-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
166         * libgfortran.h (check_buffered): Remove unused prototype.
168 2015-08-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
170         PR libfortran/57496
171         * io/write_float.def: Use built-in type-generic functions defined
172         by libgfortran.h for isfinite, isnan, and signbit.
174 2015-08-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
176         PR libfortran/54572
177         * Makefile.am (libgfortran_la_LDFLAGS): Link in libbacktrace.
178         (AM_CPPFLAGS): Add libbacktrace directories to include paths.
179         * Makefile.in: Regenerate.
180         * aclocal.m4: Regenerate.
181         * config.h.in: Regenerate.
182         * configure: Regenerate.
183         * configure.ac: Remove checks for strtok_r, wait, execve, pipe,
184         and dup2. Remove call to GCC_CHECK_UNWIND_GETIPINFO.
185         * libgfortran.h (full_exe_path, find_addr2line, backtrace): Remove
186         prototypes.
187         (show_backtrace): Add prototype.
188         * runtime/backtrace.c: Rework file entirely.
189         * runtime/compile_options.c (backtrace_handler): Rename backtrace
190         to show_backtrace.
191         (maybe_find_addr2line): Remove function.
192         (set_options): Remove call to maybe_find_addr2line.
193         * runtime/error.c (sys_abort): Rename backtrace to show_backtrace.
194         * runtime/main.c (store_exe_path): Empty function body.
195         (full_exe_path, gfstrtok_r, find_addr2line): Remove functions.
196         (cleanup): Don't free removed variables.
197         * runtime/minimal.c (full_exe_path): Remove function.
198         (set_args): Don't set exe_path.
200 2015-08-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
202         PR libfortran/62296
203         * intrinsics/execute_command_line.c (EXEC_INVALIDCOMMAND): New
204         error code.
205         (cmdmsg_values): New error message.
206         (set_cmdstat): Rework runtime error.
207         (execute_command_line): Handle invalid command line error status.
209 2015-08-10  Steven G. Kargl  <kargl@gcc.gnu.org>
211         PR libfortran/67140
212         * intrinsics/mvbits.c: Fix build for platforms without c_int128_t.
214 2015-08-10  Steven G. Kargl  <kargl@gcc.gnu.org>
216         PR libfortran/67140
217         * gfortran.map: Add _gfortran_mvbits_i16.
218         * intrinsics/mvbits.c: Generate mvbits for c_int128_t.
220 2015-08-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
222         PR libfortran/66936
223         * io/unix.c (__MINGW32__): Undefine HAVE_UMASK.
225 2015-08-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
227         PR libfortran/66458
228         * runtime/main.c (init): Only call set_fpu() if requested by user.
230 2015-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
232         * runtime/compile_options.c (set_options): Fix typos.
234 2015-08-04  Uros Bizjak  <ubizjak@gmail.com>
236         * config/fpu-387.h (get_fpu_trap_exceptions): Add temporary variable
237         to improve generated code.
239 2015-08-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
241         PR fortran/64022
242         * ieee/ieee_exceptions.F90: Support all real kinds.
243         * ieee/ieee_arithmetic.F90: Likewise.
244         * ieee/ieee_helper.c (ieee_class_helper_10,
245         ieee_class_helper_16): New functions
246         * gfortran.map (GFORTRAN_1.7): Add entries.
248 2015-07-29  Uros Bizjak  <ubizjak@gmail.com>
250         PR libgfortran/66650
251         * libgfortran.h (GFC_DTYPE_SIZE_MASK): Rewrite to avoid
252         "left shift of negative value" warning.
254 2015-07-14  Janne Blomqvist  <jb@gcc.gnu.org>
256         PR libfortran/66861
257         * io/unix.c (compare_file_filename): Verify that u->filename is
258         non-NULL before strcmp.
259         (find_file0): Likewise.
261 2015-07-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
263         PR libfortran/40267
264         * Makefile.am: Remove libgfortranbegin targets.
265         * Makefile.in: Regenerate.
266         * fmain.c: Remove.
268 2015-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>
270         * acinclude.m4 (GTHREAD_USE_WEAK): Define as 0 for *-*-musl*.
271         * configure: Regenerate.
273 2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
275         PR libgfortran/65234
276         * io/format.c (parse_format_list): Set the seen_dd flag in all
277         cases where a data descriptor has been seen.
279 2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
281         PR libgfortran/56743
282         * io/list_read.c (CASE_SEPARATORS): Add case for '!'.
283         (is_separator): Add condition for '!'.
284         (eat_separator): Use notify_std to warn or errord if '!' is
285         encountered before a proper separator.
287 2015-04-14 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
289         PR libgfortran/65089
290         * io/format.h (free_format): New function to free memory
291         allocated for building format error messages.
292         * io/format.c (format_error): Add checks before freeing memory
293         to avoid potential segfaults and free formatting data when
294         needed on error conditions. Always allocate and NULL terminate
295         the string.
296         * io/transfer.c (st_read_done, st_write_done): Use new
297         free_format function to clean up memory allocations when done.
299 2015-03-28 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
301         PR libgfortran/65596
302         * io/transfer.c (data_transfer_init): If in namelist mode and
303         delimiter is not specified, set it to DELIM_QUOTE, independent
304         of -std.
305         * io/unit.c (init_units): Set flags.delim to the correct
306         initial value of DELIM_UNSPECIFIED.
308 2015-03-25 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
310         PR libgfortran/65541
311         * io/write.c (nml_write_obj): Convert '+' to '%' before emitting
312         object names in namelists.
314 2015-03-22 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
316         PR libgfortran/59513
317         * io/transfer.c (data_transfer_init): Do not error for
318         -std=legacy.
320 2015-03-16 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
322         PR libgfortran/64432
323         * intrinsics/system_clock.c (system_clock4, system_clock8):
324         Cleanup some whitespace.
326 2015-03-11  Thomas Schwinge  <thomas@codesourcery.com>
328         * caf/single.c (caf_runtime_error): Revert 2014-11-28 changes.
329         * runtime/minimal.c (STRERR_MAXSZ): Don't define.
330         (runtime_error_at, sys_abort): Bring more in line with the
331         non-LIBGFOR_MINIMAL code.
332         (runtime_warning_at, internal_error): New functions.
334 2015-03-11  Janne Blomqvist  <jb@gcc.gnu.org>
336         PR libfortran/65200
337         * io/open.c (new_unit): Use gf_strerror rather than hardcoding
338         error messages for different errno values.
339         * io/unix.c (regular_file2): Handle EPERM in addition to EACCES.
341 2015-03-10  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
342             Tobias Burnus  <burnus@net-b.de>
344         * caf/libcaf.h (_gfortran_caf_sync_memory): New prototype.
345         * caf/single.c (_gfortran_caf_sync_memory): Implement.
346         (_gfortran_caf_sync_all, _gfortran_caf_sync_image): Add
347         __asm__ __volatile___ ("":::"memory").
349 2015-02-10 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
351         PR libgfortran/57822
352         * io/write_float.def (output_float): Apply fix of previous patch
353         to correctly calculate the exponent number of digits and take
354         care of wide character output.
356 2015-02-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
358         PR libgfortran/57822
359         * io/write_float.def (output_float): If doing g0 editing and
360         exponent is zero, do not emit exponent.
362 2015-02-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
364         PR libgfortran/60956
365         * io/fbuf.c (fbuf_flush_list): New function that only flushes
366         if current fbuf position exceeds a limit.
367         * io/fbuf.h: Declare the new function.
368         * io/io.h (enum unit_mode): Add two new modes.
369         * io/list_read.c (list_formatted_read_scalar): Call new function.
370         * io/write.c: Include fbuf.h. (list_formatted_write_scalar):
371         Call new function.
373 2015-01-24  Janne Blomqvist  <jb@gcc.gnu.org>
375         PR libfortran/64770
376         * io/unit.c (filename_from_unit): Check that u->filename != NULL
377         before calling strdup.
379 2015-01-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
381         PR libgfortran/61933
382         * io/inquire.c (inquire_via_unit): Set existing to true for
383         any negative unit that is currently connected and any positive
384         units within range of KIND=4 value.  The unit value for any out
385         of range case that may occur if the user is using a KIND=8 will
386         have been set to -2 which is reserved and can never be opened,
387         and therefore the unit does not exist.
389 2015-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
391         PR libgfortran/61933
392         * io/inquire.c (inquire_via_unit): Set existing to true if a
393         gfc_unit stucture was found for the given unit number.
394         * runtime/error.c (translate_error): Add case for
395         LIBERROR_INQUIRE_INTERNAL_UNIT.
397 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
399         Update copyright years.
401 2015-01-02  Tobias Burnus  <burnus@net-b.de>
403         * caf/single.c (_gfortran_caf_co_reduce): New function.
404         * caf/libcaf.h (_gfortran_caf_co_reduce): New prototype.
406 Copyright (C) 2015 Free Software Foundation, Inc.
408 Copying and distribution of this file, with or without modification,
409 are permitted in any medium without royalty provided the copyright
410 notice and this notice are preserved.