aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/ChangeLog
blob: 184bf3d80924bf905af04c21f485d46ab1bd5c7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
2015-03-30 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/59513
	* io/transfer.c (data_transfer_init): Do not error for
	-std=legacy.

2015-03-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/60956
	Backport from mainline
	* io/fbuf.c (fbuf_flush_list): New function that only flushes
	if current fbuf position exceeds a limit.
	* io/fbuf.h: Declare the new function.
	* io/io.h (enum unit_mode): Add two new modes.
	* io/list_read.c (list_formatted_read_scalar): Call new function.
	* io/write.c: Include fbuf.h. (list_formatted_write_scalar):
	Call new function.

2014-12-19  Release Manager

	* GCC 4.8.4 released.

2014-10-20  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/63589
	* configure.ac: Check for strtok_r.
	* runtime/main.c (gfstrtok_r): Fallback implementation of
	strtok_r.
	(find_addr2line): Use strtok_r to split PATH.
	* config.h.in: Regenerated.
	* configure: Regenerated.

2014-08-20  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR libgfortran/62188
	* m4/bessel.m4: Avoid indexing off the end of an array.
	* generated/bessel_r10.c: Regenerated.
	* generated/bessel_r16.c: Ditto.
	* generated/bessel_r4.c: Ditto.
	* generated/bessel_r8.c: Ditto.

