1 2011-07-05 Thomas Koenig <tkoenig@gcc.gnu.org>
3 * runtime/memory.c (internal_malloc_size): If size is zero,
4 allocate a single byte.
5 * m4/pack.m4 (pack_'rtype_code`): Don't check for zero size
6 for the argument of internal_malloc_size.
7 * m4/spread.m4 (spread_'rtype_code`): Likewise.
8 * m4/eoshift1.m4 (eoshift1): Don't allocate twice. Don't check
9 for zero size for the argument of internal_malloc_size.
10 * m4/eoshift3.m4: Don't check for zero size for the argument of
12 * intrinsics/pack_generic.c (pack_internal): Likewise.
13 (pack_s_internal): Likewise.
14 * intrinsics/cshift0.c (cshift0): Likewise.
15 * intrinsics/spread_generic.c (spread_internal): Likewise.
16 * intrinsics/eoshift0.c (eoshift0): Likewise.
17 * intrinsics/eoshift2.c (eoshift2): Likewise.
18 * generated/eoshift1_16.c: Regenerated.
19 * generated/eoshift1_4.c: Regenerated.
20 * generated/eoshift1_8.c: Regenerated.
21 * generated/eoshift3_16.c: Regenerated.
22 * generated/eoshift3_4.c: Regenerated.
23 * generated/eoshift3_8.c: Regenerated.
24 * generated/pack_c10.c: Regenerated.
25 * generated/pack_c16.c: Regenerated.
26 * generated/pack_c4.c: Regenerated.
27 * generated/pack_c8.c: Regenerated.
28 * generated/pack_i16.c: Regenerated.
29 * generated/pack_i1.c: Regenerated.
30 * generated/pack_i2.c: Regenerated.
31 * generated/pack_i4.c: Regenerated.
32 * generated/pack_i8.c: Regenerated.
33 * generated/pack_r10.c: Regenerated.
34 * generated/pack_r16.c: Regenerated.
35 * generated/pack_r4.c: Regenerated.
36 * generated/pack_r8.c: Regenerated.
37 * generated/spread_c10.c: Regenerated.
38 * generated/spread_c16.c: Regenerated.
39 * generated/spread_c4.c: Regenerated.
40 * generated/spread_c8.c: Regenerated.
41 * generated/spread_i16.c: Regenerated.
42 * generated/spread_i1.c: Regenerated.
43 * generated/spread_i2.c: Regenerated.
44 * generated/spread_i4.c: Regenerated.
45 * generated/spread_i8.c: Regenerated.
46 * generated/spread_r10.c: Regenerated.
47 * generated/spread_r16.c: Regenerated.
48 * generated/spread_r4.c: Regenerated.
49 * generated/spread_r8.c: Regenerated.
51 2011-06-28 Thomas Koenig <tkoenig@gcc.gnu.org>
54 * m4/reshape.m4: If source allocation is smaller than one, set it
56 * intrinsics/reshape_generic.c: Likewise.
57 * generated/reshape_r16.c: Regenerated.
58 * generated/reshape_c4.c: Regenerated.
59 * generated/reshape_c16.c: Regenerated.
60 * generated/reshape_c8.c: Regenerated.
61 * generated/reshape_r4.c: Regenerated.
62 * generated/reshape_i4.c: Regenerated.
63 * generated/reshape_r10.c: Regenerated.
64 * generated/reshape_r8.c: Regenerated.
65 * generated/reshape_c10.c: Regenerated.
66 * generated/reshape_i8.c: Regenerated.
67 * generated/reshape_i16.c: Regenerated.
69 2011-06-18 Janne Blomqvist <jb@gcc.gnu.org>
72 * io/list_read.c (read_character): Accept EOF as a separator when
75 2011-06-17 Daniel Carrera <dcarrera@gmail.com>
77 * caf/single.c (_gfortran_caf_register): Store the address
78 of all static coarrays in a linked list.
79 (_gfortran_caf_finalize): Free memory of staic coarrays.
80 * caf/mpi.c (_gfortran_caf_register): Store the address
81 of all static coarrays in a linked list. Initialize MPI
83 (_gfortran_caf_finalize): Free memory of staic coarrays.
84 (_gfortran_caf_init): Check if MPI is already initialized
85 before initializing again.
86 * caf/libcaf.h: Add a type to caf_register_t to distinguish
87 static coarrays and add the type caf_static_t to make the
88 linked list of static coarrays.
90 2011-06-11 Janne Blomqvist <jb@gcc.gnu.org>
92 * io/unix.c (buf_seek): Return error if file is not seekable.
93 (buf_tell): Call buf_seek.
95 2011-06-11 Janne Blomqvist <jb@gcc.gnu.org>
97 * io/unix.c (fd_to_stream): Figure out if a fd is seekable by
100 2011-06-10 Daniel Carrera <dcarrera@gmail.com>
102 * caf/mpi.c (_gfortran_caf_sync_all,
103 _gfortran_caf_sync_images): Functions have void return type
104 and move status into parameter list.
105 * caf/single.c (_gfortran_caf_sync_all,
106 _gfortran_caf_sync_images): Functions have void return type
107 and move status into parameter list.
108 * caf/libcaf.h (_gfortran_caf_sync_all,
109 _gfortran_caf_sync_images): Functions have void return type
110 and move status into parameter list.
112 2011-06-03 Richard Henderson <rth@redhat.com>
113 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
115 * config/fpu-387.h [__sun__ && __svr4__] (sigill_hdlr): Correct
117 (has_sse) [!__x86_64__ && __sun__ && __svr4__]: Use movaps.
119 2011-05-29 Janne Blomqvist <jb@gcc.gnu.org>
122 * libgfortran.h (find_addr2line): New prototype.
123 * runtime/backtrace.c (show_backtrace): Use async-signal-safe
124 execve and stored path of addr2line.
125 * runtime/compile_options.c (maybe_find_addr2line): New function.
126 (set_options): Call maybe_find_addr2line if backtracing is enabled.
127 * runtime/main.c (find_addr2line): New function.
128 (init): Call find_addr2line if backtracing is enabled.
129 (cleanup): Free addr2line_path.
131 2011-05-29 Janne Blomqvist <jb@gcc.gnu.org>
134 * runtime/backtrace.c (fd_gets): Return NULL if nothing was read.
136 2011-05-29 Janne Blomqvist <jb@gcc.gnu.org>
139 * io/read.c (convert_real): Check for invalid input by comparing
140 endptr instead of EINVAL.
141 (read_f): Fixup floating point input without significand.
143 2011-05-22 Tobias Burnus <burnus@net-b.de>
145 * runtime/stop.c (stop_string,error_stop_string): Minor cleanup.
147 2011-05-22 Janne Blomqvist <jb@gcc.gnu.org>
150 * configure.ac: Check for backtrace_symbols_fd instead of
151 backtrace_symbols, check for readlink.
152 * config.h.in: Regenerated.
153 * configure: Regenerated.
154 * runtime/backtrace.c (local_strcasestr): Remove.
155 (bt_header): New function.
156 (dump_glibc_backtrace): Remove.
157 (fd_gets): New function.
158 (show_backtrace): Rework to use backtrace_symbols_fd and pipes
159 avoiding functions that are not async-signal-safe, reformat
161 * runtime/main.c (store_exe_path): Try to check /proc/self/exe
164 2011-05-20 Janne Blomqvist <jb@gcc.gnu.org>
165 Uros Bizjak <ubizjak@gmail.com>
168 * configure.host: Swap order of glibc and x86 tests.
170 2011-05-20 Janne Blomqvist <jb@gcc.gnu.org>
172 * config/fpu-387.h (set_fpu): Use renamed inexact macro.
173 * config/fpu-aix.h (set_fpu): Clarify error messages, use renamed
174 inexact macro, set TRP_INEXACT for inexact exception instead of
176 * config/fpu-generic.h (set_fpu): Clarify error messages, use
177 renamed inexact macro.
178 * config/fpu-glibc.h (set_fpu): Likewise.
179 * config/fpu-sysv.h (set_fpu): Likewise.
181 2011-05-14 Tobias Burnus <burnus@net-b.de>
183 * runtime/stop.c (error_stop_string, error_stop_numeric):
184 Do not backtrace for ERROR STOP.
186 2011-05-14 Janne Blomqvist <jb@gcc.gnu.org>
189 * intrinsics/abort.c (abort): Call sys_abort().
190 * io/unix.c (st_vprintf): Call sys_abort().
191 * libgfortran.h (options_t): Remove dump_core member.
192 (handler): Rename to backtrace_handler.
193 (compile_options_t): Remove dump_core member.
195 (sys_abort): New function.
196 * runtime/backtrace.c (show_backtrace): Print a message if
197 backtrace is not available on target, update filter symbol name
198 due to backtrace_handler renaming.
199 * runtime/compile_options.c (backtrace_handler): New
200 implementation based on example in Glibc manual.
201 (set_options): Remove dump_core handling, make signal handler
203 (init_compile_options): Remove dump_core.
204 * runtime/environ.c (variable_table[]): Remove
205 GFORTRAN_ERROR_DUMPCORE element.
206 (show_variables): Update name, call exit().
207 * runtime/error.c (sys_exit): Remove.
208 (sys_abort): New function.
209 (recursion_check): Call sys_abort().
210 (os_error): Call exit().
211 (runtime_error): Likewise.
212 (runtime_error_at): Likewise.
213 (internal_error): Likewise.
214 (generate_error): Likewise.
215 (notify_std): Likewise.
216 * runtime/stop.c (stop_numeric): Call exit().
217 (stop_numeric_f08): Likewise.
218 (stop_string): Likewise.
219 (error_stop_string): Call sys_abort().
220 (error_stop_numeric): Print backtrace, exit with provided code.
222 2011-05-14 Janne Blomqvist <jb@gcc.gnu.org>
224 * io/unix.c (st_vprintf,st_printf): Move to runtime/error.c.
225 * libgfortran.h (struct options_t): Remove use_stderr field.
226 (st_vprintf,st_printf): Move prototypes.
227 (estr_write): New prototype.
228 * runtime/error.c (sys_exit): Use estr_write instead of st_printf.
229 (estr_write): New function.
230 (st_vprintf): Move from io/unix.c, use stack allocated buffer,
231 always output to stderr.
232 (st_printf): Move from io/unix.c.
233 (show_locus): Use a local variable instead of static.
234 (os_error): Use estr_write instead of st_printf.
235 (runtime_error): Likewise.
236 (runtime_error_at): Likewise.
237 (runtime_warning_at): Likewise.
238 (internal_error): Likewise.
239 (generate_error): Likewise.
240 (generate_warning): Likewise.
241 (notify_std): Likewise.
242 * runtime/pause.c (do_pause): Likewise.
243 (pause_string): Likewise.
244 * runtime/stop.c (stop_string): Likewise.
245 (error_stop_string): Likewise.
246 * config/fpu_aix.h (set_fpu): Likewise.
247 * config/fpu_generic.h (set_fpu): Likewise.
248 * config/fpu_glibc.h (set_fpu): Likewise.
249 * config/fpu-sysv.h (set_fpu): Likewise.
250 * runtime/backtrace.c (dump_glibc_backtrace): Likewise.
251 (show_backtrace): Likewise.
252 * runtime/environ.c (print_spaces): Likewise.
253 (show_string): Likewise.
254 (show_variables): Likewise.
255 (variable_table[]): Remove GFORTRAN_USE_STDERR entry.
257 2011-05-14 Tobias Burnus <burnus@net-b.de>
260 * intrinsics/execute_command_line.c (set_cmdstat): Don't abort if
261 synchronously executing with WAIT=.false.
262 (execute_command_line): Fix setting of cmdstat and exitstat.
264 2011-05-06 Tobias Burnus <burnus@net-b.de>
267 * caf/libcaf.h: Cleanup headers.
268 (_gfortran_caf_critical, _gfortran_caf_end_critical): Make stub.
269 (caf_register_t): New enum.
270 (_gfortran_caf_register, _gfortran_caf_deregister): New prototype.
271 * caf/single.c (_gfortran_caf_critical,
272 _gfortran_caf_end_critical): Remove.
273 (_gfortran_caf_register, _gfortran_caf_deregister): New functions.
274 * caf/mpi.c (_gfortran_caf_critical,
275 _gfortran_caf_end_critical): Remove.
276 (_gfortran_caf_register, _gfortran_caf_deregister): New functions.
277 (caf_world_window): Remove global variable.
278 (_gfortran_caf_init): Fix off-by-one error of this_image.
280 2011-05-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
283 * io/write_float.def (output_float): Adjust up and down rounding for
284 cases where 'd' = 0. Gather common code to one location.
286 2011-05-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
289 * io/write_float.def (output_float): Gather up integer declarations and
290 add new 'p' for scale factor. Use 'p' in place of the 'dtp' reference
291 everywhere. For ROUND_UP scan the digit string and only perform
292 rounding if something other than '0' is found.
294 2011-04-29 Janne Blomqvist <jb@gcc.gnu.org>
296 * io/unix.c (min): New macro.
297 (unpack_filename): Return errno number for errors.
298 (regular_file): Use appropriately sized buffer for path.
299 (compare_file_filename): Likewise.
300 (find_file): Likewise.
301 (delete_file): Likewise.
302 (file_exists): Likewise.
303 (file_size): Likewise.
304 (inquire_sequential): Likewise.
305 (inquire_direct): Likewise.
306 (inquire_formatted): Likewise.
307 (inquire_access): Likewise.
309 2011-04-29 Janne Blomqvist <jb@gcc.gnu.org>
312 * io/write.c (write_real, write_real_g0): Update comments.
314 2011-04-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
315 Janne Blomqvist <jb@gcc.gnu.org>
322 * io/write.c (write_d, write_e, write_f, write_en,
323 write_es): Add precision compemsation parameter to call.
324 (set_fnode_default): Adjust default widths to assure
325 round trip on write and read. (write_real): Adjust call to write_float.
326 (write_real_g0): Calculate compensation for extra precision and adjust
328 * io/write_float.def (output_float_FMT_G_): Use volatile rather than
329 asm volatile to avoid optimization issue. Correctly calculate the
330 number of blanks (nb) to be appended and simplify calculation logic.
331 (write_float): Increase MIN_FIELD_WIDTH by one to accomodate the new
332 default widths. Eliminate the code that attempted to reduce the
333 the precision used in later sprintf functions. Add call parameter to
334 compensate for extra precision.
336 2011-04-20 Jim Meyering <meyering@redhat.com>
338 * intrinsics/move_alloc.c (move_alloc): Remove useless
340 * io/fbuf.c (fbuf_destroy): Likewise.
341 * io/format.c (save_parsed_format): Likewise.
342 * io/open.c (already_open): Likewise.
343 * io/unit.c (free_internal_unit, close_unit_1): Likewise.
344 * io/unix.c (mem_close): Likewise.
346 2011-04-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
349 * io/write_float.def (output_float_FMT_G): Fix reversal in conditional.
350 Use asm volatile to mark temp variable, avoiding optimization errors.
352 2011-04-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
355 * io/write_float.def (output_float_FMT_G): Use current rounding mode
356 to set the rounding parameters. (output_float): Skip rounding
359 2011-04-16 Janne Blomqvist <jb@gcc.gnu.org>
361 * intrinsics/date_and_time.c (date_and_time): Remove sprintf CPP
363 * io/format.c (format_error): Use snprintf instead of sprintf.
364 * io/list_read.c: Move snprintf fallback macro to libgfortran.h.
365 (convert_integer): Use snprintf instead of sprintf.
366 (parse_repeat): Likewise.
367 (read_logical): Likewise.
368 (read_integer): Likewise.
369 (read_character): Likewise.
370 (parse_real): Likewise.
371 (read_complex): Likewise.
372 (read_real): Likewise.
373 (check_type): Likewise.
374 (nml_parse_qualifier): Add string length argument, use snprintf
376 (nml_get_obj_data): Use snprintf instead of sprintf.
377 * io/open.c (new_unit): Remove sprintf CPP branch, use snprintf
379 * io/transfer.c (require_type): Use snprintf instead of sprintf.
380 * io/unix.c (tempfile): Likewise.
381 * io/write.c (nml_write_obj): Likewise.
382 * io/write_float.def (output_float): Remove sprintf CPP branch,
383 use snprintf instead of sprintf.
384 * libgfortran.h: Add fallback snprintf macro from io/list_read.c.
385 * runtime/backtrace.c (show_backtrace): Remove sprintf CPP branch.
386 * runtime/main.c (store_exe_path): Use snprintf instead of
389 2011-04-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
392 * io/write_float.def (write_infnan): Set width properly for G0.
394 2011-04-15 Tobias Burnus <burnus@net-b.de>
397 * Makefile.am: Build and install caf/single.c as
399 * Makefile.in: Regenerate.
401 2011-04-15 Janne Blomqvist <jb@gcc.gnu.org>
404 * configure: Regenerated.
405 * config.h.in: Regenerated.
406 * acinclude.m4: Add alpha*-dec-osf* to gthread blacklist.
407 * configure.ac: Use separate symbol for clock_gettime in librt.
408 * intrinsics/system_clock.c: Use weakrefs only when needed and
411 2011-04-12 Janne Blomqvist <jb@gcc.gnu.org>
413 * configure.ac: Use AC_TYPE_* to make sure we have (u)intptr_t,
415 * libgfortran.h: Remove (u)intptr_t definitions, use ptrdiff_t for
416 index_type, change cshift0* prototypes.
417 * config.h.in: Regenerated.
418 * configure: Regenerated.
419 * intrinsics/cshift0.c (cshift0): Use ptrdiff_t instead of ssize_t.
420 * io/io.h (array_loop_spec): Use index_type instead of ssize_t.
421 * io/list_read.c (nml_parse_qualifier): Likewise.
422 * io/write.c (nml_write_obj): Likewise.
423 * m4/cshift0.c (cshift0_'rtype_code`): Likewise.
424 * generated/cshift0_*.c: Regenerated.
426 2011-04-12 Janne Blomqvist <jb@gcc.gnu.org>
428 * Makefile.am: Remove _GNU_SOURCE from AM_CPPFLAGS.
429 * Makefile.in: Regenerated.
431 2011-04-06 Tobias Burnus <burnus@net-b.de>
434 * caf/mpi.c (_gfortran_caf_init, _gfortran_caf_finalize):
435 Add global variable caf_mpi_initialized and use it for when
438 2011-04-04 Tobias Burnus <burnus@net-b.de>
440 * unix.c: Adapt stat DEFINEs since MinGW64 supports LFS.
441 (fallback_access, open_internal4, compare_file_filename,
442 find_file, file_size, inquire_sequential, inquire_direct,
443 inquire_formatted): Use "struct stat" instead of gfstat_t.
445 2011-03-27 Tobias Burnus <burnus@net-b.de>
448 * caf/libcaf.h: New - coarray communication library.
452 2011-03-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
455 * io/read.c (read_x): Re-implement using fbuf_getc.
457 2011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
460 * configure.ac (gfortran_use_symver): Handle --disable-symvers.
461 * configure: Regenerate.
463 2011-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
466 * io/io.h (convert_infnan): Declare.
467 * io/read.c (convert_infnan): New.
468 (read_f): Use convert_infnan to convert INFs and NANs.
469 * list_read.c (parse_real, read_real): Likewise.
471 2011-03-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
474 * io/unix.c (tempfile): Work around poor mktemp() implementations.
476 2011-03-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
479 * acinclude.m4: Don't use AC_TRY_ macros.
480 * configure.ac: Likewise.
481 * configure: Regenerate.
483 2011-03-12 Thomas Koenig <tkoenig@gcc.gnu.org>
486 * m4/ifunction.m4: If return array is empty, return.
487 * m4/ifunction_logical.m4: Likewise.
488 * generated/all_l16.c: Regenerated.
489 * generated/all_l1.c: Regenerated.
490 * generated/all_l2.c: Regenerated.
491 * generated/all_l4.c: Regenerated.
492 * generated/all_l8.c: Regenerated.
493 * generated/any_l16.c: Regenerated.
494 * generated/any_l1.c: Regenerated.
495 * generated/any_l2.c: Regenerated.
496 * generated/any_l4.c: Regenerated.
497 * generated/any_l8.c: Regenerated.
498 * generated/count_16_l.c: Regenerated.
499 * generated/count_1_l.c: Regenerated.
500 * generated/count_2_l.c: Regenerated.
501 * generated/count_4_l.c: Regenerated.
502 * generated/count_8_l.c: Regenerated.
503 * generated/maxloc1_16_i16.c: Regenerated.
504 * generated/maxloc1_16_i1.c: Regenerated.
505 * generated/maxloc1_16_i2.c: Regenerated.
506 * generated/maxloc1_16_i4.c: Regenerated.
507 * generated/maxloc1_16_i8.c: Regenerated.
508 * generated/maxloc1_16_r10.c: Regenerated.
509 * generated/maxloc1_16_r16.c: Regenerated.
510 * generated/maxloc1_16_r4.c: Regenerated.
511 * generated/maxloc1_16_r8.c: Regenerated.
512 * generated/maxloc1_4_i16.c: Regenerated.
513 * generated/maxloc1_4_i1.c: Regenerated.
514 * generated/maxloc1_4_i2.c: Regenerated.
515 * generated/maxloc1_4_i4.c: Regenerated.
516 * generated/maxloc1_4_i8.c: Regenerated.
517 * generated/maxloc1_4_r10.c: Regenerated.
518 * generated/maxloc1_4_r16.c: Regenerated.
519 * generated/maxloc1_4_r4.c: Regenerated.
520 * generated/maxloc1_4_r8.c: Regenerated.
521 * generated/maxloc1_8_i16.c: Regenerated.
522 * generated/maxloc1_8_i1.c: Regenerated.
523 * generated/maxloc1_8_i2.c: Regenerated.
524 * generated/maxloc1_8_i4.c: Regenerated.
525 * generated/maxloc1_8_i8.c: Regenerated.
526 * generated/maxloc1_8_r10.c: Regenerated.
527 * generated/maxloc1_8_r16.c: Regenerated.
528 * generated/maxloc1_8_r4.c: Regenerated.
529 * generated/maxloc1_8_r8.c: Regenerated.
530 * generated/maxval_i16.c: Regenerated.
531 * generated/maxval_i1.c: Regenerated.
532 * generated/maxval_i2.c: Regenerated.
533 * generated/maxval_i4.c: Regenerated.
534 * generated/maxval_i8.c: Regenerated.
535 * generated/maxval_r10.c: Regenerated.
536 * generated/maxval_r16.c: Regenerated.
537 * generated/maxval_r4.c: Regenerated.
538 * generated/maxval_r8.c: Regenerated.
539 * generated/minloc1_16_i16.c: Regenerated.
540 * generated/minloc1_16_i1.c: Regenerated.
541 * generated/minloc1_16_i2.c: Regenerated.
542 * generated/minloc1_16_i4.c: Regenerated.
543 * generated/minloc1_16_i8.c: Regenerated.
544 * generated/minloc1_16_r10.c: Regenerated.
545 * generated/minloc1_16_r16.c: Regenerated.
546 * generated/minloc1_16_r4.c: Regenerated.
547 * generated/minloc1_16_r8.c: Regenerated.
548 * generated/minloc1_4_i16.c: Regenerated.
549 * generated/minloc1_4_i1.c: Regenerated.
550 * generated/minloc1_4_i2.c: Regenerated.
551 * generated/minloc1_4_i4.c: Regenerated.
552 * generated/minloc1_4_i8.c: Regenerated.
553 * generated/minloc1_4_r10.c: Regenerated.
554 * generated/minloc1_4_r16.c: Regenerated.
555 * generated/minloc1_4_r4.c: Regenerated.
556 * generated/minloc1_4_r8.c: Regenerated.
557 * generated/minloc1_8_i16.c: Regenerated.
558 * generated/minloc1_8_i1.c: Regenerated.
559 * generated/minloc1_8_i2.c: Regenerated.
560 * generated/minloc1_8_i4.c: Regenerated.
561 * generated/minloc1_8_i8.c: Regenerated.
562 * generated/minloc1_8_r10.c: Regenerated.
563 * generated/minloc1_8_r16.c: Regenerated.
564 * generated/minloc1_8_r4.c: Regenerated.
565 * generated/minloc1_8_r8.c: Regenerated.
566 * generated/minval_i16.c: Regenerated.
567 * generated/minval_i1.c: Regenerated.
568 * generated/minval_i2.c: Regenerated.
569 * generated/minval_i4.c: Regenerated.
570 * generated/minval_i8.c: Regenerated.
571 * generated/minval_r10.c: Regenerated.
572 * generated/minval_r16.c: Regenerated.
573 * generated/minval_r4.c: Regenerated.
574 * generated/minval_r8.c: Regenerated.
575 * generated/product_c10.c: Regenerated.
576 * generated/product_c16.c: Regenerated.
577 * generated/product_c4.c: Regenerated.
578 * generated/product_c8.c: Regenerated.
579 * generated/product_i16.c: Regenerated.
580 * generated/product_i1.c: Regenerated.
581 * generated/product_i2.c: Regenerated.
582 * generated/product_i4.c: Regenerated.
583 * generated/product_i8.c: Regenerated.
584 * generated/product_r10.c: Regenerated.
585 * generated/product_r16.c: Regenerated.
586 * generated/product_r4.c: Regenerated.
587 * generated/product_r8.c: Regenerated.
588 * generated/sum_c10.c: Regenerated.
589 * generated/sum_c16.c: Regenerated.
590 * generated/sum_c4.c: Regenerated.
591 * generated/sum_c8.c: Regenerated.
592 * generated/sum_i16.c: Regenerated.
593 * generated/sum_i1.c: Regenerated.
594 * generated/sum_i2.c: Regenerated.
595 * generated/sum_i4.c: Regenerated.
596 * generated/sum_i8.c: Regenerated.
597 * generated/sum_r10.c: Regenerated.
598 * generated/sum_r16.c: Regenerated.
599 * generated/sum_r4.c: Regenerated.
600 * generated/sum_r8.c: Regenerated.
602 2011-03-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
605 * io/write_float.def (write_float): Change MIN_FIELD_WIDTH to 48.
607 2011-03-04 Janne Blomqvist <jb@gcc.gnu.org>
610 * intrinsics/ctime.c (strctime): Use builtins to check localtime_r
613 2011-03-04 Janne Blomqvist <jb@gcc.gnu.org>
616 * intrinsics/ctime.c (strctime): Don't use return value of
619 2011-02-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
622 * io/write_float.def (output_float): Move handling of w = 0 to after
623 output rounding. Check for zero and set zero_flag accordingly. Set
624 width according to zero_flag. Add better comments.
626 2011-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
629 * io/list_read.c (namelist_read): Intialize the error string buffere.
630 If pprev_nl was used during the previous namelist read and the rank
631 was zero, reset the pointer to NULL for the next namelist read.
633 2011-02-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
636 * unix.c (fallback_access): Fix file descriptor leaks.
638 2011-02-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
640 * acinclude.m4 (LIBGFOR_CHECK_FPSETMASK): Set shell variable
641 tested in configure.host.
642 * configure: Regenerate.
644 2011-02-24 Janne Blomqvist <jb@gcc.gnu.org>
647 * config.h.in: Regenerated.
648 * configure: Regenerated.
649 * configure.ac: Remove checks for ctime and ctime_r, add check for
651 * intrinsics/date_and_time.c (localtime_r): Move fallback
652 implementation to time_1.h.
653 * intrinsics/time_1.h (localtime_r): Fallback implementation.
654 * intrinsics/ctime.c: Include time_1.h.
655 (ctime_r): Remove fallback implementation.
656 (strctime): New function.
657 (fdate): Use strctime instead of ctime_r.
658 (fdate_sub): Likewise.
660 (ctime_sub): Likewise.
662 2011-02-24 Jakub Jelinek <jakub@redhat.com>
665 * io/transfer.c (read_sf): Call fbuf_getptr only at the end,
666 and subtract n, dtp->u.p.sf_seen_eor and seen_comma from it.
668 2011-02-24 Janne Blomqvist <jb@gcc.gnu.org>
671 * configure.ac: Add test for POSIX getpwuid_r.
672 * intrinsics/getlog.c (getlog): CPP test for
673 HAVE_POSIX_GETPWUID_R.
674 * config.h.in: Regenerated.
675 * configure: Regenerated.
677 2011-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
680 * io/write_float.def (output_float): Remove special case handling of
683 2011-02-23 Janne Blomqvist <jb@gcc.gnu.org>
684 Jerry DeLisle <jvdelisle@gcc.gnu.org>
687 * io/fbuf.h (fbuf_getptr): New inline function.
688 * io/transfer.c (read_sf): Use fbuf_getptr and fbuf_getc to scan
689 through the string instead of fbuf_read.
691 2011-02-22 Tobias Burnus <burnus@net-b.de>
692 Kai-Uwe Eckhardt <kuehro@gmx.de>
695 * intrinsics/c99_functions.c (roundl): Make C valid for
698 2011-02-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
701 * io/write_float.def (output_float): Adjust width for F0.d to
702 allow space for negative signs on zero.
704 2011-02-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
707 * io/list_read.c (read_logical): Check for end of line before calling
708 eat_line. (read_integer): Likewise. (parse_real): Don't unget the
709 separator. Check for end of line before calling eat_line.
710 (read_complex): Allow line-end before and after parenthesis and comma.
711 Check for end of line before calling eat_line. (read_real): Check for
712 end of line before calling eat_line.
714 2011-02-16 Jakub Jelinek <jakub@redhat.com>
717 * gfortran.map (GFORTRAN_1.4): Export
718 _gfortran_{m,s}i{all,any,parity}_i{1,2,4,8,16} and
719 _gfortran_{cshift0,eoshift{0,2}}_16_char4.
721 2011-02-15 Tobias Burnus <burnus@net-b.de>
725 * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Use check from
726 libquadmath, which uses more features.
727 * configure: Regenerate.
729 2011-02-14 Jakub Jelinek <jakub@redhat.com>
732 * io/write_float.def (DTOAQ): Use quadmath_snprintf instead of
733 quadmath_flt128tostr.
734 * io/transfer128.c (tmp2): Initialize to quadmath_snprintf instead
735 of quadmath_flt128tostr.
737 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
739 * Makefile.in: Regenerate.
740 * aclocal.m4: Likewise.
741 * configure: Likewise.
743 2011-02-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
746 * io/write_float.def (output_float): Eliminate some redundant code.
747 Adjust width for case of F0.X for values of zero and all other values.
748 Expand cases where '*' is set to give cleaner results.
750 2011-02-05 Janne Blomqvist <jb@gcc.gnu.org>
753 * intrinsics/time_1.h (GF_CLOCK_MONOTONIC): Move to system_clock.c.
754 (weak_gettime): Likewise.
755 (gf_gettime): Change API, move weak_gettime() usage to
757 * intrinsics/system_clock.c (GTHREAD_USE_WEAK): Define.
758 (gf_gettime_mono): New function.
759 (system_clock_4): Use gf_gettime_mono().
760 (system_clock_8): Likewise.
761 * intrinsics/date_and_time.c (date_and_time): Update gf_gettime()
764 2011-02-02 Janne Blomqvist <jb@gcc.gnu.org>
767 * configure: Regenerated.
768 * configure.ac: Don't add librt to LIBS.
769 * intrinsics/time_1.h (weak_gettime): Weakref trickery for
771 (gf_gettime): Use weak_gettime() instead of clock_gettime().
773 2011-02-01 Janne Blomqvist <jb@gcc.gnu.org>
775 * intrinsics/time_1.h: Include errno.h needed by fallbacks.
777 2011-01-31 Janne Blomqvist <jb@gcc.gnu.org>
779 * intrinsics/time_1.h: Fix definition of GF_CLOCK_MONOTONIC macro.
781 2011-01-31 Janne Blomqvist <jb@gcc.gnu.org>
783 * configure.ac: Check for clock_gettime().
784 * configure: Regenerated.
785 * config.h.in: Regenerated.
786 * intrinsics/time_1.h (__time_1): Rename to gf_cputime, add
788 (gf_gettime): New function.
789 * intrinsics/cpu_time.c (__cpu_time_1): Update to call gf_cputime.
790 * intrinsics/date_and_time.c (date_and_time): Use gf_gettime.
791 * intrinsics/dtime.c (dtime_sub): Use gf_cputime.
792 * intrinsics/etime.c (etime_sub): Use gf_cputime.
793 * intrinsics/system_clock.c (system_clock_4): Use gf_gettime.
794 (system_clock_8): Use gf_gettime, increase count rate to allow
795 nanosecond precision, remove overflow prone branch.
797 2011-01-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
800 * io/write_float.def (write_infnan): Use calculate_sign to determine
801 if the sign should be given and check field widths accordingly.
803 2011-01-29 Kai Tietz <kai.tietz@onevision.com>
805 * intrinsics/ctime.c (ctime_r): Improve implementation.
807 2011-01-27 Janne Blomqvist <jb@gcc.gnu.org>
810 * config.h.in: Regenerated.
811 * configure: Regenerated.
812 * configure.ac: Add check for ctime_r().
813 * intrinsics/ctime.c (ctime_r): Fallback implementation.
814 (fdate): Use ctime_r() instead of ctime().
815 (fdate_sub): Likewise.
817 (ctime_sub): Likewise.
819 2011-01-27 Janne Blomqvist <jb@gcc.gnu.org>
822 * config.h.in: Regenerated.
823 * configure: Regenerated.
824 * configure.ac: Add check for ttyname_r.
825 * io/unix.h: Add TTY_NAME_MAX, change stream_ttyname prototype.
826 * io/unix.c (stream_ttyname): Use ttyname_r if available, conform
828 * io/inquire.c (inquire_via_unit): Use changed stream_ttyname.
829 * io/intrinsics.c (ttynam_sub): Likewise.
832 2011-01-27 Janne Blomqvist <jb@gcc.gnu.org>
835 * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS to enable common
837 * config.h.in: Regenerate.
838 * configure: Regenerate.
840 2011-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
843 * io/write_float.def (write_infnan): Adjust processor selected width
846 2011-01-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
849 * io/write_float.def (output_float): Return SUCCESS or FAILURE and use
850 the result to set the padding.
852 2011-01-26 Kai Tietz <kai.tietz@onevision.com>
854 * intrinsics/getlog.c (getlog): Fix label/statement issue.
856 2011-01-25 Janne Blomqvist <jb@gcc.gnu.org>
859 * config.h.in: Regenerated.
860 * configure: Regenerated.
861 * configure.ac: Add check for getpwuid_r.
862 * intrinsics/getlog.c (getlog): Use getpwuid_r() if available.
864 2011-01-22 Janne Blomqvist <jb@gcc.gnu.org>
867 * config.h.in: Regenerated.
868 * configure: Regenerated.
869 * configure.ac: Check presence of strerror_r.
870 * intrinsics/gerror.c (gerror): Use gf_strerror, modify logic.
871 * io/unix.c (get_oserror): Remove.
872 * libgfortran.h (gf_strerror): Add prototype.
873 (get_oserror): Remove prototype.
874 * runtime/error.c (gf_strerror): New function.
875 (os_error): Use gf_strerror instead of get_oserror.
876 (generate_errror): Likewise.
878 2011-01-17 Janne Blomqvist <jb@gcc.gnu.org>
881 * io/unix.c (tempfile): Set opp->file and opp->file_len also if an
884 2011-01-16 Jakub Jelinek <jakub@redhat.com>
887 * io/write_float.def (DTOAQ): Use quadmath_flt128tostr
888 instead of quadmath_dtoa.
889 * io/transfer128.c (tmp1, tmp2): New variables, bring in
890 strtoflt128 and quadmath_flt128tostr.
891 (transfer_real128, transfer_real128_write, transfer_complex128,
892 transfer_complex128_write): Remove tmp1/tmp2 variables.
893 * io/read.c (convert_real): Use strtoflt128 instead of
894 quadmath_strtopQ, adjust for the changed arguments and return
897 2011-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
900 * io/unix.c (unpack_filename): Return non-zero if the filename passed
903 2011-01-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
906 * io/list_read.c (namelist_read): Remove calls to hit_eof to avoid the
907 duplicate calls via next_record.
910 Copyright (C) 2011 Free Software Foundation, Inc.
912 Copying and distribution of this file, with or without modification,
913 are permitted in any medium without royalty provided the copyright
914 notice and this notice are preserved.