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