1 2007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
4 * intrinsics/pack_generic.c (pack): Change type of mask argument
5 to gfc_array_l1 * in prototype and function.
7 * intrinsics/unpack_generic.c (unpack1): Likewise.
8 (unpack1_char): Likewise.
10 (unpack0_char): Likewise.
12 2007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
15 * runtime/error.c: If there was a previous error, don't
16 mask it with another error mesage, EOF or EOR condition.
18 2007-12-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
21 * io/transfer.c (read_sf): Check if readlen was less than the requested
22 number of bytes to read and if so, generate error.
24 2007-12-25 Daniel Franke <franke.daniel@gmail.com>
27 * intrinsics/cpu_time.c: Moved code commonly usable for CPU_TIME,
28 DTIME and ETIME to ...
29 * intrinsics/time_1.h: ... here.
30 * intrinsics/dtime.c: New file.
31 * intrinsics/etime.c: Newly implemented using the common
32 time-aquisition function from time_1.h.
33 * gfortran.map (_gfortran_dtime, _gfortran_dtime_sub): New.
34 * Makefile.am: Added new file.
35 * Makefile.in: Regenerated.
36 * configure: Regenerated.
38 2007-12-25 Thomas Koenig <tkoenig@gcc.gnu.org>
41 * m4/matmull.m4: Multiply xstride and ystride by correct kind.
42 * generated/matmul_l4.c: Regenerated.
43 * generated/matmul_l8.c: Regenerated.
44 * generated/matmul_l16.c: Regenerated.
46 2007-12-19 Tobias Burnus <burnus@net-b.de>
49 * io/list_read.c (eat_line): Move up in the file.
50 (eat_separator): In namelist mode, skip over comment lines.
52 2007-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
55 * io/list_read.c (read_real): Handle intervening line ends and spaces.
56 (get_name): Don't push separators to saved_string.
57 (eat_separator): If in namelist mode eat spaces and line ends as well.
59 2007-12-13 Thomas Koenig <tkoenig@gcc.gnu.org>
64 * io/io.h: Add previous_nonadvancing_write to gfc_unit.
65 Add prototype for finish_last_advance_record.
66 * io/file_pos.c (st_backspace): Generate error if backspace is
67 attempted for direct access or unformatted stream.
68 If there are bytes left from a previous ADVANCE="no", write
69 them out before performing the backspace.
70 (st_endfile): Generate error if endfile is attempted for
72 If there are bytes left from a previous ADVANCE="no", write
73 them out before performing the endfile.
74 (st_rewind): Generate error if rewind is attempted for
76 * unit.c (close_unit_1): Move functionality to write
77 previously written bytes to...
78 (finish_last_advance_record): ... here.
79 * transfer.c (data_transfer_init): If reading, reset
80 previous_nonadvancing_write.
81 (finalize_transfer): Set the previous_noadvancing_write
82 flag if we are writing and ADVANCE="no" was specified.
83 Only call next_record() if advance="no" wasn't specified.
85 2007-12-13 Tobias Burnus <burnus@net-b.de>
88 * io/list_read.c (read_real): Fix unwinding for namelists.
90 2007-12-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
93 * io/read.c (convert_real, read_l, read_decimal, read_radix, read_f):
94 Call next_record after bad read or overflow error.
96 2007-12-09 Tobias Burnus <burnus@net-b.de>
99 * io/list_read.c (parse_real): Remove superfluous "goto bad;".
101 2007-12-08 Tobias Burnus <burnus@net-b.de>
104 * io/list_read.c (parse_real, read_real): Support NaN/Infinity.
106 2007-12-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
107 Thomas Koenig <tkoenig@gcc.gnu.org>
110 * io/transfer.c (read_block, read_block_direct, write_block, write_buf):
111 Don't seek if file position is already there for STREAM I/O.
112 (finalize_transfer): For STREAM I/O don't flush unless the file position
113 has moved past the start position before the transfer.
115 2007-12-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
117 * intrinsic/stat.c (stat_i4_sub_0, stat_i8_sub_0): Mark parameter
118 with unused attribute.
119 * intrinsics/system_clock.c (system_clock_4, system_clock_8):
120 Remove unused variable.
121 * intrinsics/umask.c: Include unistd.h.
123 2007-11-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
126 * io/list_read.c (read_character): When reading an unquoted string,
127 return if special characters that could signify the end of the namelist
128 read are encountered.
130 2007-11-29 Steven G. Kargl <kargls@comcast.net>
133 * libgfortran/gfortran.map: Add tgammaf, tgamma, lgamma, and lgammaf.
134 * gfortran.dg/gamma_5.f90: Remove xfail.
136 2007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
140 * intrinsics/c99_functions.c (tgamma, tgammaf, lgamma, lgammaf):
141 New fallback functions.
142 * c99_protos.h (tgamma, tgammaf, lgamma, lgammaf): New prototypes.
143 * configure.ac: Add checks for tgamma, tgammaf, tgammal, lgamma,
145 * config.h.in: Regenerate.
146 * configure: Regenerate.
148 2007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
150 * mk-kinds-h.sh: Change sed syntax.
152 2007-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
155 * io/transfer.c (finalize_transfer): Revert previous patch.
157 2007-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
160 * io/transfer.c (finalize_transfer): Do not flush for
161 unformatted STREAM I/O.
163 2007-10-27 Tobias Burnus <burnus@net-b.de>
165 * mk-kinds-h.sh: Change LANG=C to LC_ALL=C.
167 2007-10-26 Tobias Burnus <burnus@net-b.de>
169 * mk-kinds-h.sh: Add "LANG=C".
171 2007-10-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
173 * libgfortran.h (GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS,
174 GFC_REAL_*_RADIX): Remove.
175 * mk-kinds-h.sh: Define GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS and
176 GFC_REAL_*_RADIX. Don't define GFC_REAL_LARGEST_FORMAT and
179 2007-10-19 Ben Elliston <bje@au.ibm.com>
181 * intrinsics/signal.c (alarm_sub_i4): Mark conditionally unused
182 parameters with __attribute__ ((unused)).
183 (alarm_sub_i8): Likewise.
184 (alarm_sub_int_i4): Likewise.
185 (alarm_sub_int_i8): Likewise.
187 2007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
188 Jerry DeLisle <jvdelisle@gcc.gnu.org>
191 * libgfortran.h: Add unbuffered_preconnected.
192 * io/unix.c (output_stream): Set stream unbuffered flag if
193 options.unbuffered_preconnected has been set.
194 (error_stream): Ditto.
195 * runtime/environ.c (variable_table): Add to environment variable table
196 the entry: GFORTRAN_UNBUFFERED_PRECONNECTED.
198 2007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
201 * runtime/backtrace.c (local_strcasestr): Protect by appropriate
203 * runtime/main.c (cleanup): Cast argument to free.
204 * intrinsics/spread_generic.c (spread_internal): Match runtime_error
205 arguments and format.
206 * intrinsics/signal.c (alarm_sub_int_i4, alarm_sub_int_i8): Cast
207 pointers to avoid warnings.
209 2007-10-18 Ben Elliston <bje@au.ibm.com>
211 * runtime/environ.c (init_choice): Remove unused function.
212 (show_choice): Likewise.
214 (FP_ROUND_NEAREST, FP_ROUND_UP, FP_ROUND_DOWN, FP_ROUND_ZERO):
216 (precision, signal_choices): Remove.
218 2007-10-15 Christopher D. Rickett <crickett@lanl.gov>
221 * libgfortran/intrinsics/iso_c_binding.c: Remove c_associated_1
223 * libgfortran/intrinsics/iso_c_binding.h: Ditto.
224 * libgfortran/gfortran.map: Ditto.
226 2007-10-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
229 * io/inquire.c (inquire_via_unit): If inquiring by unit, check for
230 an error condition from the IOSTAT variable and set EXIST to false if
231 there was a bad unit number.
233 2007-10-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
236 * io/list_read.c (nml_parse_qualifier): Add character specific error
237 messages. Check for proper form of sub-string qualifiers. Return the
238 parsed_rank flag indicating a non-zero rank qualifier.
239 (nml_get_obj_data): Count the instances of non-zero rank qualifiers.
240 Issue an error if more that one non-zero rank qualifier is found.
242 2007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
245 * io/list_read.c (read_character): Use line_buffer to scan ahead for
246 object name or string when no delimiter is found.
248 2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
251 * runtime/environ.c (init_mem, show_mem, init_round, show_round,
252 init_precision, show_precision, init_signal, show_signal): Remove.
253 (variable_table): Remove GFORTRAN_MEM_INIT, GFORTRAN_MEM_CHECK,
254 GFORTRAN_SIGHUP, GFORTRAN_SIGINT, GFORTRAN_FPU_ROUND and
255 GFORTRAN_FPU_PRECISION.
256 * libgfortran.h (options_t): Remove mem_check, fpu_round,
257 fpu_precision, sighup, sigint, allocate_init_flag and
260 2007-10-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
263 * io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
264 and quote value in check of first character in string.
266 2007-10-02 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
269 * io/write.c (write_real): Widen the default formats.
271 2007-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
274 * io/list_read.c (next_char): Interpret encountering the end of file the
275 first time as an end of line. Subsequent reads give EOF error.
277 2007-09-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
280 * io/list_read.c (read_character): Revert r128057.
282 2007-09-21 Bernhard Fischer <aldot>
285 * (configure.ac): Add --enable-intermodule for onestep build.
286 * (Makefile.am): Handle onestep build.
287 * (configure, Makefile.in): Regenerate.
289 2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
292 * intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate.
294 2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
297 * io/unix.c (id_from_handle, id_from_path, id_from_fd): New
299 (compare_file_filename, find_file, find_file0): Use the new
302 2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
304 * acinclude.m4 (LIBGFOR_TARGET_ILP32): Remove test.
305 * configure.ac: Don't call LIBGFOR_TARGET_ILP32.
306 * configure: Regenerate.
307 * config.h.in: Regenerate.
309 2007-09-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
312 * runtime/compile_options.c (set_options): Fix typo.
313 * runtime/main.c (store_exe_path): If getcwd is not available,
315 * intrinsics/getcwd.c: Same thing here.
316 * io/unix.c (fallback_access): New fallback function for access.
317 (fix_fd): Don't use dup if it's not available.
318 * configure.ac: Check for dup and getcwd.
319 * configure: Regenerate.
320 * config.h.in: Regenerate.
322 2007-09-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
324 * io/io.h: Include libgfortran.h first.
326 2007-09-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
329 * runtime/select.c (select_string): Initialize default_jump.
331 2007-09-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
334 * io/filepos.c (st_backspace): Don't truncate when already at the end
337 2007-09-07 Uros Bizjak <ubizjak@gmail.com>
339 * config/fpu-387.h: Include cpuid.h.
340 (set_fpu): Use __get_cpuid to check for SSE.
342 2007-09-06 Thomas Koenig <tkoenig@gcc.gnu.org>
345 * intrinsics/spread_generic.c(spread_internal): Enable
346 bounds checking by comparing extents if the bounds_check
347 option has been set. If any extent is <=0, return early.
349 2007-09-06 David Edelsohn <edelsohn@gnu.org>
351 * libgfortran.h: Include config.h first.
352 * io/io.h (struct stream): Rename truncate to trunc.
353 * io/unix.c (fd_open): Same.
354 (open_internal): Same.
356 2007-09-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
359 * io/write.c (nml_write_obj): Set the delimiter correctly before
360 calling write_character. (namelist_write): Clean up the code a little
361 and add comments to clarify what its doing.
363 2007-09-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
366 * io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
367 new file write_float.def. Include write_float.def.
368 (extract_real): Delete. (calculate_sign): Delete.
369 (calculate_exp): Delete. (calculate_G_format): Delete.
370 (output_float): Delete. (write_float): Delete.
371 * io/write_float.def (calculate_sign): Added.
372 (output_float): Refactored to be independent of kind and added to this
373 file for inclusion. (write_infnan): New function to write "Infinite"
374 or "NaN" depending on flags passed, independent of kind.
375 (CALCULATE_EXP): New macro to build kind specific functions. Use it.
376 (OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
377 (DTOA, DTOAL): Macros to implement "decimal to ascii".
378 (WRITE_FLOAT): New macro for kind specific write_float functions.
379 (write_float): Revised function to determine kind and use WRITE_FLOAT
380 to implement kind specific output.
382 2007-09-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
385 * io/list_read.c (read_character): Use DELIM_APOSTROPHE and
386 DELIM_QUOTE in check of first character in string.
388 2007-09-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
391 * libgfortran.h: Include gcc/fortran/libgfortran.h.
392 Remove M_PI, GFC_MAX_DIMENSIONS, GFC_DTYPE_*, GFC_NUM_RANK_BITS,
393 error_codes, GFC_STD_*, GFC_FPE_* and unit_convert.
394 * runtime/environ.c (variable_table): Use GFC_*_UNIT_NUMBER instead
395 of hardcoded constants.
396 (do_parse, init_unformatted): Use GFC_CONVERT_* macros instead of
398 * runtime/string.c (find_option): Use LIBERROR_BAD_OPTION instead
400 * runtime/error.c (translate_error, generate_error): Use
401 LIBERROR_* macros instead of ERROR_*.
402 * io/file_pos.c (formatted_backspace, unformatted_backspace,
403 st_backspace, st_rewind, st_flush): Rename macros.
404 * io/open.c (convert_opt, edit_modes, new_unit, already_open,
406 * io/close.c (st_close): Likewise.
407 * io/list_read.c (next_char, convert_integer, parse_repeat,
408 read_logical, read_integer, read_character, parse_real,
409 check_type, list_formatted_read_scalar, namelist_read,
410 nml_err_ret): Likewise.
411 * io/read.c (convert_real, read_l, read_decimal, read_radix,
413 * io/inquire.c (inquire_via_unit): Likewise.
414 * io/unit.c (get_internal_unit): Likewise.
415 * io/transfer.c (read_sf, read_block, read_block_direct,
416 write_block, write_buf, unformatted_read, unformatted_write,
417 formatted_transfer_scalar, us_read, us_write, data_transfer_init,
418 skip_record, next_record_r, write_us_marker, next_record_w_unf,
419 next_record_w, finalize_transfer, st_read, st_write_done):
421 * io/format.c (format_error): Likewise.
423 2007-08-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
425 * m4/minloc1.m4: Update copyright year and ajust headers order.
426 * m4/maxloc1.m4: Likewise.
427 * m4/in_pack.m4: Likewise.
428 * m4/sum.m4: Likewise.
429 * m4/fraction.m4: Likewise.
430 * m4/all.m4: Likewise.
431 * m4/set_exponent.m4: Likewise.
432 * m4/transpose.m4: Likewise.
433 * m4/eoshift1.m4: Likewise.
434 * m4/spacing.m4: Likewise.
435 * m4/eoshift3.m4: Likewise.
436 * m4/minval.m4: Likewise.
437 * m4/count.m4: Likewise.
438 * m4/maxval.m4: Likewise.
439 * m4/exponent.m4: Likewise.
440 * m4/shape.m4: Likewise.
441 * m4/head.m4: Likewise.
442 * m4/cshift1.m4: Likewise.
443 * m4/minloc0.m4: Likewise.
444 * m4/nearest.m4: Likewise.
445 * m4/maxloc0.m4: Likewise.
446 * m4/pow.m4: Likewise.
447 * m4/in_unpack.m4: Likewise.
448 * m4/matmull.m4: Likewise.
449 * m4/product.m4: Likewise.
450 * m4/reshape.m4: Likewise.
451 * m4/any.m4: Likewise.
452 * m4/rrspacing.m4: Likewise.
453 * m4/matmul.m4: Likewise.
454 * runtime/backtrace.c: Likewise.
455 * runtime/environ.c: Likewise.
456 * runtime/in_pack_generic.c: Likewise.
457 * runtime/compile_options.c: Likewise.
458 * runtime/in_unpack_generic.c: Likewise.
459 * runtime/main.c: Likewise.
460 * runtime/stop.c: Likewise.
461 * runtime/string.c: Likewise.
462 * runtime/memory.c: Likewise.
463 * runtime/error.c: Likewise.
464 * runtime/pause.c: Likewise.
465 * intrinsics/ierrno.c: Likewise.
466 * intrinsics/system_clock.c: Likewise.
467 * intrinsics/cshift0.c: Likewise.
468 * intrinsics/unlink.c: Likewise.
469 * intrinsics/ctime.c: Likewise.
470 * intrinsics/etime.c: Likewise.
471 * intrinsics/cpu_time.c: Likewise.
472 * intrinsics/malloc.c: Likewise.
473 * intrinsics/hostnm.c: Likewise.
474 * intrinsics/sleep.c: Likewise.
475 * intrinsics/exit.c: Likewise.
476 * intrinsics/perror.c: Likewise.
477 * intrinsics/transpose_generic.c: Likewise.
478 * intrinsics/pack_generic.c: Likewise.
479 * intrinsics/spread_generic.c: Likewise.
480 * intrinsics/stat.c: Likewise.
481 * intrinsics/string_intrinsics.c: Likewise.
482 * intrinsics/getcwd.c: Likewise.
483 * intrinsics/date_and_time.c: Likewise.
484 * intrinsics/unpack_generic.c: Likewise.
485 * intrinsics/move_alloc.c: Likewise.
486 * intrinsics/getlog.c: Likewise.
487 * intrinsics/eoshift0.c: Likewise.
488 * intrinsics/eoshift2.c: Likewise.
489 * intrinsics/reshape_generic.c: Likewise.
490 * intrinsics/system.c: Likewise.
491 * intrinsics/iso_c_binding.c: Likewise.
492 * intrinsics/env.c: Likewise.
493 * intrinsics/kill.c: Likewise.
494 * intrinsics/reshape_packed.c: Likewise.
495 * intrinsics/time.c: Likewise.
496 * intrinsics/gerror.c: Likewise.
497 * intrinsics/access.c: Likewise.
498 * intrinsics/fnum.c: Likewise.
499 * intrinsics/abort.c: Likewise.
500 * intrinsics/rename.c: Likewise.
501 * intrinsics/signal.c: Likewise.
502 * intrinsics/symlnk.c: Likewise.
503 * intrinsics/random.c: Likewise.
504 * intrinsics/umask.c: Likewise.
505 * intrinsics/getXid.c: Likewise.
506 * intrinsics/rand.c: Likewise.
507 * intrinsics/chdir.c: Likewise.
508 * intrinsics/chmod.c: Likewise.
509 * intrinsics/clock.c: Likewise.
510 * intrinsics/args.c: Likewise.
511 * intrinsics/link.c: Likewise.
512 * c99_protos.h: Likewise.
513 * config/fpu-387.h: Likewise.
514 * config/fpu-aix.h: Likewise.
515 * config/fpu-sysv.h: Likewise.
516 * config/fpu-generic.h: Likewise.
517 * config/fpu-glibc.h: Likewise.
518 * io/file_pos.c: Likewise.
519 * io/open.c: Likewise.
520 * io/size_from_kind.c: Likewise.
521 * io/close.c: Likewise.
522 * io/list_read.c: Likewise.
523 * io/read.c: Likewise.
524 * io/inquire.c: Likewise.
525 * io/unit.c: Likewise.
526 * io/unix.c: Likewise.
527 * io/transfer.c: Likewise.
528 * io/intrinsics.c: Likewise.
529 * io/format.c: Likewise.
530 * io/lock.c: Likewise.
531 * io/write.c: Likewise.
532 * io/write_float.def: Likewise.
534 * generated/minval_r8.c: Regenerate.
535 * generated/minloc1_16_r16.c: Regenerate.
536 * generated/maxloc1_4_r8.c: Regenerate.
537 * generated/sum_i8.c: Regenerate.
538 * generated/eoshift3_4.c: Regenerate.
539 * generated/transpose_c8.c: Regenerate.
540 * generated/any_l16.c: Regenerate.
541 * generated/eoshift1_8.c: Regenerate.
542 * generated/pow_r8_i8.c: Regenerate.
543 * generated/reshape_r16.c: Regenerate.
544 * generated/pow_i4_i16.c: Regenerate.
545 * generated/maxval_i2.c: Regenerate.
546 * generated/product_r4.c: Regenerate.
547 * generated/maxloc1_8_i4.c: Regenerate.
548 * generated/exponent_r16.c: Regenerate.
549 * generated/maxloc0_4_r4.c: Regenerate.
550 * generated/fraction_r16.c: Regenerate.
551 * generated/in_unpack_i8.c: Regenerate.
552 * generated/matmul_r8.c: Regenerate.
553 * generated/product_i2.c: Regenerate.
554 * generated/fraction_r4.c: Regenerate.
555 * generated/minloc0_4_r16.c: Regenerate.
556 * generated/reshape_c4.c: Regenerate.
557 * generated/minloc0_4_i1.c: Regenerate.
558 * generated/maxloc0_4_r16.c: Regenerate.
559 * generated/maxloc0_4_i2.c: Regenerate.
560 * generated/minloc1_8_r16.c: Regenerate.
561 * generated/maxloc1_8_r16.c: Regenerate.
562 * generated/set_exponent_r8.c: Regenerate.
563 * generated/in_unpack_i16.c: Regenerate.
564 * generated/transpose_c16.c: Regenerate.
565 * generated/maxloc0_8_i8.c: Regenerate.
566 * generated/pow_c4_i8.c: Regenerate.
567 * generated/sum_r16.c: Regenerate.
568 * generated/sum_i1.c: Regenerate.
569 * generated/minloc1_4_r8.c: Regenerate.
570 * generated/transpose_r10.c: Regenerate.
571 * generated/pow_i8_i4.c: Regenerate.
572 * generated/maxloc1_16_r16.c: Regenerate.
573 * generated/minloc1_16_i4.c: Regenerate.
574 * generated/maxloc1_16_i4.c: Regenerate.
575 * generated/minloc0_16_i8.c: Regenerate.
576 * generated/maxloc0_16_i8.c: Regenerate.
577 * generated/nearest_r8.c: Regenerate.
578 * generated/spacing_r16.c: Regenerate.
579 * generated/transpose_i8.c: Regenerate.
580 * generated/count_16_l16.c: Regenerate.
581 * generated/maxval_r16.c: Regenerate.
582 * generated/count_8_l8.c: Regenerate.
583 * generated/product_c10.c: Regenerate.
584 * generated/minloc1_8_i4.c: Regenerate.
585 * generated/minloc0_16_i16.c: Regenerate.
586 * generated/matmul_r16.c: Regenerate.
587 * generated/eoshift1_16.c: Regenerate.
588 * generated/minloc0_4_r4.c: Regenerate.
589 * generated/pow_c16_i16.c: Regenerate.
590 * generated/set_exponent_r10.c: Regenerate.
591 * generated/pow_i16_i16.c: Regenerate.
592 * generated/product_c4.c: Regenerate.
593 * generated/sum_r4.c: Regenerate.
594 * generated/pow_c16_i4.c: Regenerate.
595 * generated/rrspacing_r10.c: Regenerate.
596 * generated/in_pack_c16.c: Regenerate.
597 * generated/minloc0_4_i2.c: Regenerate.
598 * generated/maxloc0_8_i1.c: Regenerate.
599 * generated/reshape_i4.c: Regenerate.
600 * generated/minloc0_8_i8.c: Regenerate.
601 * generated/matmul_c8.c: Regenerate.
602 * generated/spacing_r4.c: Regenerate.
603 * generated/in_pack_c4.c: Regenerate.
604 * generated/all_l16.c: Regenerate.
605 * generated/minloc1_16_r10.c: Regenerate.
606 * generated/sum_i2.c: Regenerate.
607 * generated/minloc0_16_i1.c: Regenerate.
608 * generated/reshape_c16.c: Regenerate.
609 * generated/maxloc0_16_i1.c: Regenerate.
610 * generated/maxloc1_8_r8.c: Regenerate.
611 * generated/minval_i16.c: Regenerate.
612 * generated/reshape_r10.c: Regenerate.
613 * generated/exponent_r10.c: Regenerate.
614 * generated/maxval_i4.c: Regenerate.
615 * generated/any_l4.c: Regenerate.
616 * generated/minval_i8.c: Regenerate.
617 * generated/maxloc1_4_i8.c: Regenerate.
618 * generated/fraction_r10.c: Regenerate.
619 * generated/maxloc0_16_i16.c: Regenerate.
620 * generated/shape_i4.c: Regenerate.
621 * generated/pow_r16_i8.c: Regenerate.
622 * generated/maxloc0_8_r4.c: Regenerate.
623 * generated/rrspacing_r8.c: Regenerate.
624 * generated/pow_c10_i4.c: Regenerate.
625 * generated/minloc1_4_i16.c: Regenerate.
626 * generated/minloc0_4_r10.c: Regenerate.
627 * generated/maxloc1_4_i16.c: Regenerate.
628 * generated/minloc0_8_i16.c: Regenerate.
629 * generated/maxloc0_4_r10.c: Regenerate.
630 * generated/maxloc0_8_i16.c: Regenerate.
631 * generated/minloc1_8_r10.c: Regenerate.
632 * generated/product_i4.c: Regenerate.
633 * generated/minloc0_16_r4.c: Regenerate.
634 * generated/sum_c16.c: Regenerate.
635 * generated/maxloc1_8_r10.c: Regenerate.
636 * generated/maxloc0_16_r4.c: Regenerate.
637 * generated/transpose_c10.c: Regenerate.
638 * generated/minloc1_16_r8.c: Regenerate.
639 * generated/minloc0_8_i1.c: Regenerate.
640 * generated/maxloc0_4_i4.c: Regenerate.
641 * generated/transpose_r4.c: Regenerate.
642 * generated/maxloc1_16_r8.c: Regenerate.
643 * generated/pow_i16_i8.c: Regenerate.
644 * generated/cshift1_4.c: Regenerate.
645 * generated/maxloc0_8_i2.c: Regenerate.
646 * generated/sum_r10.c: Regenerate.
647 * generated/nearest_r16.c: Regenerate.
648 * generated/sum_c4.c: Regenerate.
649 * generated/maxloc1_16_r10.c: Regenerate.
650 * generated/count_4_l16.c: Regenerate.
651 * generated/pow_c8_i8.c: Regenerate.
652 * generated/matmul_i8.c: Regenerate.
653 * generated/in_pack_i4.c: Regenerate.
654 * generated/pow_i4_i8.c: Regenerate.
655 * generated/minloc0_16_i2.c: Regenerate.
656 * generated/minloc1_8_r8.c: Regenerate.
657 * generated/maxloc0_16_i2.c: Regenerate.
658 * generated/exponent_r4.c: Regenerate.
659 * generated/spacing_r10.c: Regenerate.
660 * generated/matmul_c16.c: Regenerate.
661 * generated/pow_c4_i16.c: Regenerate.
662 * generated/maxval_r10.c: Regenerate.
663 * generated/count_4_l4.c: Regenerate.
664 * generated/shape_i16.c: Regenerate.
665 * generated/minval_i1.c: Regenerate.
666 * generated/maxloc1_4_i1.c: Regenerate.
667 * generated/matmul_r10.c: Regenerate.
668 * generated/minloc1_4_i8.c: Regenerate.
669 * generated/pow_r10_i8.c: Regenerate.
670 * generated/minloc0_8_r4.c: Regenerate.
671 * generated/in_unpack_c4.c: Regenerate.
672 * generated/matmul_l4.c: Regenerate.
673 * generated/product_i16.c: Regenerate.
674 * generated/minloc0_16_r16.c: Regenerate.
675 * generated/reshape_r8.c: Regenerate.
676 * generated/pow_r10_i16.c: Regenerate.
677 * generated/all_l4.c: Regenerate.
678 * generated/in_pack_c10.c: Regenerate.
679 * generated/minloc0_4_i4.c: Regenerate.
680 * generated/minloc0_8_i2.c: Regenerate.
681 * generated/matmul_i1.c: Regenerate.
682 * generated/reshape_c10.c: Regenerate.
683 * generated/minval_r4.c: Regenerate.
684 * generated/maxloc1_4_r4.c: Regenerate.
685 * generated/pow_r8_i16.c: Regenerate.
686 * generated/sum_i4.c: Regenerate.
687 * generated/maxval_r8.c: Regenerate.
688 * generated/count_16_l8.c: Regenerate.
689 * generated/transpose_c4.c: Regenerate.
690 * generated/eoshift1_4.c: Regenerate.
691 * generated/eoshift3_8.c: Regenerate.
692 * generated/minval_r16.c: Regenerate.
693 * generated/minloc1_4_i1.c: Regenerate.
694 * generated/minval_i2.c: Regenerate.
695 * generated/maxloc1_4_i2.c: Regenerate.
696 * generated/pow_i8_i16.c: Regenerate.
697 * generated/product_r8.c: Regenerate.
698 * generated/maxloc1_8_i8.c: Regenerate.
699 * generated/maxloc0_4_r8.c: Regenerate.
700 * generated/maxloc0_16_r16.c: Regenerate.
701 * generated/in_unpack_i4.c: Regenerate.
702 * generated/matmul_r4.c: Regenerate.
703 * generated/sum_c10.c: Regenerate.
704 * generated/minloc1_4_r16.c: Regenerate.
705 * generated/fraction_r8.c: Regenerate.
706 * generated/maxloc1_4_r16.c: Regenerate.
707 * generated/set_exponent_r4.c: Regenerate.
708 * generated/minloc0_8_r16.c: Regenerate.
709 * generated/in_unpack_c16.c: Regenerate.
710 * generated/reshape_c8.c: Regenerate.
711 * generated/maxloc0_8_r16.c: Regenerate.
712 * generated/nearest_r10.c: Regenerate.
713 * generated/maxloc0_8_i4.c: Regenerate.
714 * generated/pow_c4_i4.c: Regenerate.
715 * generated/matmul_i2.c: Regenerate.
716 * generated/minloc1_4_r4.c: Regenerate.
717 * generated/transpose_i16.c: Regenerate.
718 * generated/matmul_c10.c: Regenerate.
719 * generated/minloc0_16_i4.c: Regenerate.
720 * generated/maxloc0_16_i4.c: Regenerate.
721 * generated/pow_i8_i8.c: Regenerate.
722 * generated/nearest_r4.c: Regenerate.
723 * generated/minloc1_16_i8.c: Regenerate.
724 * generated/maxloc1_16_i8.c: Regenerate.
725 * generated/transpose_i4.c: Regenerate.
726 * generated/count_8_l4.c: Regenerate.
727 * generated/minloc1_4_i2.c: Regenerate.
728 * generated/matmul_l16.c: Regenerate.
729 * generated/maxloc1_8_i1.c: Regenerate.
730 * generated/minloc0_16_r10.c: Regenerate.
731 * generated/minloc1_8_i8.c: Regenerate.
732 * generated/minloc0_4_r8.c: Regenerate.
733 * generated/product_r16.c: Regenerate.
734 * generated/product_c8.c: Regenerate.
735 * generated/pow_r16_i16.c: Regenerate.
736 * generated/sum_r8.c: Regenerate.
737 * generated/pow_c16_i8.c: Regenerate.
738 * generated/in_pack_i16.c: Regenerate.
739 * generated/minloc0_8_i4.c: Regenerate.
740 * generated/matmul_c4.c: Regenerate.
741 * generated/minloc1_16_i16.c: Regenerate.
742 * generated/reshape_i8.c: Regenerate.
743 * generated/spacing_r8.c: Regenerate.
744 * generated/in_pack_c8.c: Regenerate.
745 * generated/maxloc1_8_r4.c: Regenerate.
746 * generated/minloc1_16_i1.c: Regenerate.
747 * generated/maxloc1_16_i1.c: Regenerate.
748 * generated/reshape_i16.c: Regenerate.
749 * generated/minval_r10.c: Regenerate.
750 * generated/pow_r4_i8.c: Regenerate.
751 * generated/minloc1_8_i1.c: Regenerate.
752 * generated/minval_i4.c: Regenerate.
753 * generated/maxloc1_4_i4.c: Regenerate.
754 * generated/maxloc1_8_i2.c: Regenerate.
755 * generated/maxval_i8.c: Regenerate.
756 * generated/eoshift3_16.c: Regenerate.
757 * generated/any_l8.c: Regenerate.
758 * generated/maxloc0_16_r10.c: Regenerate.
759 * generated/rrspacing_r4.c: Regenerate.
760 * generated/shape_i8.c: Regenerate.
761 * generated/maxloc0_8_r8.c: Regenerate.
762 * generated/minloc0_4_i16.c: Regenerate.
763 * generated/maxloc0_4_i16.c: Regenerate.
764 * generated/minloc1_4_r10.c: Regenerate.
765 * generated/minloc1_8_i16.c: Regenerate.
766 * generated/pow_c10_i8.c: Regenerate.
767 * generated/maxloc1_4_r10.c: Regenerate.
768 * generated/maxloc1_8_i16.c: Regenerate.
769 * generated/in_unpack_c10.c: Regenerate.
770 * generated/minloc0_8_r10.c: Regenerate.
771 * generated/maxloc0_8_r10.c: Regenerate.
772 * generated/minloc1_16_r4.c: Regenerate.
773 * generated/maxloc1_16_r4.c: Regenerate.
774 * generated/minloc0_16_r8.c: Regenerate.
775 * generated/pow_i16_i4.c: Regenerate.
776 * generated/product_i8.c: Regenerate.
777 * generated/maxloc0_16_r8.c: Regenerate.
778 * generated/sum_i16.c: Regenerate.
779 * generated/maxloc0_4_i8.c: Regenerate.
780 * generated/transpose_r8.c: Regenerate.
781 * generated/cshift1_8.c: Regenerate.
782 * generated/maxloc1_16_i16.c: Regenerate.
783 * generated/matmul_i4.c: Regenerate.
784 * generated/pow_c8_i4.c: Regenerate.
785 * generated/pow_i4_i4.c: Regenerate.
786 * generated/minloc1_8_r4.c: Regenerate.
787 * generated/sum_c8.c: Regenerate.
788 * generated/count_8_l16.c: Regenerate.
789 * generated/minloc1_16_i2.c: Regenerate.
790 * generated/maxloc1_16_i2.c: Regenerate.
791 * generated/in_pack_i8.c: Regenerate.
792 * generated/transpose_r16.c: Regenerate.
793 * generated/maxval_i16.c: Regenerate.
794 * generated/exponent_r8.c: Regenerate.
795 * generated/matmul_i16.c: Regenerate.
796 * generated/count_4_l8.c: Regenerate.
797 * generated/pow_c8_i16.c: Regenerate.
798 * generated/maxval_i1.c: Regenerate.
799 * generated/minloc1_4_i4.c: Regenerate.
800 * generated/minloc1_8_i2.c: Regenerate.
801 * generated/pow_c10_i16.c: Regenerate.
802 * generated/product_c16.c: Regenerate.
803 * generated/reshape_r4.c: Regenerate.
804 * generated/in_unpack_c8.c: Regenerate.
805 * generated/minloc0_8_r8.c: Regenerate.
806 * generated/matmul_l8.c: Regenerate.
807 * generated/product_r10.c: Regenerate.
808 * generated/set_exponent_r16.c: Regenerate.
809 * generated/cshift1_16.c: Regenerate.
810 * generated/product_i1.c: Regenerate.
811 * generated/all_l8.c: Regenerate.
812 * generated/maxloc0_4_i1.c: Regenerate.
813 * generated/rrspacing_r16.c: Regenerate.
814 * generated/minloc0_4_i8.c: Regenerate.
815 * generated/pow_r4_i16.c: Regenerate.
816 * generated/count_16_l4.c: Regenerate.
817 * generated/maxval_r4.c: Regenerate.
819 2007-08-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
822 * io/write.c: Revert changes from patch of 2007-08-27.
823 * io/write_float.def: Remove file, reverting addition.
825 2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
827 * runtime/memory.c (internal_realloc, allocate, allocate_array,
828 deallocate): Remove functions.
829 * gfortran.map (_gfortran_allocate, _gfortran_allocate_array,
830 _gfortran_deallocate, _gfortran_internal_realloc): Remove symbols.
831 * libgfortran.h (error_codes): Add comment.
833 2007-08-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
836 Revert previous patch.
838 2007-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
840 * io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
841 new file write_float.def. Include write_float.def.
842 (extract_real): Delete. (calculate_sign): Delete.
843 (calculate_exp): Delete. (calculate_G_format): Delete.
844 (output_float): Delete. (write_float): Delete.
845 * io/write_float.def (calculate_sign): Added.
846 (output_float): Refactored to be independent of kind and added to this
847 file for inclusion. (write_infnan): New function to write "Infinite"
848 or "NaN" depending on flags passed, independent of kind.
849 (CALCULATE_EXP): New macro to build kind specific functions. Use it.
850 (OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
851 (DTOA, DTOAL): Macros to implement "decimal to ascii".
852 (WRITE_FLOAT): New macro for kind specific write_float functions.
853 (write_float): Revised function to determine kind and use WRITE_FLOAT
854 to implement kind specific output.
856 2007-08-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
859 * io/inquire.c (inquire_via_unit): If inquiring by unit, check for
860 an error condition from the IOSTAT variable and set EXIST to false if
861 there was a bad unit number.
863 2007-08-24 Thomas Koenig <tkoenig@gcc.gnu.org>
866 * libgfortran.h: Remove GFOR_POINTER_L8_TO_L4 macro.
867 Add GFOR_POINTER_TO_L1 macro.
868 * m4/iforeach.m4(`m'name`'rtype_qual`_'atype_code):
869 Change argument 'mask' to gfc_array_l1. Adjust prototype.
870 Change mask pointer to GFC_LOGICAL_1. Multiply strides
872 * m4/ifunction.m4: Likewise.
873 * intrinsics/pack_generic.c(pack_internal): Likewise.
874 * intrinsics/unpack_generic.c(unpack_internal): Likewise.
875 * m4/matmull.m4: Switch to GFC_LOGICAL_1. Multiply strides by
876 kind of logical arguments a and b.
877 * generated/matmul_l16.c: Regenerated.
878 * generated/matmul_l4.c: Regenerated.
879 * generated/matmul_l8.c: Regenerated.
880 * generated/maxloc0_16_i1.c: Regenerated.
881 * generated/maxloc0_16_i16.c: Regenerated.
882 * generated/maxloc0_16_i2.c: Regenerated.
883 * generated/maxloc0_16_i4.c: Regenerated.
884 * generated/maxloc0_16_i8.c: Regenerated.
885 * generated/maxloc0_16_r10.c: Regenerated.
886 * generated/maxloc0_16_r16.c: Regenerated.
887 * generated/maxloc0_16_r4.c: Regenerated.
888 * generated/maxloc0_16_r8.c: Regenerated.
889 * generated/maxloc0_4_i1.c: Regenerated.
890 * generated/maxloc0_4_i16.c: Regenerated.
891 * generated/maxloc0_4_i2.c: Regenerated.
892 * generated/maxloc0_4_i4.c: Regenerated.
893 * generated/maxloc0_4_i8.c: Regenerated.
894 * generated/maxloc0_4_r10.c: Regenerated.
895 * generated/maxloc0_4_r16.c: Regenerated.
896 * generated/maxloc0_4_r4.c: Regenerated.
897 * generated/maxloc0_4_r8.c: Regenerated.
898 * generated/maxloc0_8_i1.c: Regenerated.
899 * generated/maxloc0_8_i16.c: Regenerated.
900 * generated/maxloc0_8_i2.c: Regenerated.
901 * generated/maxloc0_8_i4.c: Regenerated.
902 * generated/maxloc0_8_i8.c: Regenerated.
903 * generated/maxloc0_8_r10.c: Regenerated.
904 * generated/maxloc0_8_r16.c: Regenerated.
905 * generated/maxloc0_8_r4.c: Regenerated.
906 * generated/maxloc0_8_r8.c: Regenerated.
907 * generated/maxloc1_16_i1.c: Regenerated.
908 * generated/maxloc1_16_i16.c: Regenerated.
909 * generated/maxloc1_16_i2.c: Regenerated.
910 * generated/maxloc1_16_i4.c: Regenerated.
911 * generated/maxloc1_16_i8.c: Regenerated.
912 * generated/maxloc1_16_r10.c: Regenerated.
913 * generated/maxloc1_16_r16.c: Regenerated.
914 * generated/maxloc1_16_r4.c: Regenerated.
915 * generated/maxloc1_16_r8.c: Regenerated.
916 * generated/maxloc1_4_i1.c: Regenerated.
917 * generated/maxloc1_4_i16.c: Regenerated.
918 * generated/maxloc1_4_i2.c: Regenerated.
919 * generated/maxloc1_4_i4.c: Regenerated.
920 * generated/maxloc1_4_i8.c: Regenerated.
921 * generated/maxloc1_4_r10.c: Regenerated.
922 * generated/maxloc1_4_r16.c: Regenerated.
923 * generated/maxloc1_4_r4.c: Regenerated.
924 * generated/maxloc1_4_r8.c: Regenerated.
925 * generated/maxloc1_8_i1.c: Regenerated.
926 * generated/maxloc1_8_i16.c: Regenerated.
927 * generated/maxloc1_8_i2.c: Regenerated.
928 * generated/maxloc1_8_i4.c: Regenerated.
929 * generated/maxloc1_8_i8.c: Regenerated.
930 * generated/maxloc1_8_r10.c: Regenerated.
931 * generated/maxloc1_8_r16.c: Regenerated.
932 * generated/maxloc1_8_r4.c: Regenerated.
933 * generated/maxloc1_8_r8.c: Regenerated.
934 * generated/maxval_i1.c: Regenerated.
935 * generated/maxval_i16.c: Regenerated.
936 * generated/maxval_i2.c: Regenerated.
937 * generated/maxval_i4.c: Regenerated.
938 * generated/maxval_i8.c: Regenerated.
939 * generated/maxval_r10.c: Regenerated.
940 * generated/maxval_r16.c: Regenerated.
941 * generated/maxval_r4.c: Regenerated.
942 * generated/maxval_r8.c: Regenerated.
943 * generated/minloc0_16_i1.c: Regenerated.
944 * generated/minloc0_16_i16.c: Regenerated.
945 * generated/minloc0_16_i2.c: Regenerated.
946 * generated/minloc0_16_i4.c: Regenerated.
947 * generated/minloc0_16_i8.c: Regenerated.
948 * generated/minloc0_16_r10.c: Regenerated.
949 * generated/minloc0_16_r16.c: Regenerated.
950 * generated/minloc0_16_r4.c: Regenerated.
951 * generated/minloc0_16_r8.c: Regenerated.
952 * generated/minloc0_4_i1.c: Regenerated.
953 * generated/minloc0_4_i16.c: Regenerated.
954 * generated/minloc0_4_i2.c: Regenerated.
955 * generated/minloc0_4_i4.c: Regenerated.
956 * generated/minloc0_4_i8.c: Regenerated.
957 * generated/minloc0_4_r10.c: Regenerated.
958 * generated/minloc0_4_r16.c: Regenerated.
959 * generated/minloc0_4_r4.c: Regenerated.
960 * generated/minloc0_4_r8.c: Regenerated.
961 * generated/minloc0_8_i1.c: Regenerated.
962 * generated/minloc0_8_i16.c: Regenerated.
963 * generated/minloc0_8_i2.c: Regenerated.
964 * generated/minloc0_8_i4.c: Regenerated.
965 * generated/minloc0_8_i8.c: Regenerated.
966 * generated/minloc0_8_r10.c: Regenerated.
967 * generated/minloc0_8_r16.c: Regenerated.
968 * generated/minloc0_8_r4.c: Regenerated.
969 * generated/minloc0_8_r8.c: Regenerated.
970 * generated/minloc1_16_i1.c: Regenerated.
971 * generated/minloc1_16_i16.c: Regenerated.
972 * generated/minloc1_16_i2.c: Regenerated.
973 * generated/minloc1_16_i4.c: Regenerated.
974 * generated/minloc1_16_i8.c: Regenerated.
975 * generated/minloc1_16_r10.c: Regenerated.
976 * generated/minloc1_16_r16.c: Regenerated.
977 * generated/minloc1_16_r4.c: Regenerated.
978 * generated/minloc1_16_r8.c: Regenerated.
979 * generated/minloc1_4_i1.c: Regenerated.
980 * generated/minloc1_4_i16.c: Regenerated.
981 * generated/minloc1_4_i2.c: Regenerated.
982 * generated/minloc1_4_i4.c: Regenerated.
983 * generated/minloc1_4_i8.c: Regenerated.
984 * generated/minloc1_4_r10.c: Regenerated.
985 * generated/minloc1_4_r16.c: Regenerated.
986 * generated/minloc1_4_r4.c: Regenerated.
987 * generated/minloc1_4_r8.c: Regenerated.
988 * generated/minloc1_8_i1.c: Regenerated.
989 * generated/minloc1_8_i16.c: Regenerated.
990 * generated/minloc1_8_i2.c: Regenerated.
991 * generated/minloc1_8_i4.c: Regenerated.
992 * generated/minloc1_8_i8.c: Regenerated.
993 * generated/minloc1_8_r10.c: Regenerated.
994 * generated/minloc1_8_r16.c: Regenerated.
995 * generated/minloc1_8_r4.c: Regenerated.
996 * generated/minloc1_8_r8.c: Regenerated.
997 * generated/minval_i1.c: Regenerated.
998 * generated/minval_i16.c: Regenerated.
999 * generated/minval_i2.c: Regenerated.
1000 * generated/minval_i4.c: Regenerated.
1001 * generated/minval_i8.c: Regenerated.
1002 * generated/minval_r10.c: Regenerated.
1003 * generated/minval_r16.c: Regenerated.
1004 * generated/minval_r4.c: Regenerated.
1005 * generated/minval_r8.c: Regenerated.
1006 * generated/product_c10.c: Regenerated.
1007 * generated/product_c16.c: Regenerated.
1008 * generated/product_c4.c: Regenerated.
1009 * generated/product_c8.c: Regenerated.
1010 * generated/product_i1.c: Regenerated.
1011 * generated/product_i16.c: Regenerated.
1012 * generated/product_i2.c: Regenerated.
1013 * generated/product_i4.c: Regenerated.
1014 * generated/product_i8.c: Regenerated.
1015 * generated/product_r10.c: Regenerated.
1016 * generated/product_r16.c: Regenerated.
1017 * generated/product_r4.c: Regenerated.
1018 * generated/product_r8.c: Regenerated.
1019 * generated/sum_c10.c: Regenerated.
1020 * generated/sum_c16.c: Regenerated.
1021 * generated/sum_c4.c: Regenerated.
1022 * generated/sum_c8.c: Regenerated.
1023 * generated/sum_i1.c: Regenerated.
1024 * generated/sum_i16.c: Regenerated.
1025 * generated/sum_i2.c: Regenerated.
1026 * generated/sum_i4.c: Regenerated.
1027 * generated/sum_i8.c: Regenerated.
1028 * generated/sum_r10.c: Regenerated.
1029 * generated/sum_r16.c: Regenerated.
1030 * generated/sum_r4.c: Regenerated.
1031 * generated/sum_r8.c: Regenerated.
1033 2007-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1036 * acinclude.m4 (LIBGFOR_CHECK_MINGW_SNPRINTF): New check.
1037 * configure.ac: Use LIBGFOR_CHECK_MINGW_SNPRINTF.
1038 * libgfortran.h: If HAVE_MINGW_SNPRINTF is true, use __mingw_snprintf
1039 instead of snprintf.
1040 * config.h.in: Regenerate.
1041 * configure: Regenerate.
1043 2007-08-22 Bernhard Fischer <rep.dot.nop@gmail.com>
1045 * libgfortran/Makefile.am (AM_CPPFLAGS): Commentary typo fix.
1047 2007-08-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1050 * intrinsics/string_intrinsics.c (string_trim, string_minmax): Fix
1051 the zero-length result case.
1053 2007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1056 * intrinsics/random.c (random_seed_i8): Fix code logic.
1058 2007-08-13 Danny Smith <dannysmit@users.sourceforge.net>
1060 * acinclude.m4 (GTHREAD_USE_WEAK) Define to 0 for mingw32.
1061 * configure: Regenerate.
1063 2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1067 * intrinsics/random.c (random_seed): Rename into random_seed_i4.
1068 (random_seed_i8): New function.
1069 * gfortran.map (GFORTRAN_1.0): Remove _gfortran_random_seed,
1070 add _gfortran_random_seed_i4 and _gfortran_random_seed_i8.
1071 * libgfortran.h (iexport_proto): Replace random_seed by
1072 random_seed_i4 and random_seed_i8.
1073 * runtime/main.c (init): Call the new random_seed_i4.
1075 2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1076 Tobias Burnus <burnus@gcc.gnu.org>
1079 * runtime/backtrace.c (show_backtrace): Skip _gfortrani_handler
1080 when displaying backtrace.
1081 * runtime/compile_options.c: Include <signal.h>.
1082 (handler): New function.
1083 (set_options): Set signal handlers for backtrace.
1084 * libgfortran.h (handler): Add prototype.
1086 2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1088 * intrinsics/string_intrinsics.c (compare_string): Return an int.
1089 * libgfortran.h (compare_string): Likewise.
1091 2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1094 * runtime/error.c (runtime_error_at): Add a variable number of
1096 * libgfortran.h (runtime_error_at): Update prototype.
1098 2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1101 * intrinsics/associated.c: Change return type of associated into
1104 2007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1107 * io/list_read.c (find_nml_name): Check for a space after a namelist
1110 2007-08-09 Tobias Burnus <burnus@net-b.de>
1113 * io/format.c (next_char): Treat '\t' as ' ' in format specification.
1115 2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1118 * intrinsics/signal.c: Create specific versions of alarm_sub and
1119 alarm_sub_int according to the integer kind of the last argument.
1120 * gfortran.map (GFORTRAN_1.0): Remove _gfortran_alarm_sub and
1121 _gfortran_alarm_sub_int, add _gfortran_alarm_sub_i4,
1122 _gfortran_alarm_sub_i8, _gfortran_alarm_sub_int_i4 and
1123 _gfortran_alarm_sub_int_i8.
1125 2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1128 * intrinsics/string_intrinsics.c (string_minmax): New function
1130 * gfortran.map (GFORTRAN_1.0): Add _gfortran_string_minmax
1132 2007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1135 * intrinsics/c99_functions.c (roundl): Provide fallback
1136 implementation for systems without ceill.
1137 * c99_protos.h (roundl): Define prototype in all cases.
1139 2007-08-03 Thomas Koenig <tkoenig@gcc.gnu.org>
1142 * io/unix.c: If there is no vsnprintf, use vsprintf and issue
1143 a fatal error when a buffer overrun occurs.
1145 2007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1148 * intrinsics/c99_functions.c (roundl,lroundf,lround,lroundl,
1149 llroundf,llround,llroundl): New functions.
1150 * c99_protos.h (roundl,lroundf,lround,lroundl,llroundf,llround,
1151 llroundl): New prototypes.
1152 * configure.ac: Check for lroundf, lround, lroundl, llroundf,
1153 llround and llroundl.
1154 * configure: Regenerate.
1155 * Makefile.in: Regenerate.
1156 * config.h.in: Regenerate.
1158 2007-07-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1160 * libgfortran.h: Include <stdarg.h>.
1162 2007-07-29 Thomas Koenig <tkoenig@gcc.gnu.org>
1166 * configure.ac: Added checks for presence of stdio.h and
1167 stdarg.h. Test presence of vsnprintf().
1168 * configure: Regenerated.
1169 * config.h.in: Regenerated.
1170 * libgfortran.h: Include <stdio.h>. Add printf attribute to
1171 prototype of runtime_error. Remove prototype for st_sprintf.
1172 Add prototype for st_vprintf.
1173 * runtime/main.c (store_exec_path): Replace st_sprintf by sprintf.
1174 * runtime/error.c (st_sprintf): Remove.
1175 (runtime_error): Rewrite as a variadic function. Call
1177 * intrinsics/pack_generic.c: Output extents of LHS and RHS for
1179 * io/open.c (new_unit): Replace st_sprintf by sprintf.
1180 * io/list_read.c (convert_integer): Likewise.
1181 (parse_repeat): Likewise.
1182 (read_logical): Likewise.
1183 (read_character): Likewise.
1184 (parse_real): Likewise.
1185 (read_real): Likewise.
1186 (check_type): Likewise.
1187 (nml_parse_qualifyer): Likewise.
1188 (nml_read_obj): Likewise.
1189 (nml_get_ojb_data): Likewise.
1190 * io/unix.c (init_error_stream): Remove.
1191 (tempfile): Replace st_sprintf by sprintf.
1192 (st_vprintf): New function.
1193 (st_printf): Rewrite to call st_vprintf.
1194 * io/transfer.c (require_type): Replace st_sprintf by sprintf.
1195 * io/format.c (format_error): Likewise.
1196 * io/write.c (nml_write_obj): Likewise.
1198 2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
1200 * io/transfer.c (st_set_nml_var_dim): Use index_type instead of
1201 GFC_INTEGER_4 for array descriptor triplets.
1203 2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1205 * io/unix.c (stream_ttyname): Mark argument as potentialy unused.
1207 2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1210 * runtime/select.c (select_string): Adjust prototype and function
1211 so that the return value is an integer, not a pointer.
1213 2007-07-24 Tobias Burnus <burnus@net-b.de>
1215 * libgfortran.h: Add bounds_check to compile_options_t.
1217 2007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
1220 * libgfortran.h: Add bounds_check to compile_options_t.
1221 * runtime/compile_options.c (set_options): Add handling
1222 of compile_options.bounds_check.
1223 * intrinsics/pack_generic.c (pack_internal): Also determine
1224 the number of elements if compile_options.bounds_check is
1225 true. Raise runtime error if a different array shape is
1228 2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
1231 * intrinsics/iso_c_binding.c (c_funloc): Remove.
1232 * intrinsics/iso_c_binding.h: Remove c_funloc.
1233 * gfortran.map: Ditto.
1235 2007-07-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1237 * io/read.c (convert_real): Generate error only on EINVAL.
1239 2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
1242 * libgfortran/intrinsics/iso_c_generated_procs.c: Add c_f_pointer
1243 for character/string arguments.
1244 * libgfortran/intrinsic/iso_c_binding.c (c_f_pointer_u0): Allow
1245 the optional SHAPE arg to be any valid integer kind.
1246 * libgfortran/gfortran.map: Add c_f_pointer_s0.
1247 * libgfortran/mk-kinds-h.sh: Save smallest integer kind as default
1249 * libgfortran/intrinsics/iso_c_generated_procs.c: Add versions of
1250 c_f_pointer for complex and logical types.
1251 * libgfortran/gfortran.map: Add c_f_pointer versions for logical
1254 2007-07-19 Christopher D. Rickett <crickett@lanl.gov>
1257 * libgfortran/intrinsics/iso_c_binding.c: Remove C_LOC.
1258 * libgfortran/intrinsics/iso_c_binding.h: Ditto.
1259 * libgfortran/gfortran.map: Ditto.
1261 2007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1262 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1265 * runtime/compile_options.c (set_std): Remove.
1266 (set_options): New function.
1267 (init_compile_options): Add initialization for -fsign-zero option.
1268 * gfortran.map (GFORTRAN_1.0): Rename _gfortran_set_std into
1269 _gfortran_set_options.
1270 * libgfortran.h (compile_options_t): Add sign_zero field.
1271 * io/write.c (output_float): Use the sign bit of the value to determine
1272 if a negative sign should be emitted for zero values. Do not emit the
1273 negative sign for zero if -fno-sign-zero was set during compile.
1275 2007-07-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1277 PR libgfortran/32752
1278 * io/unix.c (unix_stream): Move buffer pointer adjacent to
1280 * io/transfer.c (formatted_transfer_scalar): If stream I/O, set
1281 bytes_used to zero. Fix off by one error in calculation of pos and
1282 skips. Eliminate duplicate pending_spaces check.
1284 2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1287 * intrinsics/mvbits.c: Change prototype so that FROMPOS, LEN and
1288 TOPOS arguments are C int.
1290 2007-07-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1292 PR libgfortran/32702
1293 * io/unix.c (unix_stream): Restore buffer pointer and small_buffer.
1294 (fd_alloc): If the number of bytes needed is greater than the default
1295 BUFFER_SIZE, allocate a new buffer large enough. Free the old buffer
1296 if necessary. (fd_sfree): Restore use of buffer pointer.
1297 (fd_close): Likewise. (fd_open): Likewise.
1298 (init_error_stream): Likewise.
1300 2007-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
1303 * m4/matmul.m4: When the dimension of b is incorrect,
1304 raise a runtime error instead of a failed assertion.
1305 * generated/matmul_i1.c: Regenerated.
1306 * generated/matmul_i2.c: Regenerated.
1307 * generated/matmul_i4.c: Regenerated.
1308 * generated/matmul_i8.c: Regenerated.
1309 * generated/matmul_i16.c: Regenerated.
1310 * generated/matmul_r4.c: Regenerated.
1311 * generated/matmul_r8.c: Regenerated.
1312 * generated/matmul_r10.c: Regenerated.
1313 * generated/matmul_r16.c: Regenerated.
1315 2007-07-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1317 PR libgfortran/32678
1318 * io/transfer.c (formatted_transfer_scalar): Don't allow
1319 pending_spaces to go negative.
1321 2007-07-08 Thomas Koenig <tkoenig@gcc.gnu.org>
1324 * intrinsics/unpack_generic.c: If the destination array is
1325 empty, return early.
1327 2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
1329 * aclocal.m4: Regenerated.
1331 2007-07-04 David Edelsohn <edelsohn@gnu.org>
1333 * configure.ac: SUBST CFLAGS.
1334 * configure: Regenerate.
1336 2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
1338 * libgfortran.h: Mark internal_malloc_size as a malloc function.
1339 * runtime/memory.c (internal_realloc_size): Remove.
1340 (internal_realloc): Call realloc directly instead of
1341 internal_realloc_size.
1342 (allocate_size): Remove.
1343 (allocate): Call malloc directly instead of allocate_size, mark as
1346 2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
1348 Restore collateral damage from ISO C Binding merge.
1350 2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1352 PR libgfortran/32456
1353 * io/unit.c (filename_from_unit): Don't use find_unit, instead search
1356 2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
1358 * Makefile.in: Regenerated with automake 1.9.6.
1360 2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
1362 * Makefile.in: Remove extraneous kill.lo rule.
1364 2007-07-02 Janne Blomqvist <jb@gcc.gnu.org>
1367 * generated/pow_r*_i4.c: Removed.
1369 2007-07-01 Christopher D. Rickett <crickett@lanl.gov>
1371 * Makefile.in: Add support for iso_c_generated_procs.c and
1373 * Makefile.am: Ditto.
1374 * intrinsics/iso_c_generated_procs.c: New file containing helper
1376 * intrinsics/iso_c_binding.c: Ditto.
1377 * intrinsics/iso_c_binding.h: New file
1378 * gfortran.map: Include the __iso_c_binding_c_* functions.
1379 * libgfortran.h: define GFC_NUM_RANK_BITS.
1381 2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
1384 * Makefile.am: Don't generate real**int4 pow functions.
1385 * gfortran.map: Remove real**int4 pow symbols.
1386 * Makefile.in: Regenerated.
1388 2007-07-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1390 PR libgfortran/32554
1391 * io/write.c (output_float): Set edigits to a fixed size, avoiding
1392 variation in field width calculation and eliminate buffer overrun.
1394 2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
1396 * runtime/memory.c (internal_realloc): Use index_type for size
1397 argument instead of GFC_INTEGER_4.
1398 (allocate_array): Likewise.
1399 (allocate): Likewise, add ifdef around unnecessary check.
1400 (internal_reallo64): Remove.
1401 (allocate_array64): Remove.
1402 (allocate64): Remove.
1403 * gfortran.map: Remove symbols for 64-bit allocation functions.
1405 2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1407 PR libgfortran/32456
1408 * io/unit.c (filename_from_unit): Don't use find_unit, instead search
1411 2007-06-24 Adam Nemet <anemet@caviumnetworks.com>
1414 * runtime/backtrace.c (local_strcasestr): Rename from strcasestr.
1415 (show_backtrace): Rename strcasestr to local_strcasestr.
1417 2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1419 PR libgfortran/32456
1420 * runtime/error.c (show_locus): Update to emit the unit number
1421 and file name involved with the error. Use new function
1423 * libgfortran.h (filename_from_unit): Declare new function.
1424 * io/unit.c (init_units): Set the unit file name for stdin, stdout,
1425 and stderr for use later in error reporting.
1426 (filename_from_unit): Add this new function.
1428 2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1430 PR libgfortran/32446
1431 * io/write.c (output_float): Calculate ndigits correctly for large
1432 numbered formats that must pad zeros before the decimal point.
1434 2007-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1437 * runtime/backtrace.c (show_backtrace): Only use snprintf if
1440 2007-06-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1442 PR libgfortran/32235
1443 * io/transfer.c (st_read): Remove test for end of file condition.
1444 (next_record_r): Add test for end of file condition.
1446 2007-06-02 Paolo Bonzini <bonzini@gnu.org>
1448 * configure: Regenerate.
1450 2007-05-28 Tobias Burnus <burnus@net-b.de>
1453 * runtime/memory.c (allocate_size): Use ERROR_ALLOCATION.
1454 (allocate,allocate64): Use stat variable if present.
1456 2007-05-27 Janne Blomqvist <jb@gcc.gnu.org>
1458 * runtime/string.c (compare0): Use gfc_charlen_type instead of
1460 (fstrlen): Likewise.
1461 (find_option): Likewise.
1462 (fstrcpy): Use gfc_charlen_type instead of int, return length.
1463 (cf_strcpy): Likewise.
1464 * libgfortran.h: Change string prototypes to use gfc_charlen_type.
1465 * io/open.c (new_unit): Use snprintf if available.
1466 * io/list_read.c (nml_touch_nodes): Use memcpy instead of
1468 (nml_read_obj): Likewise.
1469 * io/transfer.c (st_set_nml_var): Likewise.
1470 * io/write.c (output_float): Use snprintf if available.
1471 (nml_write_obj) Use memcpy instead of strcpy/strcat.
1473 2007-05-26 Janne Blomqvist <jb@gcc.gnu.org>
1475 * io/unix.c (unix_stream): Rearrange struct members, remove
1477 (int_stream): New struct.
1478 (fd_alloc): Always use existing buffer, never reallocate.
1479 (fd_sfree): Remove check for buffer != small_buffer.
1480 (fd_close): Likewise.
1481 (mem_alloc_r_at): Change to use int_stream.
1482 (mem_alloc_w_at): Likewise.
1483 (mem_read): Likewise.
1484 (mem_write): Likewise.
1485 (mem_set): Likewise.
1486 (mem_truncate): Likewise.
1487 (mem_close): Likewise.
1488 (mem_sfree): Likewise.
1489 (empty_internal_buffer): Likewise.
1490 (open_internal): Likewise.
1492 2007-05-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1494 * io/transfer.c (unformatted_read): Use size from front end
1495 eliminating use of size_from_real_kind.
1496 (unformatted_write): Ditto.
1498 2007-05-23 Steve Ellcey <sje@cup.hp.com>
1500 * Makefile.in: Regenerate.
1501 * configure: Regenerate.
1502 * aclocal.m4: Regenerate.
1504 2007-05-22 Tobias Burnus <burnus@net-b.de>
1506 * libgfortran.h: Mark stop_numeric as noreturn.
1508 2007-05-22 Tobias Burnus <burnus@net-b.de>
1510 PR libgfortran/31295
1511 * intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
1512 * intrinsics/eoshift2.c (eoshift2): Ditto.
1514 2007-05-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1517 * intrinsics/ishftc.c (ishftc4, ishftc8, ishftc16): Fix mask to handle
1518 shift of bit-size number of bits.
1520 2007-05-17 Tobias Burnus <burnus@net-b.de>
1523 * runtime/environ.c (mark_range): Fix setting default convert unit.
1525 2007-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1528 * intrinsics/string_intrinsics.c (string_trim): Set result to null if
1529 string length is zero.
1531 2007-05-15 Tobias Burnus <burnus@net-b.de>
1534 * io/transfer.c (unformatted_read): Use proper size for real(10).
1535 (unformatted_write): Ditto.
1537 2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1540 * runtime/memory.c (internal_malloc, internal_malloc64,
1541 internal_free): Remove.
1542 * runtime/error.c (os_error): Export function.
1543 * intrinsics/move_alloc.c: Include stdlib.h.
1544 (move_alloc): Call free instead of internal_free.
1545 (move_alloc_c): Wrap long lines.
1546 * libgfortran.h (os_error): Export prototype.
1547 (internal_free): Remove prototype.
1548 * gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
1549 _gfortran_internal_malloc and _gfortran_internal_malloc64.
1550 Add _gfortran_os_error.
1552 2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1555 * io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
1557 2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1560 * intrinsics/system.c (system_sub): Call flush_all_units.
1561 * io/io.h (flush_all_units): Move prototype to libgfortran.h.
1562 * libgfortran.h (flush_all_units): Add prototype.
1564 2007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1567 * runtime/error.c (runtime_error_at): New function.
1568 (generate_error): Export this function.
1569 * gfortran.map: Add _gfortran_generate_error and
1570 _gfortran_runtime_error_at.
1571 * libgfortran.h: Add comment to reference error codes in front end.
1572 (library_start): Locate prototype with library_end macro and add
1573 a new comment. Add prototype for runtime_error_at. Export prototype
1575 * io/lock.c (library_start): Fix check for error condition.
1576 * io/transfer.c (data_transfer_init): Add library check.
1578 2007-05-04 Daniel Franke <franke.daniel@gmail.com>
1581 * io/intrinsics.c (fseek_sub): New.
1582 * io/unix.c (fd_fseek): Change logical and physical offsets only
1584 * gfortran.map (fseek_sub): New.
1586 2007-05-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1589 * io/transfer.c (transfer_character): Avoid passing a NULL
1590 pointer as source to the transfer routines, if the string length
1593 2007-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1596 * io/list_read.c (next_char): Fix whitespace.
1597 * io/io.h: Remove prototypes and define macros for is_array_io,
1598 is_stream_io, and is_internal_unit.
1599 * io/unit.c (is_array_io), (is_internal_unit), (is_stream_io): Delete
1601 * io/transfer.c (read_sf): Change handling of internal_unit to make a
1602 single call to salloc_r and use memcpy to transfer the data.
1604 2007-04-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1607 * io/file_pos.c (st_backspace): Set flags.position for end of file
1608 condition and use new function update_position.
1609 (st_endfile): Use new function update_position.
1610 * io/io.h: Add prototype for new function.
1611 * io/inquire.c (inquire_via_unit): If not direct access, set NEXTREC
1613 * io/unit.c (update_position): New function to update position info
1615 * io/transfer.c (next_record): Fix typo and use new function.
1617 2007-04-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1620 * intrinsics/getlog.c: Use getpwuid and geteuid instead of
1621 getlogin if they are available.
1622 * configure.ac: Add checks for getpwuid and geteuid.
1623 * configure: Regenerate.
1624 * config.h.in: Regenerate.
1626 2007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
1628 * configure: Regenerate using autoconf 2.59.
1629 * Makefile.in: Likewise.
1630 * config.h.in: Likewise.
1632 2007-04-24 Janne Blomqvist <jb@gcc.gnu.org>
1635 * configure.ac: New test to determine if symbol versioning is
1637 * Makefile.am: Use result of above test to add appropriate linker
1639 * gfortran.map: New file.
1640 * configure: Regenerated.
1641 * Makefile.in: Regenerated.
1642 * config.h.in: Regenerated.
1644 2007-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
1647 * io/transfer.c (read_block_direct): Instead of calling us_read,
1648 set dtp->u.p.current_unit->current_record = 0 so that pre_position
1649 will read the record marker.
1650 (data_transfer_init): For different error conditions, call
1651 generate_error, then return.
1653 2007-04-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1655 * runtime/main.c (please_free_exe_path_when_done): New variable.
1656 (store_exe_path): Initialize character buffer, and mark whether
1657 exe_path should be free'd by the library destructor function.
1658 (cleanup): Only free exe_path if needed.
1660 2007-04-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1661 Tobias Burnus <burnus@net-b.de>
1665 * intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
1666 * intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
1667 array structures we pass to unpack_internal.
1669 2007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1671 * io/open.c (test_endfile): Revert changes for 31052, restoring this
1674 2007-04-14 Steve Ellcey <sje@cup.hp.com>
1676 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS. Add libgfortran_la_LINK.
1677 * Makefile.in: Regenerate.
1679 2007-04-11 Kai Tietz <kai.tietz@onevision.com>
1681 * configure: Regenerate.
1683 2007-04-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1685 * intrinsics/cpu_time.c: Don't include headers already included
1686 by libgfortran.h. Protect inclusion of sys/times.h.
1687 * configure.ac: Remove unneeded checks for finit, stdio.h,
1688 stddef.h, math.h and sys/params.h.
1689 * config/fpu-aix.h: Don't include headers already included by
1691 * config/fpu-sysv.h: Likewise.
1692 * io/write.c: Likewise.
1693 * m4/minloc1.m4: Likewise.
1694 * m4/maxloc1.m4: Likewise.
1695 * m4/fraction.m4: Likewise.
1696 * m4/set_exponent.m4: Likewise.
1697 * m4/spacing.m4: Likewise.
1698 * m4/minval.m4: Likewise.
1699 * m4/maxval.m4: Likewise.
1700 * m4/exponent.m4: Likewise.
1701 * m4/nearest.m4: Likewise.
1702 * m4/minloc0.m4: Likewise.
1703 * m4/maxloc0.m4: Likewise.
1704 * m4/rrspacing.m4: Likewise.
1705 * runtime/main.c: Likewise.
1706 * runtime/error.c: Likewise.
1707 * intrinsics/system_clock.c: Likewise.
1708 * intrinsics/etime.c: Likewise.
1709 * intrinsics/stat.c: Likewise.
1710 * intrinsics/date_and_time.c: Likewise.
1711 * intrinsics/env.c: Likewise.
1712 * intrinsics/kill.c: Likewise.
1713 * intrinsics/getXid.c: Likewise.
1714 * intrinsics/chmod.c: Likewise.
1715 * intrinsics/args.c: Likewise.
1716 * intrinsics/c99_functions.c: Likewise.
1717 * generated/minval_r8.c: Regenerate.
1718 * generated/maxloc1_4_r8.c: Regenerate.
1719 * generated/minloc1_16_r16.c: Regenerate.
1720 * generated/maxval_i2.c: Regenerate.
1721 * generated/maxloc1_8_i4.c: Regenerate.
1722 * generated/exponent_r16.c: Regenerate.
1723 * generated/maxloc0_4_r4.c: Regenerate.
1724 * generated/fraction_r16.c: Regenerate.
1725 * generated/fraction_r4.c: Regenerate.
1726 * generated/minloc0_4_r16.c: Regenerate.
1727 * generated/minloc0_4_i1.c: Regenerate.
1728 * generated/maxloc0_4_r16.c: Regenerate.
1729 * generated/maxloc0_4_i2.c: Regenerate.
1730 * generated/minloc1_8_r16.c: Regenerate.
1731 * generated/maxloc1_8_r16.c: Regenerate.
1732 * generated/set_exponent_r8.c: Regenerate.
1733 * generated/maxloc0_8_i8.c: Regenerate.
1734 * generated/minloc1_4_r8.c: Regenerate.
1735 * generated/maxloc1_16_r16.c: Regenerate.
1736 * generated/minloc1_16_i4.c: Regenerate.
1737 * generated/maxloc1_16_i4.c: Regenerate.
1738 * generated/minloc0_16_i8.c: Regenerate.
1739 * generated/maxloc0_16_i8.c: Regenerate.
1740 * generated/nearest_r8.c: Regenerate.
1741 * generated/spacing_r16.c: Regenerate.
1742 * generated/maxval_r16.c: Regenerate.
1743 * generated/minloc1_8_i4.c: Regenerate.
1744 * generated/minloc0_16_i16.c: Regenerate.
1745 * generated/minloc0_4_r4.c: Regenerate.
1746 * generated/set_exponent_r10.c: Regenerate.
1747 * generated/rrspacing_r10.c: Regenerate.
1748 * generated/minloc0_4_i2.c: Regenerate.
1749 * generated/maxloc0_8_i1.c: Regenerate.
1750 * generated/minloc0_8_i8.c: Regenerate.
1751 * generated/spacing_r4.c: Regenerate.
1752 * generated/minloc1_16_r10.c: Regenerate.
1753 * generated/minloc0_16_i1.c: Regenerate.
1754 * generated/maxloc0_16_i1.c: Regenerate.
1755 * generated/maxloc1_8_r8.c: Regenerate.
1756 * generated/minval_i16.c: Regenerate.
1757 * generated/exponent_r10.c: Regenerate.
1758 * generated/maxval_i4.c: Regenerate.
1759 * generated/minval_i8.c: Regenerate.
1760 * generated/maxloc1_4_i8.c: Regenerate.
1761 * generated/fraction_r10.c: Regenerate.
1762 * generated/maxloc0_16_i16.c: Regenerate.
1763 * generated/maxloc0_8_r4.c: Regenerate.
1764 * generated/rrspacing_r8.c: Regenerate.
1765 * generated/minloc1_4_i16.c: Regenerate.
1766 * generated/minloc0_4_r10.c: Regenerate.
1767 * generated/maxloc1_4_i16.c: Regenerate.
1768 * generated/minloc0_8_i16.c: Regenerate.
1769 * generated/maxloc0_4_r10.c: Regenerate.
1770 * generated/maxloc0_8_i16.c: Regenerate.
1771 * generated/minloc1_8_r10.c: Regenerate.
1772 * generated/minloc0_16_r4.c: Regenerate.
1773 * generated/maxloc1_8_r10.c: Regenerate.
1774 * generated/maxloc0_16_r4.c: Regenerate.
1775 * generated/minloc1_16_r8.c: Regenerate.
1776 * generated/minloc0_8_i1.c: Regenerate.
1777 * generated/maxloc0_4_i4.c: Regenerate.
1778 * generated/maxloc1_16_r8.c: Regenerate.
1779 * generated/maxloc0_8_i2.c: Regenerate.
1780 * generated/nearest_r16.c: Regenerate.
1781 * generated/maxloc1_16_r10.c: Regenerate.
1782 * generated/minloc0_16_i2.c: Regenerate.
1783 * generated/minloc1_8_r8.c: Regenerate.
1784 * generated/maxloc0_16_i2.c: Regenerate.
1785 * generated/exponent_r4.c: Regenerate.
1786 * generated/spacing_r10.c: Regenerate.
1787 * generated/maxval_r10.c: Regenerate.
1788 * generated/minval_i1.c: Regenerate.
1789 * generated/maxloc1_4_i1.c: Regenerate.
1790 * generated/minloc1_4_i8.c: Regenerate.
1791 * generated/minloc0_8_r4.c: Regenerate.
1792 * generated/minloc0_16_r16.c: Regenerate.
1793 * generated/minloc0_4_i4.c: Regenerate.
1794 * generated/minloc0_8_i2.c: Regenerate.
1795 * generated/minval_r4.c: Regenerate.
1796 * generated/maxloc1_4_r4.c: Regenerate.
1797 * generated/maxval_r8.c: Regenerate.
1798 * generated/minval_r16.c: Regenerate.
1799 * generated/minloc1_4_i1.c: Regenerate.
1800 * generated/minval_i2.c: Regenerate.
1801 * generated/maxloc1_4_i2.c: Regenerate.
1802 * generated/maxloc1_8_i8.c: Regenerate.
1803 * generated/maxloc0_4_r8.c: Regenerate.
1804 * generated/maxloc0_16_r16.c: Regenerate.
1805 * generated/minloc1_4_r16.c: Regenerate.
1806 * generated/fraction_r8.c: Regenerate.
1807 * generated/maxloc1_4_r16.c: Regenerate.
1808 * generated/set_exponent_r4.c: Regenerate.
1809 * generated/minloc0_8_r16.c: Regenerate.
1810 * generated/maxloc0_8_r16.c: Regenerate.
1811 * generated/nearest_r10.c: Regenerate.
1812 * generated/maxloc0_8_i4.c: Regenerate.
1813 * generated/minloc1_4_r4.c: Regenerate.
1814 * generated/minloc0_16_i4.c: Regenerate.
1815 * generated/maxloc0_16_i4.c: Regenerate.
1816 * generated/nearest_r4.c: Regenerate.
1817 * generated/minloc1_16_i8.c: Regenerate.
1818 * generated/maxloc1_16_i8.c: Regenerate.
1819 * generated/minloc1_4_i2.c: Regenerate.
1820 * generated/maxloc1_8_i1.c: Regenerate.
1821 * generated/minloc0_16_r10.c: Regenerate.
1822 * generated/minloc1_8_i8.c: Regenerate.
1823 * generated/minloc0_4_r8.c: Regenerate.
1824 * generated/minloc0_8_i4.c: Regenerate.
1825 * generated/minloc1_16_i16.c: Regenerate.
1826 * generated/spacing_r8.c: Regenerate.
1827 * generated/maxloc1_8_r4.c: Regenerate.
1828 * generated/minloc1_16_i1.c: Regenerate.
1829 * generated/maxloc1_16_i1.c: Regenerate.
1830 * generated/minval_r10.c: Regenerate.
1831 * generated/minval_i4.c: Regenerate.
1832 * generated/minloc1_8_i1.c: Regenerate.
1833 * generated/maxloc1_4_i4.c: Regenerate.
1834 * generated/maxloc1_8_i2.c: Regenerate.
1835 * generated/maxval_i8.c: Regenerate.
1836 * generated/maxloc0_16_r10.c: Regenerate.
1837 * generated/rrspacing_r4.c: Regenerate.
1838 * generated/minloc0_4_i16.c: Regenerate.
1839 * generated/maxloc0_8_r8.c: Regenerate.
1840 * generated/maxloc0_4_i16.c: Regenerate.
1841 * generated/minloc1_4_r10.c: Regenerate.
1842 * generated/minloc1_8_i16.c: Regenerate.
1843 * generated/maxloc1_4_r10.c: Regenerate.
1844 * generated/minloc0_8_r10.c: Regenerate.
1845 * generated/maxloc1_8_i16.c: Regenerate.
1846 * generated/maxloc0_8_r10.c: Regenerate.
1847 * generated/minloc1_16_r4.c: Regenerate.
1848 * generated/maxloc1_16_r4.c: Regenerate.
1849 * generated/minloc0_16_r8.c: Regenerate.
1850 * generated/maxloc0_16_r8.c: Regenerate.
1851 * generated/maxloc0_4_i8.c: Regenerate.
1852 * generated/maxloc1_16_i16.c: Regenerate.
1853 * generated/minloc1_8_r4.c: Regenerate.
1854 * generated/minloc1_16_i2.c: Regenerate.
1855 * generated/maxloc1_16_i2.c: Regenerate.
1856 * generated/maxval_i16.c: Regenerate.
1857 * generated/exponent_r8.c: Regenerate.
1858 * generated/minloc1_4_i4.c: Regenerate.
1859 * generated/maxval_i1.c: Regenerate.
1860 * generated/minloc1_8_i2.c: Regenerate.
1861 * generated/minloc0_8_r8.c: Regenerate.
1862 * generated/set_exponent_r16.c: Regenerate.
1863 * generated/maxloc0_4_i1.c: Regenerate.
1864 * generated/rrspacing_r16.c: Regenerate.
1865 * generated/minloc0_4_i8.c: Regenerate.
1866 * generated/maxval_r4.c: Regenerate.
1867 * configure: Regenerate.
1868 * config.h.in: Regenerate.
1870 2007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1873 * io/format.c (parse_format_list): Fix parsing.
1875 2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1878 intrinsics/string_intrinsics.c (string_repeat): Remove.
1880 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1883 * io/open.c (test_endfile): Delete this function.
1884 (edit_modes): Delete call to test_endfile.
1885 (new_unit): Likewise.
1886 * io/io.h: Delete prototype for test_endfile.
1887 * io/transfer.c (next_record_r): Remove use of test_endfile.
1888 (st_read): Add test for end file condition and adjust status.
1890 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1893 * io/transfer.c (read_block_direct): Do not generate error when reading
1894 past EOF on a short record that is less than the RECL= specified.
1896 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1899 * io/unit.c (close_unit_1): If there are bytes previously written from
1900 ADVANCE="no", move to the end before closing.
1902 2007-03-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1905 * intrinsics/stat.c: Only provide STAT and FSTAT library routines
1906 if stat() and fstat() library functions are available. When lstat()
1907 is not available, use stat() instead.
1908 * configure.ac: Add checks for stat, fstat and lstat.
1909 * configure: Regenerate.
1910 * config.h.in: Regenerate.
1912 2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1915 * io/transfer.c (next_record_r): Do not call test_endfile if in
1918 2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1921 * io/io.h: Add saved_pos to gfc_unit structure.
1922 * io/open.c (new_unit): Initialize saved_pos.
1923 * io/transfer.c (data_transfer_init): Set max_pos to value in
1925 (next_record_w): Fix whitespace.
1926 (finalze_transfer): Calculate max_pos for ADVANCE="no" and save it for
1927 later use. If not ADVANCE="no" set saved_pos to zero.
1929 2007-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
1932 * intrinsics/reshape_generic.c (reshape_internal): Increment
1935 2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1938 * file_pos.c: Update Copyright year.
1939 * io/open.c (test_endfile): Restore test_endfile to fix SPEC
1940 regression. Update Copyright year.
1942 * io/unix.c (is_special): Add missing type for this function.
1943 Update Copyright year.
1944 * io/transfer.c (next_record_r): Restore test_endfile.
1945 (st_read): Fix whitespace. Update Copyright year
1947 2007-03-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1949 * configure.ac: Add missing check for gettimeofday.
1950 * config.h.in: Renegerate.
1951 * configure: Regenerate.
1953 2007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1956 * io/file_position (st_rewind): Fix comments. Remove use of
1957 test_endfile. Don't seek if already at 0 position. Use new is_special
1958 function to set endfile state.
1959 * io/open.c (test_endfile): Delete this function.
1960 * io/io.h: Delete prototype for test_endfile. Add prototype
1962 * io/unix.c (is_special): New function. Fix whitespace.
1963 * io/transfer.c (next_record_r): Remove use of test_endfile.
1965 2007-03-16 David Edelsohn <edelsohn@gnu.org>
1967 * runtime/main.c: Include "config.h" first.
1969 2007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1972 * io/file_pos.c (st_rewind): Don't set bytes_left to zero.
1974 2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1976 * runtime/backtrace.c: New file.
1977 * runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE
1978 environment variable.
1979 * runtime/compile_options.c (set_std): Add new argument.
1980 * runtime/main.c (store_exe_path, full_exe_path): New functions.
1981 * runtime/error.c (sys_exit): Add call to show_backtrace.
1982 * libgfortran.h (options_t): New backtrace field.
1983 (store_exe_path, full_exe_path, show_backtrace): New prototypes.
1984 * configure.ac: Add checks for execinfo.h, execvp, pipe, dup2,
1985 close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols
1987 * Makefile.am: Add runtime/backtrace.c.
1988 * fmain.c (main): Add call to store_exe_path.
1989 * Makefile.in: Renegerate.
1990 * config.h.in: Renegerate.
1991 * configure: Regenerate.
1993 2007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1996 * io/transfer.c (formatted_transfer_scalar): Adjust position for
1997 pending spaces when in writing mode. Clean up some formatting.
1999 2007-03-14 Thomas Koenig <Thomas.Koenig@online.de>
2002 * all.m4: Quote everything, except for m4 macros.
2004 * count.m4: Likewise.
2005 * cshift1.m4: Likewise.
2006 * eoshift1.m4: Likewise.
2007 * eoshift3.m4: Likewise.
2008 * exponent.m4: Likewise.
2009 * fraction.m4: Likewise.
2010 * in_pack.m4: Likewise.
2011 * in_unpack.m4: Likewise.
2012 * matmul.m4: Likewise.
2013 * matmull.m4: Likewise.
2014 * nearest.m4: Likewise.
2016 * product.m4: Likewise.
2017 * reshape.m4: Likewise.
2018 * rrspacing.m4: Likewise.
2019 * set_exponent.m4: Likewise.
2020 * shape.m4: Likewise.
2021 * spacing.m4: Likewise.
2022 * transpose.m4: Likewise.
2024 2007-03-14 Jakub Jelinek <jakub@redhat.com>
2026 * io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with
2027 O_RDONLY even if errno is EROFS.
2029 2007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2032 * io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
2033 * io/transfer.c (next_record_w): Set bytes left to record length for
2034 sequential unformatted I/O.
2035 (next_record_r): Ditto.
2036 (read_block_direct): Fix test for exceeding bytes_left.
2038 2007-03-08 Daniel Franke <franke.daniel@gmail.com>
2041 * intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
2044 2007-03-04 Thomas Koenig <Thomas.Koenig@online.de>
2047 * m4/pow_m4: Use appropriate unsigned int type for u.
2048 * generated/pow_c10_i16.c: Regenerated.
2049 * generated/pow_c10_i4.c: Regenerated.
2050 * generated/pow_c10_i8.c: Regenerated.
2051 * generated/pow_c16_i16.c: Regenerated.
2052 * generated/pow_c16_i4.c: Regenerated.
2053 * generated/pow_c16_i8.c: Regenerated.
2054 * generated/pow_c4_i16.c: Regenerated.
2055 * generated/pow_c4_i4.c: Regenerated.
2056 * generated/pow_c4_i8.c: Regenerated.
2057 * generated/pow_c8_i16.c: Regenerated.
2058 * generated/pow_c8_i4.c: Regenerated.
2059 * generated/pow_c8_i8.c: Regenerated.
2060 * generated/pow_i16_i16.c: Regenerated.
2061 * generated/pow_i16_i4.c: Regenerated.
2062 * generated/pow_i16_i8.c: Regenerated.
2063 * generated/pow_i4_i16.c: Regenerated.
2064 * generated/pow_i4_i4.c: Regenerated.
2065 * generated/pow_i4_i8.c: Regenerated.
2066 * generated/pow_i8_i16.c: Regenerated.
2067 * generated/pow_i8_i4.c: Regenerated.
2068 * generated/pow_i8_i8.c: Regenerated.
2069 * generated/pow_r10_i16.c: Regenerated.
2070 * generated/pow_r10_i4.c: Regenerated.
2071 * generated/pow_r10_i8.c: Regenerated.
2072 * generated/pow_r16_i16.c: Regenerated.
2073 * generated/pow_r16_i4.c: Regenerated.
2074 * generated/pow_r16_i8.c: Regenerated.
2075 * generated/pow_r4_i16.c: Regenerated.
2076 * generated/pow_r4_i4.c: Regenerated.
2077 * generated/pow_r4_i8.c: Regenerated.
2078 * generated/pow_r8_i16.c: Regenerated.
2079 * generated/pow_r8_i4.c: Regenerated.
2080 * generated/pow_r8_i8.c: Regenerated.
2082 2007-03-03 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2085 * intrinsics/pack_generic.c (pack_internal): Add special checks
2086 for zero-sized arrays.
2088 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
2090 * Makefile.am: Add dummy install-pdf target.
2091 * Makefile.in: Regenerate
2093 2007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2096 * io/listread.c (namelist_read): Eat comment line.
2098 2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2101 * io/write.c (output_float): Add condition of format F only for
2102 special case rounding with zero precision.
2104 2007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
2108 * Makefile.am: Add $(srcdir) too all files in generated/.
2109 (i_maxloc0_c): Add maxloc0_4_i1.c, maxloc0_8_i1.c,
2110 maxloc0_16_i1.c, maxloc0_4_i2.c, maxloc0_8_i2.c and
2112 (i_maxloc1_c): Add maxloc1_4_i1.c, maxloc1_8_i1.c,
2113 maxloc1_16_i1.c, maxloc1_4_i2.c, maxloc1_8_i2.c and
2115 (i_maxval_c): Add maxval_i1.c and maxval_i2.c.
2116 (i_minloc0_c): Add minloc0_4_i1.c, minloc0_8_i1.c,
2117 minloc0_16_i1.c, minloc0_4_i2.c, minloc0_8_i2.c and
2119 (i_minloc_1.c): Add minloc1_4_i1.c, minloc1_8_i1.c,
2120 minloc1_16_i1.c, minloc1_4_i2.c, minloc1_8_i2.c and
2122 (i_minval_c): Add minval_i1.c and minval_i2.c.
2123 (i_sum_c): Add sum_i1.c and sum_i2.c.
2124 (i_product_c): Add product_i1.c and product_i2.c.
2125 (i_matmul_c): Add matmul_i1.c and matmul_i2.c.
2126 (gfor_built_specific_src): Remove $(srcdir) from target.
2127 (gfor_bulit_specific2_src): Likewise.
2128 Makefile.in: Regenerated.
2129 libgfortran.h: Add GFC_INTEGER_1_HUGE and GFC_INTEGER_2_HUGE.
2130 Add gfc_array_i1 and gfc_array_i2.
2131 * generated/matmul_i1.c: New file.
2132 * generated/matmul_i2.c: New file.
2133 * generated/maxloc0_16_i1.c: New file.
2134 * generated/maxloc0_16_i2.c: New file.
2135 * generated/maxloc0_4_i1.c: New file.
2136 * generated/maxloc0_4_i2.c: New file.
2137 * generated/maxloc0_8_i1.c: New file.
2138 * generated/maxloc0_8_i2.c: New file.
2139 * generated/maxloc1_16_i1.c: New file.
2140 * generated/maxloc1_16_i2.c: New file.
2141 * generated/maxloc1_4_i1.c: New file.
2142 * generated/maxloc1_4_i2.c: New file.
2143 * generated/maxloc1_8_i1.c: New file.
2144 * generated/maxloc1_8_i2.c: New file.
2145 * generated/maxval_i1.c: New file.
2146 * generated/maxval_i2.c: New file.
2147 * generated/minloc0_16_i1.c: New file.
2148 * generated/minloc0_16_i2.c: New file.
2149 * generated/minloc0_4_i1.c: New file.
2150 * generated/minloc0_4_i2.c: New file.
2151 * generated/minloc0_8_i1.c: New file.
2152 * generated/minloc0_8_i2.c: New file.
2153 * generated/minloc1_16_i1.c: New file.
2154 * generated/minloc1_16_i2.c: New file.
2155 * generated/minloc1_4_i1.c: New file.
2156 * generated/minloc1_4_i2.c: New file.
2157 * generated/minloc1_8_i1.c: New file.
2158 * generated/minloc1_8_i2.c: New file.
2159 * generated/minval_i1.c: New file.
2160 * generated/minval_i2.c: New file.
2161 * generated/product_i1.c: New file.
2162 * generated/product_i2.c: New file.
2163 * generated/sum_i1.c: New file.
2164 * generated/sum_i2.c: New file.
2166 2007-02-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2168 * runtime/memory.c (deallocate): Correct comment.
2170 2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
2172 * Makefile.am: Use $(M4) instead of m4.
2173 * Makefile.in: Regenerate.
2175 2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
2177 * Makefile.am: Remove $(srcdir) from assorted targets
2179 * Makefile.in: Regenerate.
2181 2007-02-09 Thomas Koenig <Thomas.Koenig@online.de>
2182 Tobias Burnus <burnus@net-b.de>
2185 * m4/iparm.m4: Use HUGE-1 for most negative integer.
2186 * generated/maxloc1_8_i4.c: Regenerate.
2187 * generated/maxloc0_8_i8.c: Regenerate.
2188 * generated/maxloc1_16_i4.c: Regenerate.
2189 * generated/maxloc0_16_i8.c: Regenerate.
2190 * generated/maxval_i4.c: Regenerate.
2191 * generated/maxloc1_4_i8.c: Regenerate.
2192 * generated/maxloc0_16_i16.c: Regenerate.
2193 * generated/maxloc1_4_i16.c: Regenerate.
2194 * generated/maxloc0_8_i16.c: Regenerate.
2195 * generated/maxloc0_4_i4.c: Regenerate.
2196 * generated/maxloc1_8_i8.c: Regenerate.
2197 * generated/maxloc0_8_i4.c: Regenerate.
2198 * generated/maxloc0_16_i4.c: Regenerate.
2199 * generated/maxloc1_16_i8.c: Regenerate.
2200 * generated/maxloc1_4_i4.c: Regenerate.
2201 * generated/maxval_i8.c: Regenerate.
2202 * generated/maxloc0_4_i16.c: Regenerate.
2203 * generated/maxloc1_8_i16.c: Regenerate.
2204 * generated/maxloc0_4_i8.c: Regenerate.
2205 * generated/maxloc1_16_i16.c: Regenerate.
2206 * generated/maxval_i16.c: Regenerate.
2208 2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2211 * intrinsics/string_intrinsics.c (string_repeat): Don't check
2212 if ncopies is negative.
2214 2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2217 * libgfortran.h: Do not prefix symbol name with
2218 __USER_LABEL_PREFIX__ when used in __attribute__((__alias__(...))).
2220 2007-02-02 Paul Thomas <pault@gcc.gnu.org>
2224 * io/transfer.c (init_loop_spec, next_array_record): Change to
2225 lbound rather than unity base.
2227 2007-01-21 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2229 * runtime/error.c: Include sys/time.h before sys/resource.h.
2231 2007-01-21 Thomas Koenig <Thomas.Koenig@online.de>
2234 * intrinsics/string_intrinsics.c(compare_string): Make
2235 sure that comparisons are done unsigned.
2237 2007-01-21 Tobias Burnus <burnus@net-b.de>
2240 * intrinsics/date_and_time.c (date_and_time): Fix case where time
2242 * configure.ac: Remove AC_TRY_RUN test for timezone in
2244 * acinclude.m4: Ditto.
2245 * configure: Regenerate.
2246 * config.h.in: Regenerate.
2248 2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2250 * m4/misc_specifics.m4: Add _gfortran prefix to specific names.
2251 * m4/specific2.m4: Likewise.
2252 * m4/specific.m4: Likewise.
2253 * intrinsics/f2c_specifics.F90: Likewise.
2254 * intrinsics/selected_int_kind.f90: Add _gfortran prefix.
2255 * intrinsics/selected_real_kind.f90: Likewise.
2256 * intrinsics/dprod_r8.f90: Likewise.
2257 * Makefile.am: Add -fallow-leading-underscore to the
2258 gfor_specific_src files, as well as selected_real_kind.F90
2259 and selected_int_kind.F90
2260 * Makefile.in: Regenerate.
2261 * generated/_sqrt_c8.F90: Regenerate.
2262 * generated/_sign_r16.F90: Regenerate.
2263 * generated/_log_c16.F90: Regenerate.
2264 * generated/_sin_c10.F90: Regenerate.
2265 * generated/_tanh_r4.F90: Regenerate.
2266 * generated/_tanh_r8.F90: Regenerate.
2267 * generated/_log10_r10.F90: Regenerate.
2268 * generated/_aimag_c4.F90: Regenerate.
2269 * generated/_sign_r4.F90: Regenerate.
2270 * generated/_aimag_c8.F90: Regenerate.
2271 * generated/_sign_r8.F90: Regenerate.
2272 * generated/_mod_i4.F90: Regenerate.
2273 * generated/_cos_r16.F90: Regenerate.
2274 * generated/_aint_r10.F90: Regenerate.
2275 * generated/_mod_i8.F90: Regenerate.
2276 * generated/_abs_i16.F90: Regenerate.
2277 * generated/_sqrt_c10.F90: Regenerate.
2278 * generated/_atan2_r4.F90: Regenerate.
2279 * generated/_cos_c4.F90: Regenerate.
2280 * generated/_atan_r16.F90: Regenerate.
2281 * generated/_tanh_r10.F90: Regenerate.
2282 * generated/_atan2_r8.F90: Regenerate.
2283 * generated/_cos_c8.F90: Regenerate.
2284 * generated/_exp_r4.F90: Regenerate.
2285 * generated/_log_r10.F90: Regenerate.
2286 * generated/_exp_r8.F90: Regenerate.
2287 * generated/_abs_r4.F90: Regenerate.
2288 * generated/_abs_r8.F90: Regenerate.
2289 * generated/_sin_r16.F90: Regenerate.
2290 * generated/_tan_r4.F90: Regenerate.
2291 * generated/_tan_r8.F90: Regenerate.
2292 * generated/_sign_i4.F90: Regenerate.
2293 * generated/_sign_i8.F90: Regenerate.
2294 * generated/_exp_c16.F90: Regenerate.
2295 * generated/_sqrt_r16.F90: Regenerate.
2296 * generated/_conjg_c4.F90: Regenerate.
2297 * generated/_conjg_c8.F90: Regenerate.
2298 * generated/_dim_r16.F90: Regenerate.
2299 * generated/_mod_r10.F90: Regenerate.
2300 * generated/_abs_c10.F90: Regenerate.
2301 * generated/_conjg_c16.F90: Regenerate.
2302 * generated/_tan_r16.F90: Regenerate.
2303 * generated/_asinh_r10.F90: Regenerate.
2304 * generated/_abs_i4.F90: Regenerate.
2305 * generated/_abs_i8.F90: Regenerate.
2306 * generated/_acos_r10.F90: Regenerate.
2307 * generated/_exp_r10.F90: Regenerate.
2308 * generated/_acosh_r16.F90: Regenerate.
2309 * generated/_atan2_r16.F90: Regenerate.
2310 * generated/_cos_c16.F90: Regenerate.
2311 * generated/_mod_i16.F90: Regenerate.
2312 * generated/_asin_r4.F90: Regenerate.
2313 * generated/_anint_r16.F90: Regenerate.
2314 * generated/_asin_r8.F90: Regenerate.
2315 * generated/_aimag_c10.F90: Regenerate.
2316 * generated/_exp_c4.F90: Regenerate.
2317 * generated/_sinh_r10.F90: Regenerate.
2318 * generated/_exp_c8.F90: Regenerate.
2319 * generated/_log10_r4.F90: Regenerate.
2320 * generated/_log10_r8.F90: Regenerate.
2321 * generated/_abs_c4.F90: Regenerate.
2322 * generated/_abs_r16.F90: Regenerate.
2323 * generated/_abs_c8.F90: Regenerate.
2324 * generated/_asin_r10.F90: Regenerate.
2325 * generated/_sign_r10.F90: Regenerate.
2326 * generated/_atanh_r16.F90: Regenerate.
2327 * generated/_log_c10.F90: Regenerate.
2328 * generated/_cosh_r16.F90: Regenerate.
2329 * generated/_sin_c16.F90: Regenerate.
2330 * generated/_cos_r10.F90: Regenerate.
2331 * generated/_log10_r16.F90: Regenerate.
2332 * generated/_aint_r16.F90: Regenerate.
2333 * generated/_acos_r4.F90: Regenerate.
2334 * generated/_acos_r8.F90: Regenerate.
2335 * generated/_sqrt_c16.F90: Regenerate.
2336 * generated/_acosh_r4.F90: Regenerate.
2337 * generated/_atan_r10.F90: Regenerate.
2338 * generated/_acosh_r8.F90: Regenerate.
2339 * generated/_sign_i16.F90: Regenerate.
2340 * generated/_tanh_r16.F90: Regenerate.
2341 * generated/_log_r4.F90: Regenerate.
2342 * generated/_log_r8.F90: Regenerate.
2343 * generated/_sin_r4.F90: Regenerate.
2344 * generated/_sin_r8.F90: Regenerate.
2345 * generated/_log_r16.F90: Regenerate.
2346 * generated/_sin_r10.F90: Regenerate.
2347 * generated/_sqrt_r4.F90: Regenerate.
2348 * generated/_exp_c10.F90: Regenerate.
2349 * generated/_sqrt_r8.F90: Regenerate.
2350 * generated/_asinh_r4.F90: Regenerate.
2351 * generated/_sqrt_r10.F90: Regenerate.
2352 * generated/_asinh_r8.F90: Regenerate.
2353 * generated/_dim_r4.F90: Regenerate.
2354 * generated/_dim_r8.F90: Regenerate.
2355 * generated/_dim_r10.F90: Regenerate.
2356 * generated/_cosh_r4.F90: Regenerate.
2357 * generated/_conjg_c10.F90: Regenerate.
2358 * generated/_tan_r10.F90: Regenerate.
2359 * generated/_cosh_r8.F90: Regenerate.
2360 * generated/_mod_r16.F90: Regenerate.
2361 * generated/_abs_c16.F90: Regenerate.
2362 * generated/_cos_r4.F90: Regenerate.
2363 * generated/_asinh_r16.F90: Regenerate.
2364 * generated/_cos_r8.F90: Regenerate.
2365 * generated/_atanh_r4.F90: Regenerate.
2366 * generated/_atanh_r8.F90: Regenerate.
2367 * generated/_acos_r16.F90: Regenerate.
2368 * generated/_anint_r4.F90: Regenerate.
2369 * generated/_acosh_r10.F90: Regenerate.
2370 * generated/_anint_r8.F90: Regenerate.
2371 * generated/_exp_r16.F90: Regenerate.
2372 * generated/_mod_r4.F90: Regenerate.
2373 * generated/_cos_c10.F90: Regenerate.
2374 * generated/_atan2_r10.F90: Regenerate.
2375 * generated/_dim_i16.F90: Regenerate.
2376 * generated/_mod_r8.F90: Regenerate.
2377 * generated/_anint_r10.F90: Regenerate.
2378 * generated/_aint_r4.F90: Regenerate.
2379 * generated/_aint_r8.F90: Regenerate.
2380 * generated/_dim_i4.F90: Regenerate.
2381 * generated/_sinh_r4.F90: Regenerate.
2382 * generated/_log_c4.F90: Regenerate.
2383 * generated/_dim_i8.F90: Regenerate.
2384 * generated/_sinh_r8.F90: Regenerate.
2385 * generated/_log_c8.F90: Regenerate.
2386 * generated/_sin_c4.F90: Regenerate.
2387 * generated/_sin_c8.F90: Regenerate.
2388 * generated/misc_specifics.F90: Regenerate.
2389 * generated/_abs_r10.F90: Regenerate.
2390 * generated/_aimag_c16.F90: Regenerate.
2391 * generated/_atan_r4.F90: Regenerate.
2392 * generated/_sinh_r16.F90: Regenerate.
2393 * generated/_atan_r8.F90: Regenerate.
2394 * generated/_atanh_r10.F90: Regenerate.
2395 * generated/_cosh_r10.F90: Regenerate.
2396 * generated/_sqrt_c4.F90: Regenerate.
2397 * generated/_asin_r16.F90: Regenerate.
2399 2007-01-19 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2402 * acinclude.m4 (LIBGFOR_WORKING_GFORTRAN): New check.
2403 * configure.ac: Add call to LIBGFOR_WORKING_GFORTRAN.
2404 * configure: Regenerate.
2405 * config.h.in: Regenerate because it was forgottent in the last
2408 2007-01-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2409 Tobias Burnus <burnus@net-b.de>
2412 * runtime/environ.c (variable_table): New GFORTRAN_ERROR_DUMPCORE
2413 environment variable.
2414 * runtime/compile_options.c (set_std): Add new argument.
2415 * runtime/error.c (sys_exit): Move from io/unix.c. Add coredump
2417 * libgfortran.h (options_t): New dump_core and backtrace members.
2418 (sys_exit): Move prototype.
2419 * io/unix.c (sys_exit): Move to runtime/error.c.
2420 * configure.ac: Add check for getrlimit.
2421 * configure: Regenerate.
2423 2007-01-17 Tom Tromey <tromey@redhat.com>
2425 PR libfortran/27107:
2426 * aclocal.m4, configure, Makefile.in: Rebuilt.
2427 * configure.ac: Enable automake dependency tracking. Update
2428 minimum automake version.
2430 2007-01-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2433 * runtime/environ.c: Don't include io/io.h.
2434 * runtime/string.c: Don't include io/io.h.
2435 (compare0): Add cast to avoid warning.
2436 * runtime/error.c: Don't include io/io.h.
2437 (st_printf): Move to io/unix.c.
2438 * intrinsics/flush.c: Delete, contents moved to io/intrinsics.c.
2439 * intrinsics/fget.c: Likewise.
2440 * intrinsics/ftell.c: Likewise.
2441 * intrinsics/tty.c: Likewise.
2442 * libgfortran.h (DEFAULT_RECL, notification_std,
2443 get_unformatted_convert, IOPARM_*, st_parameter_common, unit_convert,
2444 DEFAULT_TEMPDIR): New declarations.
2445 * io/io.h (DEFAULT_RECL, notification_std, get_unformatted_convert,
2446 IOPARM_*, st_parameter_common, unit_convert, DEFAULT_TEMPDIR):
2447 Move to libgfortran.h.
2448 * io/unix.c: Add io/unix.h content.
2449 (st_printf): New function.
2450 * io/intrinsics.c: New file.
2451 * io/unix.h: Remove, contents moved into unix.c.
2452 * libtool-version: Update library version to 3.0.0.
2453 * configure.ac: Update library version to 0.3.
2454 * Makefile.am (intrinsics/fget.c, intrinsics/flush.c,
2455 intrinsics/ftell.c, intrinsics/tty.c, libgfortran.h): Remove targets.
2456 * Makefile.in: Regenerate.
2457 * configure: Regenerate.
2459 2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2462 * io/list_read.c (finish_separator): Don't call next_record.
2463 (list_formatted_read_scalar): Clean up some comments and whitespace.
2464 (nml_read_obj): Whitespace fix.
2466 2007-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2469 * io/unix.c (fd_flush): Don't seek if file is not seekable, defined as
2470 s->file_length == -1.
2471 (fd_alloc_w_at): Do not adjust file_length if file is not seekable.
2472 (fd_seek): If not seekable, just return success.
2473 (fd_truncate): If not seekable, no need to truncate. Return failure
2474 if seek fails and the stream is not a pipe.
2475 (fd_to_stream): Make test for non-seekable file more robust.
2477 2007-01-01 Steven G. Kargl <kargls@comcast.net>
2479 * ChangeLog: Copied to ...
2480 * ChangeLog-2006: here.
2483 Copyright (C) 2007 Free Software Foundation, Inc.
2485 Copying and distribution of this file, with or without modification,
2486 are permitted in any medium without royalty provided the copyright
2487 notice and this notice are preserved.