]> git.ipfire.org Git - thirdparty/gcc.git/blob - libgfortran/ChangeLog
re PR libfortran/77393 (Revision r237735 changed the behavior of F0.0)
[thirdparty/gcc.git] / libgfortran / ChangeLog
1 2016-08-31 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2
3 PR libgfortran/77393
4 * io/write.c (kind_from_size): New function to calculate required buffer
5 size based on kind type. (select_buffer, select_string): Use new
6 function. (write_float_0, write_real, write_real_g0, write_complex):
7 Adjust calls to pass parameters needed by new function.
8
9 2016-08-31 Jerry DeLisle <jvdelisle@gcc.gnu.org>
10 Paul Thomas <pault@gcc.gnu.org>
11
12 PR libgfortran/48298
13 * gfortran.map : Flag _st_set_nml_dtio_var and
14 _gfortran_transfer_derived.
15 * io/format.c (format_lex): Detect DTIO formatting.
16 (parse_format_list): Parse the DTIO format.
17 (next_format): Include FMT_DT.
18 * io/format.h : Likewise. Add structure 'udf' to structure
19 'fnode' to carry the IOTYPE string and the 'vlist'.
20 * io/io.h : Add prototypes for the two types of DTIO subroutine
21 and a typedef for gfc_class. Also, add to 'namelist_type'
22 fields for the pointer to the DTIO procedure and the vtable.
23 Add fields to struct st_parameter_dt for pointers to the two
24 types of DTIO subroutine. Add to gfc_unit DTIO specific fields.
25 (internal_proto): Add prototype for 'read_user_defined' and
26 'write_user_defined'.
27 * io/list_read.c (check_buffers): Use the 'current_unit' field.
28 (unget_char): Likewise.
29 (eat_spaces): Likewise.
30 (list_formatted_read_scalar): For case BT_CLASS, call the DTIO
31 procedure.
32 (nml_get_obj_data): Likewise when DTIO procedure is present,.
33 * io/transfer.c : Export prototypes for 'transfer_derived' and
34 'transfer_derived_write'.
35 (unformatted_read): For case BT_CLASS, call the DTIO procedure.
36 (unformatted_write): Likewise.
37 (formatted_transfer_scalar_read): Likewise.
38 (formatted_transfer_scalar_write: Likewise.
39 (transfer_derived): New function.
40 (data_transfer_init): Set last_char if no child_dtio.
41 (finalize_transfer): Return if child_dtio set.
42 (st_write_done): Add condition for child_dtio not set.
43 Add extra arguments for st_set_nml_var prototype.
44 (set_nml_var): New function that contains the contents of the
45 old version of st_set_nml_var. Also sets the 'dtio_sub' and
46 'vtable' fields of the 'nml' structure.
47 (st_set_nml_var): Now just calls set_nml_var with 'dtio_sub'
48 and 'vtable' NULL.
49 (st_set_nml_dtio_var): New function that calls set_nml_var.
50 * io/unit.c (get_external_unit): If the found unit child_dtio
51 is non zero, don't do any mutex locking/unlocking. Just
52 return the unit.
53 * io/unix.c (tempfile_open): Revert to C style comment.
54 * io/write.c (list_formatted_write_scalar): Do the DTIO call.
55 (nml_write_obj): Add BT_CLASS and do the DTIO call.
56
57 2016-08-29 Nathan Sidwell <nathan@acm.org>
58
59 * configure.ac (nvptx-*): Hardwire newlib.
60 * configure: Rebuilt.
61
62 2016-08-19 Janne Blomqvist <jb@gcc.gnu.org>
63
64 * intrinsics/random.c (xor_keys): New array with "secret" keys.
65 (scramble_seed): XOR given seed with xor_keys array rather than
66 shuffling bytes.
67 (unscramble_seed): Remove function.
68 (random_seed_i4): Use new scramble_seed.
69 (random_seed_i8): Likewise.
70
71 2016-08-19 Janne Blomqvist <jb@gcc.gnu.org>
72
73 * intrinsics/random.c (master_init): New variable.
74 (init_rand_state): Move below getosrandom (), maybe initialize
75 master_state.
76 (random_seed_i4): If called with no arguments, set master_init to
77 false, and reinitialize. If called with PUT=, set master_init to
78 true.
79 (random_seed_i8): Likewise.
80
81 2016-08-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
82
83 * intrinsics/random.c: Include <stdlib.h>.
84
85 2016-08-11 Janne Blomqvist <jb@gcc.gnu.org>
86
87 * intrinsics/random.c: Replace KISS with xorshift1024* using
88 per-thread state.
89 * runtime/main.c (init): Don't call random_seed_i4.
90
91 2016-07-22 Andre Vehreschild <vehre@gcc.gnu.org>
92
93 * caf/libcaf.h: Add parameter stat to caf_get() and
94 caf_send()'s function prototypes.
95 * caf/single.c (_gfortran_caf_get): Implement reporting
96 error using stat instead of abort().
97 (_gfortran_caf_send): Same.
98 (_gfortran_caf_sendget): Use NULL for stat when calling
99 caf_send().
100
101 2016-06-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
102
103 PR libgfortran/48852
104 * io/write.c: Cleaned up whitespace.
105 (write_d, write_e, write_f, write_es, write_en): Use new helper
106 function write_float_0.
107 (write_float_0): New helper function.
108 (get_precision, select_buffer, select_string, write_float_string): New
109 helper functions used in remaining float writing functions.
110 Helper function write_float_string now contains code for writing
111 to kind=4 character internal units.
112 (write_real): Modified to establish working buffers at this level
113 and to use new helper functions.
114 (write_real_g0): Likewise modified.
115 (write_complex): Likewise modified. Gets both float strings before
116 output so that final lengths can be determined which allows right
117 justifying the complex number with no intervening spaces.
118 * io/write_float.def (build_float_string): Renamed from previosly
119 output_float, modified to use buffers passed in from higher functions,
120 builds a null terminated string of the floating point value. Character
121 kind=4 code eliminated.
122 (write_infnan): Likewise modified to use incoming buffers and eliminate
123 kind=4 related code.
124 (OUTPUT_FLOAT_FMT_G): Deleted, functionality moved into FORMAT_FLOAT.
125 (FORMAT_FLOAT): Renamed macro from WRITE_FLOAT. Use build_float_string.
126 (get_float_string): Renamed from write_float, uses FORMAT_FLOAT macro.
127 Buffer allocation removed, now at higher level.
128
129 2016-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
130
131 PR libgfortran/71123
132 * io/list_read (eat_spaces): Eat '\r' as part of spaces.
133
134 2016-04-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
135
136 PR libgfortran/70684
137 * io/list_read (check_buffers): Add '\r' to check for end of line.
138
139 2016-03-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
140 Dominique d'Humieres <dominiq@lps.ens.fr>
141
142 PR libgfortran/70235
143 * io/write_float.def: Fix PF format for negative values of the scale
144 factor.
145
146 2016-03-28 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
147
148 * caf/libcaf.h: caf_stop_numeric and caf_stop_str prototype.
149 * caf/single.c: _gfortran_caf_stop_numeric and
150 _gfortran_caf_stop_str implementation.
151
152 2016-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
153
154 PR libgfortran/69456
155 * io/list_read.c (read_real): If digit is missing from exponent issue
156 an error. (parse_real): Likewise and adjusted error message to clarify
157 it is part of a complex number.
158 (nml_read_obj): Bump item count and add comment that this is used to
159 identify which item in a namelist read has a problem.
160
161 2016-02-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
162
163 PR libgfortran/69651
164 * io/list_read.c (push_char4): Fix the pointer usage for xrealloc.
165
166 2016-02-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
167
168 PR libgfortran/69651
169 * io/list_read.c: Entire file trailing spaces removed.
170 (CASE_SEPARATORS): Remove '!'.
171 (is_separator): Add namelist mode as condition with '!'.
172 (push_char): Remove un-needed memset. (push_char4): Likewise and remove
173 'new' pointer. (eat_separator): Remove un-needed use of notify_std.
174 (read_logical): If '!' bang encountered when not in namelist mode got
175 bad_logical to give an error. (read_integer): Likewise reject '!'.
176 (read_character): Remove condition testing c = '!' which is now inside
177 the is_separator macro. (parse_real): Reject '!' unless in namelist mode.
178 (read_complex): Reject '!' unless in namelist mode. (read_real): Likewise
179 reject '!'.
180
181 2016-02-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
182
183 PR libgfortran/69668
184 * io/list_read.c (read_character): Remove code related to DELIM_NONE.
185
186 2016-01-23 John David Anglin <danglin@gcc.gnu.org>
187
188 PR libfortran/68744
189 * runtime/backtrace.c: Include gthr.h.
190 (show_backtrace): Use __gthread_active_p() to determine whether threads
191 are active. Return if lbstate is NULL.
192
193 2016-01-15 Jakub Jelinek <jakub@redhat.com>
194
195 * intrinsics/execute_command_line.c (set_cmdstat): Use "%s", msg
196 instead of msg to avoid -Wformat-security warning.
197
198 2016-01-04 Jakub Jelinek <jakub@redhat.com>
199
200 Update copyright years.
201 \f
202 Copyright (C) 2016 Free Software Foundation, Inc.
203
204 Copying and distribution of this file, with or without modification,
205 are permitted in any medium without royalty provided the copyright
206 notice and this notice are preserved.