]> git.ipfire.org Git - thirdparty/gcc.git/blob - libgfortran/ChangeLog
Always use PIC option with -shared in libtool
[thirdparty/gcc.git] / libgfortran / ChangeLog
1 2014-11-21 H.J. Lu <hongjiu.lu@intel.com>
2
3 PR bootstrap/63784
4 * configure: Regenerated.
5
6 2014-11-16 Janne Blomqvist <jb@gcc.gnu.org>
7
8 PR libfortran/60324
9 * intrinsics/random.c (kiss_size): Rename to KISS_SIZE, make it a
10 macro instead of a variable.
11 (random_seed_i4): Make seed correct size, remove assert, KISS_SIZE
12 related changes.
13 (random_seed_i8): KISS_SIZE related changes.
14
15 2014-11-13 Marek Polacek <polacek@redhat.com>
16
17 * intrinsics/access.c: Include <stdlib.h>.
18 * intrinsics/chdir.c: Likewise.
19 * intrinsics/chmod.c: Likewise.
20 * intrinsics/link.c: Likewise.
21 * intrinsics/perror.c: Likewise.
22 * intrinsics/rename.c: Likewise.
23 * intrinsics/symlnk.c: Likewise.
24 * intrinsics/unlink.c: Likewise.
25
26 2014-11-13 Janne Blomqvist <jb@gcc.gnu.org>
27
28 PR libfortran/60324
29 * configure: Regenerated.
30 * configure.ac (AM_CFLAGS): Add Werror=vla.
31 * libgfortran.h (gfc_alloca): Remove macro.
32 (fc_strdup_notrim): New prototype.
33 * intrinsics/access.c (access_func): Use fc_strdup rather than
34 stack allocation.
35 * intrinsics/chdir.c (chdir_i4_sub): Likewise.
36 (chdir_i8_sub): Likewise.
37 * intrinsics/chmod.c (chmod_internal): New function, move logic
38 here.
39 (chmod_func): Call chmod_internal.
40 * intrinsics/env.c (getenv): Use fc_strdup rather than stack
41 allocation.
42 (get_environment_variable_i4): Likewise.
43 * intrinsics/execute_command_line.c (execute_command_line):
44 Likewise.
45 * intrinsics/hostnm.c (hostnm_0): New function, use static buffer
46 rather than VLA.
47 (hostnm_i4_sub): Call hostnm_0.
48 (hostnm_i8_sub): Likewise.
49 (hostnm): Likewise.
50 * intrinsics/link.c (link_internal): New function, use fc_strdup
51 rather than stack allocation.
52 (link_i4_sub): Call link_internal.
53 (link_i8_sub): Likewise.
54 (link_i4): Likewise.
55 (link_i8): Likewise.
56 * intrinsics/perror.c (perror_sub): Use fc_strdup rather than
57 stack allocation.
58 * intrinsics/random.c (random_seed_i4): Use static buffer rather
59 than VLA, use _Static_assert to make sure it's big enough.
60 * intrinsics/rename.c (rename_internal): New function, use
61 fc_strdup rather than stack allocation.
62 (rename_i4_sub): Call rename_internal.
63 (rename_i8_sub): Likewise.
64 (rename_i4): Likewise.
65 (rename_i8): Likewise.
66 * intrinsics/stat.c (stat_i4_sub_0): Use fc_strdup rather than
67 stack allocation.
68 (stat_i8_sub_0): Likewise.
69 * intrinsics/symlink.c (symlnk_internal): New function, use
70 fc_strdup rather than stack allocation.
71 (symlnk_i4_sub): Call symlnk_internal.
72 (symlnk_i8_sub): Likewise.
73 (symlnk_i4): Likewise.
74 (symlnk_i8): Likewise.
75 * intrinsics/system.c (system_sub): Use fc_strdup rather than
76 stack allocation.
77 * intrinsics/unlink.c (unlink_i4_sub): Likewise.
78 * io/file_pos.c (READ_CHUNK): Make it a macro rather than variable.
79 * io/list_read.c (nml_get_obj_data): Use fixed stack buffer, fall
80 back to xmalloc/free for large sizes.
81 * io/read.c (read_f): Likewise.
82 * io/transfer.c (MAX_READ): Make it a macro rather than variable.
83 (WRITE_CHUNK): Likewise.
84 * io/write_float.def (write_float): Use fixed stack buffer, fall
85 back to xmalloc/free for large sizes.
86 * runtime/string.c (fc_strdup_notrim): New function.
87
88 2014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
89
90 PR target/63610
91 * configure: Regenerate.
92
93 2014-11-10 Janne Blomqvist <jb@gcc.gnu.org>
94
95 PR libfortran/47007
96 PR libfortran/61847
97 * config.h.in: Regenerated.
98 * configure: Regenerated.
99 * configure.ac (AC_CHECK_HEADERS_ONCE): Check for xlocale.h.
100 (AC_CHECK_FUNCS_ONCE): Check for newlocale, freelocale, uselocale,
101 strerror_l.
102 * io/io.h (locale.h): Include.
103 (xlocale.h): Include if present.
104 (c_locale): New variable.
105 (old_locale): New variable.
106 (old_locale_ctr): New variable.
107 (old_locale_lock): New variable.
108 (st_parameter_dt): Add old_locale member.
109 * io/transfer.c (data_transfer_init): Set locale to "C" if doing
110 formatted transfer.
111 (finalize_transfer): Reset locale to previous.
112 * io/unit.c (c_locale): New variable.
113 (old_locale): New variable.
114 (old_locale_ctr): New variable.
115 (old_locale_lock): New variable.
116 (init_units): Init c_locale, init old_locale_lock.
117 (close_units): Free c_locale.
118 * runtime/error.c (locale.h): Include.
119 (xlocale.h): Include if present.
120 (gf_strerror): Use strerror_l if available. Reset locale to
121 LC_GLOBAL_LOCALE for strerror_r branch.
122
123 2014-10-20 Janne Blomqvist <jb@gcc.gnu.org>
124
125 PR libfortran/63589
126 * configure.ac: Check for strtok_r.
127 * runtime/main.c (gfstrtok_r): Fallback implementation of
128 strtok_r.
129 (find_addr2line): Use strtok_r to split PATH.
130 * config.h.in: Regenerated.
131 * configure: Regenerated.
132
133 2014-10-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
134
135 * ieee/ieee_helper.c (ieee_is_finite_*, ieee_is_nan_*,
136 ieee_is_negative_*, ieee_is_normal_*, ieee_copy_sign_*,
137 ieee_unordered_*, ieee_logb_*, ieee_rint_*, ieee_scalb_*,
138 ieee_rem_*, ieee_next_after_*): Remove functions.
139 * gfortran.map (GFORTRAN_1.5): Remove corresponding symbols.
140
141 2014-10-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
142
143 PR libgfortran/63460
144 * io/unit.c (init_units): Initialize the DELIM flag to
145 UNSPECIFIED for the STDIN unit so that the flag is
146 correctly set later.
147
148 2014-10-01 Janne Blomqvist <jb@gcc.gnu.org>
149
150 * intrinsics/pack_generic.c (pack_s_internal): Fix
151 -Wmaybe-uninitialized warning.
152 * m4/unpack.m4 (unpack0_'rtype_code`): Likewise.
153 (unpack1_'rtype_code`): Likewise.
154 * generated/unpack_*.m4: Regenerated.
155
156 2014-09-30 Janne Blomqvist <jb@gcc.gnu.org>
157
158 * configure.ac (AM_CFLAGS): Add
159 -Werror=implicit-function-declaration.
160 * Makefile.in: Regenerated.
161 * aclocal.m4: Regenerated.
162 * configure: Regenerated.
163
164 2014-09-25 Tobias Burnus <burnus@net-b.de>
165
166 * caf/libcaf.h (_gfortran_caf_co_broadcast): New prototype.
167 * caf/single.c (_gfortran_caf_co_broadcast): New.
168
169 2014-09-18 Janne Blomqvist <jb@gcc.gnu.org>
170
171 PR libfortran/62768
172 * io/inquire.c (inquire_via_unit): Use gfc_unit.filename also when
173 HAVE_TTYNAME{_R} is not defined.
174
175 2014-09-17 Janne Blomqvist <jb@gcc.gnu.org>
176
177 PR libfortran/62768
178 * io/io.h (gfc_unit): Store C string for the filename.
179 * io/close.c (st_close): Use gfc_unit.filename.
180 * io/inquire.c (inquire_via_unit): Likewise.
181 * io/open.c (new_unit): Likewise.
182 (already_open): Likewise, unlink file before freeing filename.
183 * io/unit.c (init_units): Likewise.
184 (close_unit_1): Likewise.
185 (filename_from_unit): Likewise.
186 * io/unix.c (compare_file_filename): Likewise.
187 (find_file0): Likewise.
188 (delete_file): Likewise.
189
190 2014-09-10 Janne Blomqvist <jb@gcc.gnu.org>
191
192 * io/transfer.c (read_block_form): Fix pad status check (found by
193 Thomas Schwinge with -Wlogical-not-parentheses).
194
195 2014-08-31 Tobias Burnus <burnus@net-b.de>
196
197 * caf/libcaf.h (_gfortran_caf_send, _gfortran_caf_get,
198 _gfortran_caf_sendget): Update prototype.
199 * caf/single.c (_gfortran_caf_send, _gfortran_caf_get,
200 _gfortran_caf_sendget): Handle may_require_tmp.
201
202 2014-08-20 Steven G. Kargl <kargl@gcc.gnu.org>
203
204 PR libgfortran/62188
205 * m4/bessel.m4: Avoid indexing off the end of an array.
206 * generated/bessel_r10.c: Regenerated.
207 * generated/bessel_r16.c: Ditto.
208 * generated/bessel_r4.c: Ditto.
209 * generated/bessel_r8.c: Ditto.
210
211 2014-08-14 Tobias Burnus <burnus@net-b.de>
212
213 * caf/libcaf.h (caf_register_t): Update for critical.
214 (_gfortran_caf_critical, _gfortran_caf_end_critical): Remove.
215 (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
216 * caf/single.c (_gfortran_caf_register): Handle locking
217 variables.
218 (_gfortran_caf_sendget): Re-name args for consistency.
219 (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
220
221 2014-08-04 Jakub Jelinek <jakub@redhat.com>
222
223 * runtime/memory.c (xmallocarray): Avoid division for the common case.
224
225 2014-07-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
226
227 PR libgfortran/61632
228 * io/format.c (format_error): Avoid invalid string pointer by
229 using the fortran string length values to generate error string.
230 (parse_format): Allocate the null terminator for the format
231 string.
232
233 2014-07-12 Tobias Burnus <burnus@net-b.de>
234
235 * caf/libcaf.h (_gfortran_caf_atomic_define,
236 _gfortran_caf_atomic_ref, _gfortran_caf_atomic_op,
237 _gfortran_caf_atomic_cas): New prototypes.
238 * caf/single.c (_gfortran_caf_atomic_define,
239 _gfortran_caf_atomic_ref, _gfortran_caf_atomic_op,
240 _gfortran_caf_atomic_cas): New functions.
241
242 2014-07-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
243
244 * config/fpu-*.h (get_fpu_rounding_mode, set_fpu_rounding_mode,
245 support_fpu_rounding_mode): Clean up, mark unreachable code as such.
246
247 2014-07-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
248
249 * libgfortran.h (support_fpu_underflow_control,
250 get_fpu_underflow_mode, set_fpu_underflow_mode): New prototypes.
251 * config/fpu-*.h (support_fpu_underflow_control,
252 get_fpu_underflow_mode, set_fpu_underflow_mode):
253 New functions.
254 * ieee/ieee_arithmetic.F90: Support underflow control.
255
256 2014-07-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
257
258 * config/fpu-sysv.h (get_fpu_rounding_mode): Use FP_RN, FP_RP,
259 FP_RM, FP_RZ unconditionally.
260 (set_fpu_rounding_mode): Likewise.
261
262 2014-07-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
263
264 * libgfortran.h: Assume __GNUC__.
265
266 2014-07-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
267
268 * runtime/stop.c: Use C11 _Noreturn.
269 * libgfortran.h: Use C11 _Noreturn in prototypes.
270 Move REALPART, IMAGPART and COMPLEX_ASSIGN macros...
271 * intrinsics/c99_functions.c: ... here.
272
273 2014-07-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
274
275 * config/fpu-387.h, config/fpu-aix.h, config/fpu-sysv.h,
276 config/fpu-glibc.h: Use static assertions.
277
278 2014-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
279
280 * configure, config.h.in: Regenerate.
281 * config/fpu-sysv.h: Include <assert.h>.
282
283 2014-07-02 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
284
285 * config/fpu-glibc.h: Fix comment about FE_DENORMAL.
286
287 2014-07-02 Uros Bizjak <ubizjak@gmail.com>
288
289 * configure.host (ieee_flags): Add -mieee for alpha*.
290
291 * config/fpu-glibc.h (support_fpu_rounding_mode): Correctly handle
292 GFC_FPE_UPWARD, GFC_FPE_DOWNWARD and GFC_FPE_TOWARDZERO.
293 * config/fpu-aix.h (support_fpu_rounding_mode): Ditto.
294
295 2014-06-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
296
297 * config/fpu-387.h (my_fenv_t): Amend structure so it also works
298 on mingw32.
299
300 2014-06-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
301
302 PR libgfortran/61640
303 * io/list_read.c (next_char_internal): Adjust the read length to
304 a single wide character. (eat_spaces): Add missing paren.
305 * io/unix.c (mem_read4): Use the correct mem_alloc function for
306 wide character internal reads.
307
308 2014-06-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
309
310 PR fortran/29383
311 * configure.host: Add checks for IEEE support, rework priorities.
312 * configure.ac: Define IEEE_SUPPORT, check for fpsetsticky and
313 fpresetsticky.
314 * configure: Regenerate.
315 * Makefile.am: Build new ieee files, install IEEE_* modules.
316 * Makefile.in: Regenerate.
317 * gfortran.map (GFORTRAN_1.6): Add new symbols.
318 * libgfortran.h (get_fpu_trap_exceptions, set_fpu_trap_exceptions,
319 support_fpu_trap, set_fpu_except_flags, support_fpu_flag,
320 support_fpu_rounding_mode, get_fpu_state, set_fpu_state): New
321 prototypes.
322 * config/fpu-*.h (get_fpu_trap_exceptions,
323 set_fpu_trap_exceptions, support_fpu_trap, set_fpu_except_flags,
324 support_fpu_flag, support_fpu_rounding_mode, get_fpu_state,
325 set_fpu_state): New functions.
326 * ieee/ieee_features.F90: New file.
327 * ieee/ieee_exceptions.F90: New file.
328 * ieee/ieee_arithmetic.F90: New file.
329 * ieee/ieee_helper.c: New file.
330
331 2014-06-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
332
333 PR libgfortran/61499
334 * io/list_read.c (eat_spaces): Use a 'for' loop instead of
335 'while' loop to skip the loop if there are no bytes left in the
336 string. Only seek if actual spaces can be skipped.
337
338 2014-06-25 Tobias Burnus <burnus@net-b.de>
339
340 * caf/single.c (assign_char4_from_char1, assign_char1_from_char4,
341 convert_type): New static functions.
342 (_gfortran_caf_get, _gfortran_caf_send): Use them.
343
344 2014-06-19 Tobias Burnus <burnus@net-b.de>
345
346 * caf/single.c (_gfortran_caf_co_sum, _gfortran_caf_co_max,
347 _gfortran_caf_co_min): Fix stat setting.
348
349 2014-06-17 Tobias Burnus <burnus@net-b.de>
350
351 * caf/libcaf.h (gfc_descriptor_t): New typedef.
352 (caf_vector_t): Update.
353 (_gfortran_caf_co_sum, _gfortran_caf_co_max, _gfortran_caf_co_min):
354 Remove vector-subscript argument.
355 (_gfortran_caf_co_send, _gfortran_caf_co_get,
356 _gfortran_caf_co_sendget): New.
357 * caf/single.c (_gfortran_caf_co_sum, _gfortran_caf_co_max,
358 _gfortran_caf_co_min): Remove vector-subscript argument.
359 (_gfortran_caf_co_send, _gfortran_caf_co_get,
360 _gfortran_caf_co_sendget): New.
361
362 2014-06-17 Janne Blomqvist <jb@gcc.gnu.org>
363
364 * libgfortran.h (xmallocarray): New prototype.
365 * runtime/memory.c (xmallocarray): New function.
366 (xcalloc): Check for nonzero separately instead of multiplying.
367 * generated/*.c: Regenerated.
368 * intrinsics/cshift0.c (cshift0): Call xmallocarray instead of
369 xmalloc.
370 * intrinsics/eoshift0.c (eoshift0): Likewise.
371 * intrinsics/eoshift2.c (eoshift2): Likewise.
372 * intrinsics/pack_generic.c (pack_internal): Likewise.
373 (pack_s_internal): Likewise.
374 * intrinsics/reshape_generic.c (reshape_internal): Likewise.
375 * intrinsics/spread_generic.c (spread_internal): Likewise.
376 (spread_internal_scalar): Likewise.
377 * intrinsics/string_intrinsics_inc.c (string_trim): Likewise.
378 (string_minmax): Likewise.
379 * intrinsics/transpose_generic.c (transpose_internal): Likewise.
380 * intrinsics/unpack_generic.c (unpack_internal): Likewise.
381 * io/list_read.c (nml_touch_nodes): Don't cast xmalloc return value.
382 * io/transfer.c (st_set_nml_var): Call xmallocarray instead of
383 xmalloc.
384 * io/unit.c (get_internal_unit): Likewise.
385 (filename_from_unit): Don't cast xmalloc return value.
386 * io/write.c (nml_write_obj): Likewise, formatting.
387 * m4/bessel.m4 (bessel_jn_r'rtype_kind`): Call xmallocarray
388 instead of xmalloc.
389 (besse_yn_r'rtype_kind`): Likewise.
390 * m4/cshift1.m4 (cshift1): Likewise.
391 * m4/eoshift1.m4 (eoshift1): Likewise.
392 * m4/eoshift3.m4 (eoshift3): Likewise.
393 * m4/iforeach.m4: Likewise.
394 * m4/ifunction.m4: Likewise.
395 * m4/ifunction_logical.m4 (name`'rtype_qual`_'atype_code):
396 Likewise.
397 * m4/in_pack.m4 (internal_pack_'rtype_ccode`): Likewise.
398 * m4/matmul.m4 (matmul_'rtype_code`): Likewise.
399 * m4/matmull.m4 (matmul_'rtype_code`): Likewise.
400 * m4/pack.m4 (pack_'rtype_code`): Likewise.
401 * m4/reshape.m4 (reshape_'rtype_ccode`): Likewise.
402 * m4/shape.m4 (shape_'rtype_kind`): Likewise.
403 * m4/spread.m4 (spread_'rtype_code`): Likewise.
404 (spread_scalar_'rtype_code`): Likewise.
405 * m4/transpose.m4 (transpose_'rtype_code`): Likewise.
406 * m4/unpack.m4 (unpack0_'rtype_code`): Likewise.
407 (unpack1_'rtype_code`): Likewise.
408 * runtime/convert_char.c (convert_char1_to_char4): Likewise.
409 (convert_char4_to_char1): Simplify.
410 * runtime/environ.c (init_unformatted): Call xmallocarray instead
411 of xmalloc.
412 * runtime/in_pack_generic.c (internal_pack): Likewise.
413
414 2014-06-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
415
416 PR libfortran/60468
417 * configure.ac: Include <math.h> when checking for fp_except_t
418 and fp_rnd_t types.
419 * configure: Regenerate.
420
421 2014-06-08 Janne Blomqvist <jb@gcc.gnu.org>
422
423 PR libfortran/56981
424 * io/unix.h (struct stream_vtable): Add new member function,
425 markeor.
426 (smarkeor): New inline function.
427 (flush_if_unbuffered): Remove prototype.
428 * io/unix.c (raw_markeor): New function.
429 (raw_vtable): Initialize markeor member.
430 (buf_markeor): New function.
431 (buf_vtable): Initialize markeor member.
432 (mem_vtable): Likewise.
433 (mem4_vtable): Likewise.
434 (flush_if_unbuffered): Remove function.
435 * io/transfer.c (next_record): Call smarkeor instead of
436 flush_if_unbuffered.
437
438 2014-05-27 Uros Bizjak <ubizjak@gmail.com>
439
440 * intrinsics/getcwd.c: Include stdlib.h.
441
442 2014-05-26 Janne Blomqvist <jb@gcc.gnu.org>
443
444 * libgfortran.h (xrealloc): New prototype.
445 * runtime/memory.c (xrealloc): New function.
446 * io/fbuf.c (fbuf_alloc): Use xrealloc.
447 * io/list_read.c (push_char_default): Likewise.
448 (push_char4): Likewise.
449
450 2014-05-26 Janne Blomqvist <jb@gcc.gnu.org>
451
452 PR libfortran/61310
453 * intrinsics/ctime.c (strctime): Rename to gf_ctime, use snprintf
454 instead of strftime.
455 (fdate): Use gf_ctime.
456 (fdate_sub): Likewise.
457 (ctime): Likewise.
458 (ctime_sub): Likewise.
459
460 2014-05-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
461
462 PR libgfortran/55117
463 * io/list_read.c (extended_look_ahead): New helper function to
464 scan the namelist name and look for matches with the new '+'
465 extended type parent indicator. (str_comp_extended): New
466 helper function to compare the namelist name with the varname
467 namelist. (find_nml_name): Use the new helper functions to match
468 the extended type varnames.
469
470 2014-05-23 Jerry DeLisle <jvdelisle@gcc.gnu>
471
472 PR libfortran/61173
473 * io/list_read.c (eat_spaces): If the next character pointed to
474 is a space, don't seek, must be at the end.
475
476 2014-05-23 Hans-Peter Nilsson <hp@axis.com>
477
478 * configure.ac [with_newlib] (HAVE_STRNLEN, HAVE_STRNDUP): Define.
479 * configure: Regenerate.
480
481 2014-05-23 Janne Blomqvist <jb@gcc.gnu.org>
482
483 PR libfortran/60324
484 * runtime/string.c: Include stdlib.h.
485
486 2014-05-22 Janne Blomqvist <jb@gcc.gnu.org>
487
488 PR libfortran/60324
489 * config.h.in: Regenerated.
490 * configure: Regenerated.
491 * configure.ac (AC_CHECK_FUNCS_ONCE): Check for strnlen and
492 strndup.
493 * libgfortran.h (fc_strdup): New prototype.
494 * runtime/string.c (strnlen): New fallback function.
495 (strndup): New fallback function.
496 (fc_strdup): New function.
497 * io/close.c (st_close): Use fc_strdup.
498 * io/open.c (new_unit): Likewise.
499 (already_open): Likewise.
500 * io/unit.c (filename_from_unit): Likewise.
501 * io/unix.c (unpack_filename): Remove function.
502 (regular_file): Rename to regular_file2, add path argument.
503 (regular_file): New function calling regular_file2.
504 (compare_file_filename): Use fc_strdup.
505 (find_file): Likewise.
506 (delete_file): Likewise.
507 (file_exists): Likewise.
508 (file_size): Likewise.
509 (inquire_sequential): Likewise.
510 (inquire_direct): Likewise.
511 (inquire_formatted): Likewise.
512 (inquire_access): Likewise.
513 * io/unix.h (unpack_filename): Remove prototype.
514 * runtime/main.c (please_free_exe_path_when_done): Change type to
515 bool.
516 (store_exe_path): Use malloced buffer, grow as needed.
517
518 2014-05-17 Jerry DeLisle <jvdelisle@gcc.gnu>
519
520 PR libfortran/52539
521 * io/io.h (gfc_unit): New function pointers *next_char_fn_ptr
522 and *push_char_fn_ptr.
523 *io/list_read.c (next_char): Create macro with this name to call
524 the new function pointer. Split the original next_char function
525 into three new functions. (next_char_default, next_char_internal,
526 next_char_utf8): New functions. (push_char): Create macro with
527 this name to call new function pointer. Split the original
528 push_char into three new functions. (push_char_default,
529 push_char_internal, push_char4): New functions. (set_workers):
530 New function to initilize the function pointers depending on the
531 type of IO to be performed. (list_formatted_read_scalar): Use
532 set_workers function. (finish_list_read): Likewise.
533 (namelist_read): Likewise.
534 (nml_get_obj_data): Use push_char_default.
535
536 2014-05-16 Janne Blomqvist <jb@gcc.gnu.org>
537
538 PR libfortran/61187
539 * io/unix.c (raw_close): Check if s->fd is -1.
540 (fd_to_stream): Check return value of fstat(), handle error.
541
542 2014-05-12 Janne Blomqvist <jb@gcc.gnu.org>
543
544 PR libfortran/61035
545 * intrinsics/getcwd.c (getcwd_i4_sub): Avoid potentially large
546 stack allocation, avoid extra copying in the common case.
547
548 2014-05-12 Janne Blomqvist <jb@gcc.gnu.org>
549
550 * configure.ac (AM_CFLAGS): Use -std=gnu11.
551 (CFLAGS): Likewise.
552 * configure: Regenerated.
553
554 2014-05-11 Tobias Burnus <burnus@net-b.de>
555
556 * caf/libcaf.h (_gfortran_caf_num_images): Change type of
557 second argument to int.
558 * caf/mpi.c (_gfortran_caf_num_images): Ditto.
559 * caf/single.c (_gfortran_caf_num_images): Ditto.
560
561 2014-05-08 Tobias Burnus <burnus@net-b.de>
562
563 * caf/libcaf.h (caf_vector_t, _gfortran_caf_co_sum,
564 _gfortran_caf_co_min, _gfortran_caf_co_max): Declare
565 * caf/single.c
566
567 2014-05-06 Jerry DeLisle <jvdelisle@gcc.gnu>
568
569 PR libfortran/61049
570 * io/list_read.c (list_formatted_read_scalar): Use eat_separator
571 and delete extraneous code.
572
573 2014-04-30 Tobias Burnus <burnus@net-b.de>
574
575 * caf/libcaf.h (_gfortran_caf_this_image, _gfortran_caf_num_images):
576 New prototypes.
577 (_gfortran_caf_init): Change prototype.
578 (mpi_token_t): New typedef.
579 (TOKEN): New define.
580 * caf/mpi.c (_gfortran_caf_this_image, _gfortran_caf_num_images):
581 New functions.
582 (_gfortran_caf_init): Update.
583 (_gfortran_caf_finalize, _gfortran_caf_register,
584 _gfortran_caf_deregister): Use mpi_token_t.
585 * caf/single.c (_gfortran_caf_this_image, _gfortran_caf_num_images):
586 New functions.
587 (_gfortran_caf_init): Update.
588 (_gfortran_caf_finalize, _gfortran_caf_register,
589 _gfortran_caf_deregister): Use mpi_token_t, simplify.
590
591 2014-04-26 Jerry DeLisle <jvdelisle@gcc.gnu>
592
593 PR libfortran/52539
594 * io/list_read.c: Add uchar typedef. (push_char4): New function
595 to save kind=4 character. (next_char_utf8): New function to read
596 a single UTF-8 encoded character value. (read_chracter): Update
597 to use the new functions for reading UTF-8 strings.
598 (list_formatted_read_scalar): Update to handle list directed
599 reads of UTF-8 strings. (nml_read_obj): Likewise update for
600 UTF-8 strings in namelists.
601 * io/write.c (nml_write_obj): Add kind=4 character support for
602 namelist writes.
603
604 2014-04-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
605
606 * configure.ac: Quote usage of ac_cv_func_clock_gettime in if test.
607 * configure: Regenerate.
608
609 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
610
611 * config/fpu-387.h [__sun__ && __svr4__]: Remove SSE execution
612 check.
613
614 2014-04-11 Jerry DeLisle <jvdelisle@gcc.gnu>
615
616 PR libfortran/60810
617 io/unit.c (is_trim_ok): If internal unit is array, do not trim.
618
619 2014-03-21 Jerry DeLisle <jvdelisle@gcc.gnu>
620
621 PR libfortran/60148
622 * io/transfer.c (data_transfer_init): If std= was specified, set
623 delim status to DELIM_NONE of no other was specified.
624
625 2014-03-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
626
627 * configure.ac: Check for presence of fcntl.
628 * configure: Regenerate.
629 * config.h.in: Regenerate.
630 * io/unix.c (set_close_on_exec): Check for HAVE_FCNTL.
631
632 2014-03-17 Jerry DeLisle <jvdelisle@gcc.gnu>
633
634 PR libfortran/48600
635 * io/list_read.c (list_formatted_read_scalar): Do not use
636 eat_separator. Explicitly set the comma and end-of-line flags.
637 Check for END condition from finish_separator.
638
639 2014-03-15 Jerry DeLisle <jvdelisle@gcc.gnu>
640
641 PR libfortran/58324
642 * io/list_read.c (finish_list_read): Read one character to check
643 for the end of the file. If it is the end, then issue the file
644 end error message. If not, use eat_line to reach the end
645 without giving error. The next attempt to read will then
646 issue the error as described above.
647
648 2014-03-12 Jerry DeLisle <jvdelisle@gcc.gnu>
649
650 PR libfortran/38199
651 * io/read.c (read_decimal): Quickly skip spaces to avoid calls
652 to next_char.
653 * io/unit.c (is_trim_ok): New helper function to check various
654 conditions to see if its OK to trim the internal unit string.
655 (get_internal_unit): Use LEN_TRIM to shorten selected internal
656 unit strings for optimizing READ. Enable this optimization for
657 formatted READ.
658 * io/list_read.c (finish_list_read): Don't call eat_line for
659 internal units.
660
661 2014-03-08 Jerry DeLisle <jvdelisle@gcc.gnu>
662
663 PR libfortran/38199
664 * io/list_read.c (next_char): Mark unlikely error checks.
665 (eat_spaces): For character array reading, skip ahead over
666 spaces rather than call next_char multiple times.
667
668 2014-03-08 Tobias Burnus <burnus@net-b.de>
669
670 * libgfortran.h (unlikely, likely): Add usage comment.
671
672 2014-03-08 Dominique d'Humieres <dominiq@lps.ens.fr>
673
674 PR libgfortran/60128
675 * io/write_float.def (output_float): Remove unused variable
676 nzero_real. Replace a double space with a single one.
677 (determine_en_precision): Fix wrong handling of the EN format.
678
679 2014-03-03 Jerry DeLisle <jvdelisle@gcc.gnu>
680
681 PR libfortran/60148
682 * io/inquire.c (inquire_via_unit): In the case of
683 DELIM_UNSPECIFIED set inquire return string to "NONE".
684 * io/list_read.c (read_character): In the case of DELIM_NONE and
685 namelists, complete the character read using the namelist
686 variable length.
687 * io/open.c (new_unit): Don't set delim status to none if not
688 specified so that DELIM_UNSPECIFIED can be used later.
689 * io/transfer.c (data_transfer_init): For namelist I/O, if the
690 unit delim status is unspecified set the current status to quote.
691 Otherwise, set current status to the unit status.
692 * io/unit.c (get_internel_unit, init_unit): Remember to set
693 flags_delim initially to DELIM_UNSPECIFIED so defaults come out
694 correctly.
695 * io/write.c (write_character): Add a new function argument
696 "mode" to signify that raw output is to be used vs output with
697 delimiters. If the mode is set to DELIM (1) proceed with
698 delimiters. (list_formatted_write_scalar): Write the separator
699 only if a delimiter was previously specified. Update the call to
700 write_character with the mode argument given.
701 (namelist_write_newline): Use the mode argument. (nml_write_obj):
702 Use the mode argument. Remove use of tmp_delim. Write the
703 semi-colon or comma correctly only when needed with using
704 delimiters. Cleanup whitespace.
705 (namelist_write): If delim is not specified in namelist I/O,
706 default to using quotes. Get rid of the tmp_delim variable and
707 use the new mode argument in write_character.
708
709 2014-02-21 Tobias Burnus <burnus@net-b.de>
710
711 PR fortran/60286
712 * libgfortran/io/inquire.c (yes, no): New static const char vars.
713 (inquire_via_unit): Use them. Use OPEN mode instead of using
714 POSIX's access to query about write=, read= and readwrite=.
715
716 2014-01-20 Jerry DeLisle <jvdelisle@gcc.gnu>
717 Dominique d'Humieres <dominiq@lps.ens.fr>
718
719 * io/write_float.def (output_float): Remove inadvertent test
720 code from previous patch.
721
722 2014-01-19 Jerry DeLisle <jvdelisle@gcc.gnu>
723 Dominique d'Humieres <dominiq@lps.ens.fr>
724
725 PR libfortran/59771
726 PR libfortran/59774
727 PR libfortran/59836
728 * io/write_float.def (output_float): Fix wrong handling of the
729 Fw.0 format.
730 (output_float_FMT_G_): Fixes rounding issues with -m32.
731
732 2014-01-11 Jerry DeLisle <jvdelisle@gcc.gnu>
733 Dominique d'Humieres <dominiq@lps.ens.fr>
734 Steven G. Kargl <kargl@gcc.gnu.org>
735
736 PR libfortran/59700
737 PR libfortran/59764
738 * io/io.h (struct st_parameter_dt): Assign expanded_read flag to
739 unused bit. Define new variable line_buffer_pos.
740 * io/list_read.c (free_saved, next_char, l_push_char,
741 read_logical, read_real): Replace use of item_count with
742 line_buffer_pos for line_buffer look ahead.
743 (read_logical, read_integer, parse_real, read_real, check_type):
744 Adjust location of free_line to after generating error messages
745 to retain the correct item count for the message.
746
747 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
748
749 Update copyright years
750 ^L
751 Copyright (C) 2013-2014 Free Software Foundation, Inc.
752
753 Copying and distribution of this file, with or without modification,
754 are permitted in any medium without royalty provided the copyright
755 notice and this notice are preserved.