[PR67828] don't unswitch on default defs of non-parms
[official-gcc.git] / libgfortran / ChangeLog
blob77030e9fd4bdb617bed4c6658fb6b608d25358d2
1 2015-09-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
3         PR libfortran/67527
4         PR libfortran/67535
5         PR libfortran/67536
6         * io/io.h: Use unsigned values for 31-bit left shifts.
7         * io/unix.c (buf_read): Do not call memcpy() with NULL pointer arg.
8         * io/write.c (nml_write_obj): Likewise.
10 2015-09-05  Janne Blomqvist  <jb@gcc.gnu.org>
12         PR fortran/53379
13         * libgfortran.h (exit_error): New prototype.
14         * runtime/error.c (exit_error): New function.
15         (os_error): Call exit_error instead of exit.
16         (runtime_error): Likewise.
17         (runtime_error_at): Likewise.
18         (internal_error): Likewise.
19         (generate_error): Likewise.
20         (notify_std): Likewise.
21         * runtime/stop.c (error_stop_string): Likewise.
22         (error_stop_numeric): Likewise.
24 2015-09-04  Janne Blomqvist  <jb@gcc.gnu.org>
26         * io/unix.h (delete_file): Remove prototype.
27         * io/unix.c (delete_file): Remove function.
28         * io/close.c (st_close): Replace delete_file and unlink with
29         remove.
30         * io/open.c (already_open): Replace unlink with remove.
32 2015-09-02  Janne Blomqvist  <jb@gcc.gnu.org>
34         PR libfortran/67414
35         * io/write.c (gfc_itoa): Move to runtime/string.c.
36         * libgfortran.h (show_backtrace): Make arg bool.
37         (gfc_itoa): New prototype.
38         * runtime/backtrace.c (struct mystate): Change type of try_simple
39         field, add in_signal_handler field.
40         (error_callback): Print out error number, or if not in a signal
41         handler, the error message.
42         (show_backtrace): Change type of arg, change initialization of
43         struct mystate.
44         (backtrace): Call show_backtrace with correct arg type.
45         * runtime/compile_options.c (backtrace_handler): Call with correct
46         arg type.
47         * runtime/error.c (sys_abort): Likewise.
48         (gf_strerror): Handle newlocale() failure.
49         * runtime/string.c (gfc_itoa): Function moved here from
50         io/write.c.
52 2015-08-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
54         PR libfortran/47571
55         * acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Reinstate.
56         * configure.ac: Call LIBGFOR_GTHREAD_WEAK again.
57         * config.h.in: Regenerate.
58         * configure: Regenerate.
60 2015-08-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
62         PR libfortran/47571
63         * acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Remove.
64         (LIBGFOR_CHECK_WEAKREF): New test.
65         * configure.ac: Call LIBGFOR_CHECK_WEAKREF instead of
66         LIBGFOR_GTHREAD_WEAK.
67         * config.h.in: Regenerate.
68         * configure: Regenerate.
69         * intrinsics/system_clock.c: Use SUPPORTS_WEAKREF instead of
70         SUPPORTS_WEAK and GTHREAD_USE_WEAK.
72 2015-08-29 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
74         PR libgfortran/67367
75         * io/unix.c (buf_read): Check for error condition and if found
76         return the error code.
78 2015-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
80         * acinclude.m4: Remove LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT.
81         * configure.ac: Remove checks for strcasestr, execl, close,
82         getrlimit, readlink, getppid, powl, erfl, j0l, j1l, y0l, y1l,
83         tgammal, and lgammal.
84         * config.h.in: Regenerate.
85         * configure: Regenerate.
87 2015-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
89         * io/unix.c (min): Remove unused macro.
91 2015-08-28  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
93         PR fortran/53668
94         * intrinsics/malloc.c: Adapt comments.
96 2015-08-28  James Greenhalgh  <james.greenhalgh@arm.com>
98         * configure.ac: Auto-detect newlib function support unless we
99         know there are issues when configuring for a host.
100         * configure: Regenerate.
102 2015-08-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
104         PR fortran/29600
105         * Makefile.am: Add generated/shape_i{1,2}.c
106         * Makefile.in: Regenerate.
107         * generated/shape_i1.c: New generated file.
108         * generated/shape_i2.c: New generated file.
109         * generated/shape_i4.c: Regenerate.
110         * generated/shape_i8.c: Regenerate.
111         * generated/shape_i16.c: Regenerate.
112         * gfortran.map (GFORTRAN_1.7): Add _gfortran_shape_{1,2}.
113         * m4/shape.m4: Fix parameter type.
115 2015-08-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
117         * libgfortran.h (show_variables): Remove prototype.
118         * runtime/environ.c (print_spaces, var_source, show_integer,
119         show_boolean, show_sep, show_string): Remove functions.
120         * runtime/main.c (init): Remove dead code.
122 2015-08-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
124         * io/unit.c (get_internal_unit): Make default sign mode unspecified.
125         (init_units): Make default sign mode unspecified.
127 2015-08-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
129         * libgfortran.h (check_buffered): Remove unused prototype.
131 2015-08-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
133         PR libfortran/57496
134         * io/write_float.def: Use built-in type-generic functions defined
135         by libgfortran.h for isfinite, isnan, and signbit.
137 2015-08-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
139         PR libfortran/54572
140         * Makefile.am (libgfortran_la_LDFLAGS): Link in libbacktrace.
141         (AM_CPPFLAGS): Add libbacktrace directories to include paths.
142         * Makefile.in: Regenerate.
143         * aclocal.m4: Regenerate.
144         * config.h.in: Regenerate.
145         * configure: Regenerate.
146         * configure.ac: Remove checks for strtok_r, wait, execve, pipe,
147         and dup2. Remove call to GCC_CHECK_UNWIND_GETIPINFO.
148         * libgfortran.h (full_exe_path, find_addr2line, backtrace): Remove
149         prototypes.
150         (show_backtrace): Add prototype.
151         * runtime/backtrace.c: Rework file entirely.
152         * runtime/compile_options.c (backtrace_handler): Rename backtrace
153         to show_backtrace.
154         (maybe_find_addr2line): Remove function.
155         (set_options): Remove call to maybe_find_addr2line.
156         * runtime/error.c (sys_abort): Rename backtrace to show_backtrace.
157         * runtime/main.c (store_exe_path): Empty function body.
158         (full_exe_path, gfstrtok_r, find_addr2line): Remove functions.
159         (cleanup): Don't free removed variables.
160         * runtime/minimal.c (full_exe_path): Remove function.
161         (set_args): Don't set exe_path.
163 2015-08-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
165         PR libfortran/62296
166         * intrinsics/execute_command_line.c (EXEC_INVALIDCOMMAND): New
167         error code.
168         (cmdmsg_values): New error message.
169         (set_cmdstat): Rework runtime error.
170         (execute_command_line): Handle invalid command line error status.
172 2015-08-10  Steven G. Kargl  <kargl@gcc.gnu.org>
174         PR libfortran/67140
175         * intrinsics/mvbits.c: Fix build for platforms without c_int128_t.
177 2015-08-10  Steven G. Kargl  <kargl@gcc.gnu.org>
179         PR libfortran/67140
180         * gfortran.map: Add _gfortran_mvbits_i16.
181         * intrinsics/mvbits.c: Generate mvbits for c_int128_t.
183 2015-08-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
185         PR libfortran/66936
186         * io/unix.c (__MINGW32__): Undefine HAVE_UMASK.
188 2015-08-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
190         PR libfortran/66458
191         * runtime/main.c (init): Only call set_fpu() if requested by user.
193 2015-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
195         * runtime/compile_options.c (set_options): Fix typos.
197 2015-08-04  Uros Bizjak  <ubizjak@gmail.com>
199         * config/fpu-387.h (get_fpu_trap_exceptions): Add temporary variable
200         to improve generated code.
202 2015-08-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
204         PR fortran/64022
205         * ieee/ieee_exceptions.F90: Support all real kinds.
206         * ieee/ieee_arithmetic.F90: Likewise.
207         * ieee/ieee_helper.c (ieee_class_helper_10,
208         ieee_class_helper_16): New functions
209         * gfortran.map (GFORTRAN_1.7): Add entries.
211 2015-07-29  Uros Bizjak  <ubizjak@gmail.com>
213         PR libgfortran/66650
214         * libgfortran.h (GFC_DTYPE_SIZE_MASK): Rewrite to avoid
215         "left shift of negative value" warning.
217 2015-07-14  Janne Blomqvist  <jb@gcc.gnu.org>
219         PR libfortran/66861
220         * io/unix.c (compare_file_filename): Verify that u->filename is
221         non-NULL before strcmp.
222         (find_file0): Likewise.
224 2015-07-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
226         PR libfortran/40267
227         * Makefile.am: Remove libgfortranbegin targets.
228         * Makefile.in: Regenerate.
229         * fmain.c: Remove.
231 2015-04-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>
233         * acinclude.m4 (GTHREAD_USE_WEAK): Define as 0 for *-*-musl*.
234         * configure: Regenerate.
236 2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
238         PR libgfortran/65234
239         * io/format.c (parse_format_list): Set the seen_dd flag in all
240         cases where a data descriptor has been seen.
242 2015-04-21 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
244         PR libgfortran/56743
245         * io/list_read.c (CASE_SEPARATORS): Add case for '!'.
246         (is_separator): Add condition for '!'.
247         (eat_separator): Use notify_std to warn or errord if '!' is
248         encountered before a proper separator.
250 2015-04-14 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
252         PR libgfortran/65089
253         * io/format.h (free_format): New function to free memory
254         allocated for building format error messages.
255         * io/format.c (format_error): Add checks before freeing memory
256         to avoid potential segfaults and free formatting data when
257         needed on error conditions. Always allocate and NULL terminate
258         the string.
259         * io/transfer.c (st_read_done, st_write_done): Use new
260         free_format function to clean up memory allocations when done.
262 2015-03-28 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
264         PR libgfortran/65596
265         * io/transfer.c (data_transfer_init): If in namelist mode and
266         delimiter is not specified, set it to DELIM_QUOTE, independent
267         of -std.
268         * io/unit.c (init_units): Set flags.delim to the correct
269         initial value of DELIM_UNSPECIFIED.
271 2015-03-25 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
273         PR libgfortran/65541
274         * io/write.c (nml_write_obj): Convert '+' to '%' before emitting
275         object names in namelists.
277 2015-03-22 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
279         PR libgfortran/59513
280         * io/transfer.c (data_transfer_init): Do not error for
281         -std=legacy.
283 2015-03-16 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
285         PR libgfortran/64432
286         * intrinsics/system_clock.c (system_clock4, system_clock8):
287         Cleanup some whitespace.
289 2015-03-11  Thomas Schwinge  <thomas@codesourcery.com>
291         * caf/single.c (caf_runtime_error): Revert 2014-11-28 changes.
292         * runtime/minimal.c (STRERR_MAXSZ): Don't define.
293         (runtime_error_at, sys_abort): Bring more in line with the
294         non-LIBGFOR_MINIMAL code.
295         (runtime_warning_at, internal_error): New functions.
297 2015-03-11  Janne Blomqvist  <jb@gcc.gnu.org>
299         PR libfortran/65200
300         * io/open.c (new_unit): Use gf_strerror rather than hardcoding
301         error messages for different errno values.
302         * io/unix.c (regular_file2): Handle EPERM in addition to EACCES.
304 2015-03-10  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
305             Tobias Burnus  <burnus@net-b.de>
307         * caf/libcaf.h (_gfortran_caf_sync_memory): New prototype.
308         * caf/single.c (_gfortran_caf_sync_memory): Implement.
309         (_gfortran_caf_sync_all, _gfortran_caf_sync_image): Add
310         __asm__ __volatile___ ("":::"memory").
312 2015-02-10 Jerry DeLisle  <jvdelisle@gcc.gnu.org>
314         PR libgfortran/57822
315         * io/write_float.def (output_float): Apply fix of previous patch
316         to correctly calculate the exponent number of digits and take
317         care of wide character output.
319 2015-02-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
321         PR libgfortran/57822
322         * io/write_float.def (output_float): If doing g0 editing and
323         exponent is zero, do not emit exponent.
325 2015-02-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
327         PR libgfortran/60956
328         * io/fbuf.c (fbuf_flush_list): New function that only flushes
329         if current fbuf position exceeds a limit.
330         * io/fbuf.h: Declare the new function.
331         * io/io.h (enum unit_mode): Add two new modes.
332         * io/list_read.c (list_formatted_read_scalar): Call new function.
333         * io/write.c: Include fbuf.h. (list_formatted_write_scalar):
334         Call new function.
336 2015-01-24  Janne Blomqvist  <jb@gcc.gnu.org>
338         PR libfortran/64770
339         * io/unit.c (filename_from_unit): Check that u->filename != NULL
340         before calling strdup.
342 2015-01-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
344         PR libgfortran/61933
345         * io/inquire.c (inquire_via_unit): Set existing to true for
346         any negative unit that is currently connected and any positive
347         units within range of KIND=4 value.  The unit value for any out
348         of range case that may occur if the user is using a KIND=8 will
349         have been set to -2 which is reserved and can never be opened,
350         and therefore the unit does not exist.
352 2015-01-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
354         PR libgfortran/61933
355         * io/inquire.c (inquire_via_unit): Set existing to true if a
356         gfc_unit stucture was found for the given unit number.
357         * runtime/error.c (translate_error): Add case for
358         LIBERROR_INQUIRE_INTERNAL_UNIT.
360 2015-01-05  Jakub Jelinek  <jakub@redhat.com>
362         Update copyright years.
364 2015-01-02  Tobias Burnus  <burnus@net-b.de>
366         * caf/single.c (_gfortran_caf_co_reduce): New function.
367         * caf/libcaf.h (_gfortran_caf_co_reduce): New prototype.
369 Copyright (C) 2015 Free Software Foundation, Inc.
371 Copying and distribution of this file, with or without modification,
372 are permitted in any medium without royalty provided the copyright
373 notice and this notice are preserved.