]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgfortran/ChangeLog-2007
Fix tests for std::variant to match original intention
[thirdparty/gcc.git] / libgfortran / ChangeLog-2007
CommitLineData
f6da67ae 12007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
2
3 PR libfortran/22423
4 * intrinsics/pack_generic.c (pack): Change type of mask argument
5 to gfc_array_l1 * in prototype and function.
6 (pack_char): Likewise.
7 * intrinsics/unpack_generic.c (unpack1): Likewise.
8 (unpack1_char): Likewise.
9 (unpack0): Likewise.
10 (unpack0_char): Likewise.
11
122007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
13
14 PR libfortran/34594
15 * runtime/error.c: If there was a previous error, don't
16 mask it with another error mesage, EOF or EOR condition.
17
182007-12-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
19
20 PR libfortran/34560
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.
23
242007-12-25 Daniel Franke <franke.daniel@gmail.com>
25
26 PR fortran/34533
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.
37
382007-12-25 Thomas Koenig <tkoenig@gcc.gnu.org>
39
40 PR libfortran/34566
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.
45
462007-12-19 Tobias Burnus <burnus@net-b.de>
47
48 PR fortran/34530
49 * io/list_read.c (eat_line): Move up in the file.
50 (eat_separator): In namelist mode, skip over comment lines.
51
522007-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
53
54 PR fortran/34427
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.
58
592007-12-13 Thomas Koenig <tkoenig@gcc.gnu.org>
60
61 PR libfortran/34370
62 PR libfortran/34323
63 PR libfortran/34405
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
71 direct access.
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
75 direct access.
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.
84
852007-12-13 Tobias Burnus <burnus@net-b.de>
86
87 PR fortran/34427
88 * io/list_read.c (read_real): Fix unwinding for namelists.
89
902007-12-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
91
92 PR libfortran/34411
93 * io/read.c (convert_real, read_l, read_decimal, read_radix, read_f):
94 Call next_record after bad read or overflow error.
95
962007-12-09 Tobias Burnus <burnus@net-b.de>
97
98 PR fortran/34404
99 * io/list_read.c (parse_real): Remove superfluous "goto bad;".
100
1012007-12-08 Tobias Burnus <burnus@net-b.de>
102
103 PR fortran/34319
104 * io/list_read.c (parse_real, read_real): Support NaN/Infinity.
105
1062007-12-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
107 Thomas Koenig <tkoenig@gcc.gnu.org>
108
109 PR libfortran/33985
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.
114
1152007-12-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
116
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.
122
1232007-11-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
124
125 PR libfortran/34291
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.
129
1302007-11-29 Steven G. Kargl <kargls@comcast.net>
131
132 PR libfortran/33583
133 * libgfortran/gfortran.map: Add tgammaf, tgamma, lgamma, and lgammaf.
134 * gfortran.dg/gamma_5.f90: Remove xfail.
135
1362007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
137
138 PR libfortran/33583
139 PR libfortran/33698
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,
144 lgammaf and lgammal.
145 * config.h.in: Regenerate.
146 * configure: Regenerate.
147
1482007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
149
150 * mk-kinds-h.sh: Change sed syntax.
151
1522007-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
153
154 PR libfortran/33985
155 * io/transfer.c (finalize_transfer): Revert previous patch.
156
1572007-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
158
159 PR libfortran/33985
160 * io/transfer.c (finalize_transfer): Do not flush for
161 unformatted STREAM I/O.
162
1632007-10-27 Tobias Burnus <burnus@net-b.de>
164
165 * mk-kinds-h.sh: Change LANG=C to LC_ALL=C.
166
1672007-10-26 Tobias Burnus <burnus@net-b.de>
168
169 * mk-kinds-h.sh: Add "LANG=C".
170
1712007-10-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
172
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
177 GFC_REAL_LARGEST.
178
1792007-10-19 Ben Elliston <bje@au.ibm.com>
180
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.
186
1872007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
188 Jerry DeLisle <jvdelisle@gcc.gnu.org>
189
190 PR libfortran/33795
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.
197
1982007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
199
200 PR libfortran/32021
201 * runtime/backtrace.c (local_strcasestr): Protect by appropriate
202 macros.
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.
208
2092007-10-18 Ben Elliston <bje@au.ibm.com>
210
211 * runtime/environ.c (init_choice): Remove unused function.
212 (show_choice): Likewise.
213 (choice): Remove.
214 (FP_ROUND_NEAREST, FP_ROUND_UP, FP_ROUND_DOWN, FP_ROUND_ZERO):
215 Remove.
216 (precision, signal_choices): Remove.
217
2182007-10-15 Christopher D. Rickett <crickett@lanl.gov>
219
220 PR fortran/32600
221 * libgfortran/intrinsics/iso_c_binding.c: Remove c_associated_1
222 and c_associated_2.
223 * libgfortran/intrinsics/iso_c_binding.h: Ditto.
224 * libgfortran/gfortran.map: Ditto.
225
2262007-10-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
227
228 PR libfortran/33055
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.
232
2332007-10-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
234
235 PR libfortran/33672
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.
241
2422007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
243
244 PR libfortran/33253
245 * io/list_read.c (read_character): Use line_buffer to scan ahead for
246 object name or string when no delimiter is found.
247
2482007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
249
250 PR libfortran/32021
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
258 allocate_init_value.
259
2602007-10-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
261
262 PR libfortran/33253
263 * io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
264 and quote value in check of first character in string.
265
2662007-10-02 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
267
268 PR fortran/33469
269 * io/write.c (write_real): Widen the default formats.
270
2712007-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
272
273 PR libfortran/33400
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.
276
2772007-09-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
278
279 PR libfortran/33421
280 * io/list_read.c (read_character): Revert r128057.
281
2822007-09-21 Bernhard Fischer <aldot>
283
284 PR fortran/31546
285 * (configure.ac): Add --enable-intermodule for onestep build.
286 * (Makefile.am): Handle onestep build.
287 * (configure, Makefile.in): Regenerate.
288
2892007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
290
291 PR libfortran/26253
292 * intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate.
293
2942007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
295
296 PR libfortran/23272
297 * io/unix.c (id_from_handle, id_from_path, id_from_fd): New
298 functions.
299 (compare_file_filename, find_file, find_file0): Use the new
300 functions above.
301
3022007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
303
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.
308
3092007-09-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
310
311 PR libfortran/21185
312 * runtime/compile_options.c (set_options): Fix typo.
313 * runtime/main.c (store_exe_path): If getcwd is not available,
314 don't use it.
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.
321
3222007-09-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
323
324 * io/io.h: Include libgfortran.h first.
325
3262007-09-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
327
328 PR libfortran/33386
329 * runtime/select.c (select_string): Initialize default_jump.
330
3312007-09-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
332
333 PR libfortran/33307
334 * io/filepos.c (st_backspace): Don't truncate when already at the end
335 of the file.
336
3372007-09-07 Uros Bizjak <ubizjak@gmail.com>
338
339 * config/fpu-387.h: Include cpuid.h.
340 (set_fpu): Use __get_cpuid to check for SSE.
341
3422007-09-06 Thomas Koenig <tkoenig@gcc.gnu.org>
343
344 PR fortran/33298
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.
348
3492007-09-06 David Edelsohn <edelsohn@gnu.org>
350
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.
355
3562007-09-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
357
358 PR libfortran/33253
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.
362
3632007-09-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
364
365 PR libfortran/33225
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.
381
3822007-09-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
383
384 PR libfortran/33253
385 * io/list_read.c (read_character): Use DELIM_APOSTROPHE and
386 DELIM_QUOTE in check of first character in string.
387
3882007-09-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
389
390 PR fortran/31675
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
397 CONVERT_*.
398 * runtime/string.c (find_option): Use LIBERROR_BAD_OPTION instead
399 of ERROR_BAD_OPTION.
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,
405 st_open): Likewise.
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,
412 read_f): Likewise.
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):
420 Likewise.
421 * io/format.c (format_error): Likewise.
422
4232007-08-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
424
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.
533 * fmain.c: 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.
818
8192007-08-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
820
821 PR libfortran/33225
822 * io/write.c: Revert changes from patch of 2007-08-27.
823 * io/write_float.def: Remove file, reverting addition.
824
8252007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
826
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.
832
8332007-08-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
834
835 PR libfortran/33055
836 Revert previous patch.
837
8382007-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
839
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.
855
8562007-08-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
857
858 PR libfortran/33055
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.
862
8632007-08-24 Thomas Koenig <tkoenig@gcc.gnu.org>
864
865 PR fortran/32972
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
871 by kind of mask
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.
1032
10332007-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1034
1035 PR libfortran/23138
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.
1042
10432007-08-22 Bernhard Fischer <rep.dot.nop@gmail.com>
1044
1045 * libgfortran/Makefile.am (AM_CPPFLAGS): Commentary typo fix.
1046
10472007-08-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1048
1049 PR fortran/33079
1050 * intrinsics/string_intrinsics.c (string_trim, string_minmax): Fix
1051 the zero-length result case.
1052
10532007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1054
1055 PR fortran/33077
1056 * intrinsics/random.c (random_seed_i8): Fix code logic.
1057
10582007-08-13 Danny Smith <dannysmit@users.sourceforge.net>
1059
1060 * acinclude.m4 (GTHREAD_USE_WEAK) Define to 0 for mingw32.
1061 * configure: Regenerate.
1062
10632007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1064
1065 PR fortran/30964
1066 PR fortran/33054
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.
1074
10752007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1076 Tobias Burnus <burnus@gcc.gnu.org>
1077
1078 PR fortran/31189
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.
1085
10862007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1087
1088 * intrinsics/string_intrinsics.c (compare_string): Return an int.
1089 * libgfortran.h (compare_string): Likewise.
1090
10912007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1092
1093 PR fortran/31270
1094 * runtime/error.c (runtime_error_at): Add a variable number of
1095 arguments.
1096 * libgfortran.h (runtime_error_at): Update prototype.
1097
10982007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1099
1100 PR fortran/32933
1101 * intrinsics/associated.c: Change return type of associated into
1102 a C int.
1103
11042007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1105
1106 PR libfortran/33039
1107 * io/list_read.c (find_nml_name): Check for a space after a namelist
1108 name match.
1109
11102007-08-09 Tobias Burnus <burnus@net-b.de>
1111
1112 PR fortran/32987
1113 * io/format.c (next_char): Treat '\t' as ' ' in format specification.
1114
11152007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1116
1117 PR fortran/30947
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.
1124
11252007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1126
1127 PR fortran/29828
1128 * intrinsics/string_intrinsics.c (string_minmax): New function
1129 and prototype.
1130 * gfortran.map (GFORTRAN_1.0): Add _gfortran_string_minmax
1131
11322007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1133
1134 PR fortran/31202
1135 * intrinsics/c99_functions.c (roundl): Provide fallback
1136 implementation for systems without ceill.
1137 * c99_protos.h (roundl): Define prototype in all cases.
1138
11392007-08-03 Thomas Koenig <tkoenig@gcc.gnu.org>
1140
1141 PR libfortran/32977
1142 * io/unix.c: If there is no vsnprintf, use vsprintf and issue
1143 a fatal error when a buffer overrun occurs.
1144
11452007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1146
1147 PR fortran/31202
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.
1157
11582007-07-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1159
1160 * libgfortran.h: Include <stdarg.h>.
1161
11622007-07-29 Thomas Koenig <tkoenig@gcc.gnu.org>
1163
1164 PR libfortran/32858
1165 PR libfortran/30814
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
1176 st_vprintf().
1177 * intrinsics/pack_generic.c: Output extents of LHS and RHS for
1178 bounds error.
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.
1197
11982007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
1199
1200 * io/transfer.c (st_set_nml_var_dim): Use index_type instead of
1201 GFC_INTEGER_4 for array descriptor triplets.
1202
12032007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1204
1205 * io/unix.c (stream_ttyname): Mark argument as potentialy unused.
1206
12072007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1208
1209 PR fortran/32035
1210 * runtime/select.c (select_string): Adjust prototype and function
1211 so that the return value is an integer, not a pointer.
1212
12132007-07-24 Tobias Burnus <burnus@net-b.de>
1214
1215 * libgfortran.h: Add bounds_check to compile_options_t.
1216
12172007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
1218
1219 PR fortran/30814
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
1226 detected.
1227
12282007-07-23 Christopher D. Rickett <crickett@lanl.gov>
1229
1230 PR fortran/32600
1231 * intrinsics/iso_c_binding.c (c_funloc): Remove.
1232 * intrinsics/iso_c_binding.h: Remove c_funloc.
1233 * gfortran.map: Ditto.
1234
12352007-07-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1236
1237 * io/read.c (convert_real): Generate error only on EINVAL.
1238
12392007-07-21 Christopher D. Rickett <crickett@lanl.gov>
1240
1241 PR fortran/32627
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
1248 character kind.
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
1252 and complex types.
1253
12542007-07-19 Christopher D. Rickett <crickett@lanl.gov>
1255
1256 PR fortran/32600
1257 * libgfortran/intrinsics/iso_c_binding.c: Remove C_LOC.
1258 * libgfortran/intrinsics/iso_c_binding.h: Ditto.
1259 * libgfortran/gfortran.map: Ditto.
1260
12612007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1262 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1263
1264 PR fortran/32611
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.
1274
12752007-07-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1276
1277 PR libgfortran/32752
1278 * io/unix.c (unix_stream): Move buffer pointer adjacent to
1279 small_buffer.
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.
1283
12842007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1285
1286 PR fortran/32357
1287 * intrinsics/mvbits.c: Change prototype so that FROMPOS, LEN and
1288 TOPOS arguments are C int.
1289
12902007-07-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1291
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.
1299
13002007-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
1301
1302 PR libfortran/32336
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.
1314
13152007-07-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1316
1317 PR libgfortran/32678
1318 * io/transfer.c (formatted_transfer_scalar): Don't allow
1319 pending_spaces to go negative.
1320
13212007-07-08 Thomas Koenig <tkoenig@gcc.gnu.org>
1322
1323 PR libfortran/32217
1324 * intrinsics/unpack_generic.c: If the destination array is
1325 empty, return early.
1326
13272007-07-05 H.J. Lu <hongjiu.lu@intel.com>
1328
1329 * aclocal.m4: Regenerated.
1330
13312007-07-04 David Edelsohn <edelsohn@gnu.org>
1332
1333 * configure.ac: SUBST CFLAGS.
1334 * configure: Regenerate.
1335
13362007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
1337
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
1344 malloc function.
1345
13462007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
1347
1348 Restore collateral damage from ISO C Binding merge.
1349
13502007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1351
1352 PR libgfortran/32456
1353 * io/unit.c (filename_from_unit): Don't use find_unit, instead search
1354 for unit directly.
1355
13562007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
1357
1358 * Makefile.in: Regenerated with automake 1.9.6.
1359
13602007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
1361
1362 * Makefile.in: Remove extraneous kill.lo rule.
1363
13642007-07-02 Janne Blomqvist <jb@gcc.gnu.org>
1365
1366 PR fortran/32239
1367 * generated/pow_r*_i4.c: Removed.
1368
13692007-07-01 Christopher D. Rickett <crickett@lanl.gov>
1370
1371 * Makefile.in: Add support for iso_c_generated_procs.c and
1372 iso_c_binding.c.
1373 * Makefile.am: Ditto.
1374 * intrinsics/iso_c_generated_procs.c: New file containing helper
1375 functions.
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.
1380
13812007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
1382
1383 PR fortran/32239
1384 * Makefile.am: Don't generate real**int4 pow functions.
1385 * gfortran.map: Remove real**int4 pow symbols.
1386 * Makefile.in: Regenerated.
1387
13882007-07-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1389
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.
1393
13942007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
1395
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.
1404
14052007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1406
1407 PR libgfortran/32456
1408 * io/unit.c (filename_from_unit): Don't use find_unit, instead search
1409 for unit directly.
1410
14112007-06-24 Adam Nemet <anemet@caviumnetworks.com>
1412
1413 PR libfortran/32495
1414 * runtime/backtrace.c (local_strcasestr): Rename from strcasestr.
1415 (show_backtrace): Rename strcasestr to local_strcasestr.
1416
14172007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1418
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
1422 filename_from_unit.
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.
1427
14282007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1429
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.
1433
14342007-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1435
1436 PR libfortran/32345
1437 * runtime/backtrace.c (show_backtrace): Only use snprintf if
1438 available.
1439
14402007-06-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1441
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.
1445
14462007-06-02 Paolo Bonzini <bonzini@gnu.org>
1447
1448 * configure: Regenerate.
1449
14502007-05-28 Tobias Burnus <burnus@net-b.de>
1451
1452 PR fortran/32124
1453 * runtime/memory.c (allocate_size): Use ERROR_ALLOCATION.
1454 (allocate,allocate64): Use stat variable if present.
1455
14562007-05-27 Janne Blomqvist <jb@gcc.gnu.org>
1457
1458 * runtime/string.c (compare0): Use gfc_charlen_type instead of
1459 int.
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
1467 strcpy/strcat.
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.
1472
14732007-05-26 Janne Blomqvist <jb@gcc.gnu.org>
1474
1475 * io/unix.c (unix_stream): Rearrange struct members, remove
1476 small_buffer.
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.
1491
14922007-05-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1493
1494 * io/transfer.c (unformatted_read): Use size from front end
1495 eliminating use of size_from_real_kind.
1496 (unformatted_write): Ditto.
1497
14982007-05-23 Steve Ellcey <sje@cup.hp.com>
1499
1500 * Makefile.in: Regenerate.
1501 * configure: Regenerate.
1502 * aclocal.m4: Regenerate.
1503
15042007-05-22 Tobias Burnus <burnus@net-b.de>
1505
1506 * libgfortran.h: Mark stop_numeric as noreturn.
1507
15082007-05-22 Tobias Burnus <burnus@net-b.de>
1509
1510 PR libgfortran/31295
1511 * intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
1512 * intrinsics/eoshift2.c (eoshift2): Ditto.
1513
15142007-05-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1515
1516 PR libfortran/31964
1517 * intrinsics/ishftc.c (ishftc4, ishftc8, ishftc16): Fix mask to handle
1518 shift of bit-size number of bits.
1519
15202007-05-17 Tobias Burnus <burnus@net-b.de>
1521
1522 PR fortran/31917
1523 * runtime/environ.c (mark_range): Fix setting default convert unit.
1524
15252007-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1526
1527 PR libfortran/31922
1528 * intrinsics/string_intrinsics.c (string_trim): Set result to null if
1529 string length is zero.
1530
15312007-05-15 Tobias Burnus <burnus@net-b.de>
1532
1533 PR libfortran/31915
1534 * io/transfer.c (unformatted_read): Use proper size for real(10).
1535 (unformatted_write): Ditto.
1536
15372007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1538
1539 PR fortran/30723
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.
1551
15522007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1553
1554 PR libfortran/31880
1555 * io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
1556
15572007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1558
1559 PR libfortran/31607
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.
1563
15642007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1565
1566 PR libfortran/31201
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
1574 for generate_error.
1575 * io/lock.c (library_start): Fix check for error condition.
1576 * io/transfer.c (data_transfer_init): Add library check.
1577
15782007-05-04 Daniel Franke <franke.daniel@gmail.com>
1579
1580 PR fortran/22359
1581 * io/intrinsics.c (fseek_sub): New.
1582 * io/unix.c (fd_fseek): Change logical and physical offsets only
1583 if seek succeeds.
1584 * gfortran.map (fseek_sub): New.
1585
15862007-05-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1587
1588 PR libfortran/31210
1589 * io/transfer.c (transfer_character): Avoid passing a NULL
1590 pointer as source to the transfer routines, if the string length
1591 is zero.
1592
15932007-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1594
1595 PR libfortran/31501
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
1600 these functions.
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.
1603
16042007-04-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1605
1606 PR libfortran/31532
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
1612 to zero.
1613 * io/unit.c (update_position): New function to update position info
1614 used by inquire.
1615 * io/transfer.c (next_record): Fix typo and use new function.
1616
16172007-04-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1618
1619 PR libfortran/31299
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.
1625
16262007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
1627
1628 * configure: Regenerate using autoconf 2.59.
1629 * Makefile.in: Likewise.
1630 * config.h.in: Likewise.
1631
16322007-04-24 Janne Blomqvist <jb@gcc.gnu.org>
1633
1634 PR libfortran/27740
1635 * configure.ac: New test to determine if symbol versioning is
1636 supported.
1637 * Makefile.am: Use result of above test to add appropriate linker
1638 flags.
1639 * gfortran.map: New file.
1640 * configure: Regenerated.
1641 * Makefile.in: Regenerated.
1642 * config.h.in: Regenerated.
1643
16442007-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
1645
1646 PR fortran/31618
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.
1652
16532007-04-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1654
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.
1659
16602007-04-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1661 Tobias Burnus <burnus@net-b.de>
1662
1663 PR libfortran/31286
1664 PR libfortran/31296
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.
1668
16692007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1670
1671 * io/open.c (test_endfile): Revert changes for 31052, restoring this
1672 function.
1673
16742007-04-14 Steve Ellcey <sje@cup.hp.com>
1675
1676 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS. Add libgfortran_la_LINK.
1677 * Makefile.in: Regenerate.
1678
16792007-04-11 Kai Tietz <kai.tietz@onevision.com>
1680
1681 * configure: Regenerate.
1682
16832007-04-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1684
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
1690 libgfortran.h.
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.
1869
18702007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1871
1872 PR libfortran/31395
1873 * io/format.c (parse_format_list): Fix parsing.
1874
18752007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1876
1877 PR fortran/31304
1878 intrinsics/string_intrinsics.c (string_repeat): Remove.
1879
18802007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1881
1882 PR libfortran/31052
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.
1889
18902007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1891
1892 PR libfortran/31366
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.
1895
18962007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1897
1898 PR libfortran/31207
1899 * io/unit.c (close_unit_1): If there are bytes previously written from
1900 ADVANCE="no", move to the end before closing.
1901
19022007-03-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1903
1904 PR libfortran/31335
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.
1911
19122007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1913
1914 PR libfortran/31052
1915 * io/transfer.c (next_record_r): Do not call test_endfile if in
1916 namelist mode.
1917
19182007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1919
1920 PR libfortran/31199
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
1924 saved_pos.
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.
1928
19292007-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
1930
1931 PR libfortran/31196
1932 * intrinsics/reshape_generic.c (reshape_internal): Increment
1933 correct variable.
1934
19352007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1936
1937 PR libfortran/31052
1938 * file_pos.c: Update Copyright year.
1939 * io/open.c (test_endfile): Restore test_endfile to fix SPEC
1940 regression. Update Copyright year.
1941 * io/io.h: Same.
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
1946
19472007-03-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1948
1949 * configure.ac: Add missing check for gettimeofday.
1950 * config.h.in: Renegerate.
1951 * configure: Regenerate.
1952
19532007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1954
1955 PR libfortran/31052
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
1961 for is_special.
1962 * io/unix.c (is_special): New function. Fix whitespace.
1963 * io/transfer.c (next_record_r): Remove use of test_endfile.
1964
19652007-03-16 David Edelsohn <edelsohn@gnu.org>
1966
1967 * runtime/main.c: Include "config.h" first.
1968
19692007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1970
1971 PR libfortran/31099
1972 * io/file_pos.c (st_rewind): Don't set bytes_left to zero.
1973
19742007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1975
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
1986 and getppid.
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.
1992
19932007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1994
1995 PR libfortran/31051
1996 * io/transfer.c (formatted_transfer_scalar): Adjust position for
1997 pending spaces when in writing mode. Clean up some formatting.
1998
19992007-03-14 Thomas Koenig <Thomas.Koenig@online.de>
2000
2001 PR libfortran/30690
2002 * all.m4: Quote everything, except for m4 macros.
2003 * any.m4: Likewise.
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.
2015 * pow.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.
2023
20242007-03-14 Jakub Jelinek <jakub@redhat.com>
2025
2026 * io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with
2027 O_RDONLY even if errno is EROFS.
2028
20292007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2030
2031 PR libfortran/31099
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.
2037
20382007-03-08 Daniel Franke <franke.daniel@gmail.com>
2039
2040 PR fortran/30947
2041 * intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
2042 integer arguments.
2043
20442007-03-04 Thomas Koenig <Thomas.Koenig@online.de>
2045
2046 PR libfortran/30981
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.
2081
20822007-03-03 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2083
2084 PR libfortran/31001
2085 * intrinsics/pack_generic.c (pack_internal): Add special checks
2086 for zero-sized arrays.
2087
20882007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
2089
2090 * Makefile.am: Add dummy install-pdf target.
2091 * Makefile.in: Regenerate
2092
20932007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2094
2095 PR libfortran/30918
2096 * io/listread.c (namelist_read): Eat comment line.
2097
20982007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2099
2100 PR libfortran/30910
2101 * io/write.c (output_float): Add condition of format F only for
2102 special case rounding with zero precision.
2103
21042007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
2105
2106 PR libfortran/30533
2107 PR libfortran/30765
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
2111 maxloc0_16_i2.c.
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
2114 maxloc1_16_i2.c.
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
2118 minloc0_16_i2.c.
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
2121 minloc1_16_i2.c.
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.
2165
21662007-02-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2167
2168 * runtime/memory.c (deallocate): Correct comment.
2169
21702007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
2171
2172 * Makefile.am: Use $(M4) instead of m4.
2173 * Makefile.in: Regenerate.
2174
21752007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
2176
2177 * Makefile.am: Remove $(srcdir) from assorted targets
2178 in maintainer mode.
2179 * Makefile.in: Regenerate.
2180
21812007-02-09 Thomas Koenig <Thomas.Koenig@online.de>
2182 Tobias Burnus <burnus@net-b.de>
2183
2184 PR fortran/30512
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.
2207
22082007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2209
2210 PR fortran/30611
2211 * intrinsics/string_intrinsics.c (string_repeat): Don't check
2212 if ncopies is negative.
2213
22142007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2215
2216 PR libfortran/30007
2217 * libgfortran.h: Do not prefix symbol name with
2218 __USER_LABEL_PREFIX__ when used in __attribute__((__alias__(...))).
2219
22202007-02-02 Paul Thomas <pault@gcc.gnu.org>
2221
2222 PR fortran/30284
2223 PR fortran/30626
2224 * io/transfer.c (init_loop_spec, next_array_record): Change to
2225 lbound rather than unity base.
2226
22272007-01-21 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2228
2229 * runtime/error.c: Include sys/time.h before sys/resource.h.
2230
22312007-01-21 Thomas Koenig <Thomas.Koenig@online.de>
2232
2233 PR libfortran/30525
2234 * intrinsics/string_intrinsics.c(compare_string): Make
2235 sure that comparisons are done unsigned.
2236
22372007-01-21 Tobias Burnus <burnus@net-b.de>
2238
2239 PR libfortran/30015
2240 * intrinsics/date_and_time.c (date_and_time): Fix case where time
2241 can go backwards.
2242 * configure.ac: Remove AC_TRY_RUN test for timezone in
2243 gettimeofday.
2244 * acinclude.m4: Ditto.
2245 * configure: Regenerate.
2246 * config.h.in: Regenerate.
2247
22482007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2249
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.
2398
23992007-01-19 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2400
2401 PR libfortran/26893
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
2406 commit.
2407
24082007-01-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2409 Tobias Burnus <burnus@net-b.de>
2410
2411 PR libfortran/29649
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
2416 functionality.
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.
2422
24232007-01-17 Tom Tromey <tromey@redhat.com>
2424
2425 PR libfortran/27107:
2426 * aclocal.m4, configure, Makefile.in: Rebuilt.
2427 * configure.ac: Enable automake dependency tracking. Update
2428 minimum automake version.
2429
24302007-01-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
2431
2432 PR libfortran/27107
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.
2458
24592007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2460
2461 PR libfortran/30435
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.
2465
24662007-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
2467
2468 PR libfortran/30162
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.
2476
24772007-01-01 Steven G. Kargl <kargls@comcast.net>
2478
2479 * ChangeLog: Copied to ...
2480 * ChangeLog-2006: here.
639d12cd 2481
2482\f
2483Copyright (C) 2007 Free Software Foundation, Inc.
2484
2485Copying and distribution of this file, with or without modification,
2486are permitted in any medium without royalty provided the copyright
2487notice and this notice are preserved.