2014-07-31  Janne Blomqvist  <jb@gcc.gnu.org>

	Backport from mainline
	CVE-2014-5044
        * libgfortran.h (xmallocarray): New prototype.
        * runtime/memory.c (xmallocarray): New function.
        (xcalloc): Check for nonzero separately instead of multiplying.
        * generated/*.c: Regenerated.
        * intrinsics/cshift0.c (cshift0): Call xmallocarray instead of
        xmalloc.
        * intrinsics/eoshift0.c (eoshift0): Likewise.
        * intrinsics/eoshift2.c (eoshift2): Likewise.
        * intrinsics/pack_generic.c (pack_internal): Likewise.
        (pack_s_internal): Likewise.
        * intrinsics/reshape_generic.c (reshape_internal): Likewise.
        * intrinsics/spread_generic.c (spread_internal): Likewise.
        (spread_internal_scalar): Likewise.
        * intrinsics/string_intrinsics_inc.c (string_trim): Likewise.
        (string_minmax): Likewise.
        * intrinsics/transpose_generic.c (transpose_internal): Likewise.
        * intrinsics/unpack_generic.c (unpack_internal): Likewise.
        * io/list_read.c (nml_touch_nodes): Don't cast xmalloc return value.
        * io/transfer.c (st_set_nml_var): Call xmallocarray instead of
        xmalloc.
        * io/unit.c (get_internal_unit): Likewise.
        (filename_from_unit): Don't cast xmalloc return value.
        * io/write.c (nml_write_obj): Likewise, formatting.
        * m4/bessel.m4 (bessel_jn_r'rtype_kind`): Call xmallocarray
        instead of xmalloc.
        (besse_yn_r'rtype_kind`): Likewise.
        * m4/cshift1.m4 (cshift1): Likewise.
        * m4/eoshift1.m4 (eoshift1): Likewise.
        * m4/eoshift3.m4 (eoshift3): Likewise.
        * m4/iforeach.m4: Likewise.
        * m4/ifunction.m4: Likewise.
        * m4/ifunction_logical.m4 (name`'rtype_qual`_'atype_code):
        Likewise.
        * m4/in_pack.m4 (internal_pack_'rtype_ccode`): Likewise.
        * m4/matmul.m4 (matmul_'rtype_code`): Likewise.
        * m4/matmull.m4 (matmul_'rtype_code`): Likewise.
        * m4/pack.m4 (pack_'rtype_code`): Likewise.
        * m4/reshape.m4 (reshape_'rtype_ccode`): Likewise.
        * m4/shape.m4 (shape_'rtype_kind`): Likewise.
        * m4/spread.m4 (spread_'rtype_code`): Likewise.
        (spread_scalar_'rtype_code`): Likewise.
        * m4/transpose.m4 (transpose_'rtype_code`): Likewise.
        * m4/unpack.m4 (unpack0_'rtype_code`): Likewise.
        (unpack1_'rtype_code`): Likewise.
        * runtime/convert_char.c (convert_char1_to_char4): Likewise.
        (convert_char4_to_char1): Simplify.
        * runtime/environ.c (init_unformatted): Call xmallocarray instead
        of xmalloc.
        * runtime/in_pack_generic.c (internal_pack): Likewise.

2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>

	Backport from mainline
	PR libfortran/61310
	* intrinsics/ctime.c (strctime): Rename to gf_ctime, use snprintf
	instead of strftime.
	(fdate): Use gf_ctime.
	(fdate_sub): Likewise.
	(ctime): Likewise.
	(ctime_sub): Likewise.

2014-05-25  Janne Blomqvist  <jb@gcc.gnu.org>

	Backport from trunk.
	PR libfortran/61187
	* io/unix.c (raw_close): Check if s->fd is -1.
	(fd_to_stream): Check return value of fstat(), handle error.

2014-05-22  Release Manager

	* GCC 4.8.3 released.

2014-05-03  Janne Blomqvist  <jb@gcc.gnu.org>

	Backport from 4.9
	PR libfortran/56919
	* intrinsics/system_clock.c (GF_CLOCK_MONOTONIC): Check
	_POSIX_MONOTONIC_CLOCK as well.

2014-04-12  Jerry DeLisle  <jvdelisle@gcc.gnu>

	Backport from mainline
	PR libfortran/60810
	* io/unit.c (is_trim_ok): If internal unit is array, do not trim.

2014-04-04  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	Backport from mainline
	2013-11-15  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
	* configure: Regenerate.

2014-03-15  Dominique d'Humieres  <dominiq@lps.ens.fr>

	Backport from mainline
	PR libgfortran/60128
	* io/write_float.def (output_float): Remove unused variable
	nzero_real. Replace a double space with a single one.
	(determine_en_precision): Fix wrong handling of the EN format.

2014-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu>

	Backport from mainline
	PR libfortran/58324
	PR libfortran/38199
	* io/list_read.c (finish_list_read): Read one character to check
	for the end of the file.  If it is the end, then issue the file
	end error message.  If not, use eat_line to reach the end
	without giving error.  The next attempt to read will then
	issue the error as described above.
	* io/read.c (read_decimal): Quickly skip spaces to avoid calls
	to next_char.
	* io/unit.c (is_trim_ok): New helper function to check various
	conditions to see if its OK to trim the internal unit string.
	(get_internal_unit): Use LEN_TRIM to shorten selected internal
	unit strings for optimizing READ. Enable this optimization for
	formatted READ.

2014-02-21  Jerry DeLisle  <jvdelisle@gcc.gnu>
	    Dominique d'Humieres  <dominiq@lps.ens.fr>
	    Steven G. Kargl  <kargl@gcc.gnu.org>

	Backport from mainline
	PR libfortran/59700
	PR libfortran/59764
	* io/io.h (struct st_parameter_dt): Assign expanded_read flag to
	unused bit. Define new variable line_buffer_pos.
	* io/list_read.c (free_saved, next_char, l_push_char,
	read_logical, read_real): Replace use of item_count with
	line_buffer_pos for line_buffer look ahead.
	(read_logical, read_integer, parse_real, read_real, check_type):
	Adjust location of free_line to after generating error messages
	to retain the correct item count for the message. 

2014-02-15  Jerry DeLisle  <jvdelisle@gcc.gnu>
	    Dominique d'Humieres  <dominiq@lps.ens.fr>

	Backport from mainline
	PR libfortran/59771
	PR libfortran/59774
	PR libfortran/59836
	* io/write_float.def (output_float): Fix wrong handling of the
	Fw.0 format.
	(output_float_FMT_G_): Fixes rounding issues with -m32.

2013-10-16  Release Manager

	* GCC 4.8.2 released.

2013-10-04  Tobias Burnus  <burnus@net-b.de>

	PR fortran/55469
	* io/list_read (parse_repeat, read_integer, read_character,
	parse_real, read_real, check_type, list_formatted_read_scalar,
	finish_list_read): Call list_free.

2013-06-21  Uros Bizjak  <ubizjak@gmail.com>

	Backport from mainline
	2013-06-20  Uros Bizjak  <ubizjak@gmail.com>

	* config/fpu-387.h (_FPU_MASK_ALL): New.
	(_FPU_EX_ALL): Ditto.
	(set_fpu): Use fstcw to store x87 FPU control word. Use fnclex to
	clear stalled exception flags.  Correctly clear stalled SSE
	exception flags.  Simplify code.

	Backport from mainline
	2013-06-19  Uros Bizjak  <ubizjak@gmail.com>

	* config/fpu-387.h: Use __asm__ and __volatile__ consistently.

2013-05-31  Release Manager

	* GCC 4.8.1 released.

2013-04-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	Backport from mainline:
	2013-03-20  Tilo Schwarz  <tilo@tilo-schwarz.de>

	PR libfortran/51825
	* io/list_read.c (nml_read_obj): Don't end the component loop on a
	nested derived type, but continue with the next loop iteration.
	(nml_get_obj_data): Don't move the first_nl pointer further in the
	list if a qualifier was found.

2013-04-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	Backport from mainline:

	PR libfortran/56786
	* io/list_read.c (nml_parse_qualifier): Remove spurious next_char call
	when checking for EOF. Use error return mechanism when EOF detected.
	Do not return FAILURE unless parse_err_msg and parse_err_msg_size have
	been set. Use hit_eof.
	(nml_get_obj_data): Likewise use the correct error mechanism.
	* io/transfer.c (hit_eof): Do not set AFTER_ENDFILE if in namelist
	mode.

2013-04-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	Backport from mainline:
	2013-03-25  Tilo Schwarz  <tilo@tilo-schwarz.de>

	PR libfortran/52512
	* io/list_read.c (nml_parse_qualifier): To check for a derived type
	don't use the namelist head element type but the current element type.
	(nml_get_obj_data): Add current namelist element type to
	nml_parse_qualifier call.

2013-04-02  Tobias Burnus  <burnus@net-b.de>

	Backport from mainline:
	2013-03-28  Tobias Burnus  <burnus@net-b.de>

	PR fortran/56735
	* io/list_read.c (nml_query): Only abort when
	an error occured.
	(namelist_read): Add goto instead of falling through.

2013-04-02  Tobias Burnus  <burnus@net-b.de>

	Backport from mainline:
	2013-03-29  Tobias Burnus  <burnus@net-b.de>

	PR fortran/56737
	* io/format.c (parse_format): With caching, copy
	dtp->format string.
	(save_parsed_format): Use dtp->format directly without
	copying.

	2012-03-29  Tobias Burnus  <burnus@net-b.de>

	PR fortran/56737
	* io/format.c (parse_format_list): Also cache FMT_STRING.
	(parse_format): Update call.

2013-03-24  Tobias Burnus  <burnus@net-b.de>

	PR fortran/56696
	* io/list_read.c (read_real): Fix EOF diagnostic.

2013-03-22  Release Manager

	* GCC 4.8.0 released.

2013-03-11  Tobias Burnus  <burnus@net-b.de>

	* io/transfer.c (read_block_direct): Correct condition.
	* intrinsics/execute_command_line.c (execute_command_line):
	Remove dead code for the HAVE_FORK case.

2013-02-21  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/30162
	* io/open.c (test_endfile): Call stell only if size != 0.
	* io/unix.c (raw_tell): Revert r194679.
	(raw_size): Return size field only for regular files, otherwise 0.

2013-02-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR target/56347
	* acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_POWF): Remove check for
	broken powf.
	* configure.ac (LIBGFOR_CHECK_FOR_BROKEN_POWF): Likewise.
	* intrinsics/c99_functions.c: Likewise.
	* configure: Rebuilt.
	* config.h.in: Rebuilt.

2013-02-06  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/55978
	* runtime/in_pack_generic.c (internal_pack): Return if base_addr is
	NULL.

2013-01-23  Janne Blomqvist  <jb@gcc.gnu.org>

	* io/file_pos.c (unformatted_backspace): Use __builtin_bswapXX
	instead of reverse_memcpy.
	* io/io.h (reverse_memcpy): Remove prototype.
	* io/transfer.c (reverse_memcpy): Make static, move towards
	beginning of file.
	(bswap_array): New function.
	(unformatted_read): Use bswap_array to byte swap the data
	in-place.
	(unformatted_write): Use a larger temp buffer and bswap_array.
	(us_read): Use __builtin_bswapXX instead of reverse_memcpy.
	(write_us_marker): Likewise.

2013-01-14  Richard Sandiford  <rdsandiford@googlemail.com>

	Update copyright years.

2013-01-06  Tobias Burnus  <burnus@net-b.de>

	PR fortran/54678
	* intrinsics/env.c (get_environment_variable_i8): Don't use
	uninitialized variable.

2013-01-02  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/55818
	* io/list_read.c (read_real): Do not call hit_eof when EOF can be
	treated as a value separator.
	(parse_real): Likewise.
	(read_logical): Likewise.
	(read_character): Likewise.
	(read_complex): Likewise.

Copyright (C) 2013 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.