re PR fortran/31202 (Incorrect rounding generated for NINT)
[gcc.git] / libgfortran / ChangeLog
1 2007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
2
3 PR fortran/31202
4 * intrinsics/c99_functions.c (roundl): Provide fallback
5 implementation for systems without ceill.
6 * c99_protos.h (roundl): Define prototype in all cases.
7
8 2007-08-03 Thomas Koenig <tkoenig@gcc.gnu.org>
9
10 PR libfortran/32977
11 * io/unix.c: If there is no vsnprintf, use vsprintf and issue
12 a fatal error when a buffer overrun occurs.
13
14 2007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
15
16 PR fortran/31202
17 * intrinsics/c99_functions.c (roundl,lroundf,lround,lroundl,
18 llroundf,llround,llroundl): New functions.
19 * c99_protos.h (roundl,lroundf,lround,lroundl,llroundf,llround,
20 llroundl): New prototypes.
21 * configure.ac: Check for lroundf, lround, lroundl, llroundf,
22 llround and llroundl.
23 * configure: Regenerate.
24 * Makefile.in: Regenerate.
25 * config.h.in: Regenerate.
26
27 2007-07-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
28
29 * libgfortran.h: Include <stdarg.h>.
30
31 2007-07-29 Thomas Koenig <tkoenig@gcc.gnu.org>
32
33 PR libfortran/32858
34 PR libfortran/30814
35 * configure.ac: Added checks for presence of stdio.h and
36 stdarg.h. Test presence of vsnprintf().
37 * configure: Regenerated.
38 * config.h.in: Regenerated.
39 * libgfortran.h: Include <stdio.h>. Add printf attribute to
40 prototype of runtime_error. Remove prototype for st_sprintf.
41 Add prototype for st_vprintf.
42 * runtime/main.c (store_exec_path): Replace st_sprintf by sprintf.
43 * runtime/error.c (st_sprintf): Remove.
44 (runtime_error): Rewrite as a variadic function. Call
45 st_vprintf().
46 * intrinsics/pack_generic.c: Output extents of LHS and RHS for
47 bounds error.
48 * io/open.c (new_unit): Replace st_sprintf by sprintf.
49 * io/list_read.c (convert_integer): Likewise.
50 (parse_repeat): Likewise.
51 (read_logical): Likewise.
52 (read_character): Likewise.
53 (parse_real): Likewise.
54 (read_real): Likewise.
55 (check_type): Likewise.
56 (nml_parse_qualifyer): Likewise.
57 (nml_read_obj): Likewise.
58 (nml_get_ojb_data): Likewise.
59 * io/unix.c (init_error_stream): Remove.
60 (tempfile): Replace st_sprintf by sprintf.
61 (st_vprintf): New function.
62 (st_printf): Rewrite to call st_vprintf.
63 * io/transfer.c (require_type): Replace st_sprintf by sprintf.
64 * io/format.c (format_error): Likewise.
65 * io/write.c (nml_write_obj): Likewise.
66
67 2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
68
69 * io/transfer.c (st_set_nml_var_dim): Use index_type instead of
70 GFC_INTEGER_4 for array descriptor triplets.
71
72 2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
73
74 * io/unix.c (stream_ttyname): Mark argument as potentialy unused.
75
76 2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
77
78 PR fortran/32035
79 * runtime/select.c (select_string): Adjust prototype and function
80 so that the return value is an integer, not a pointer.
81
82 2007-07-24 Tobias Burnus <burnus@net-b.de>
83
84 * libgfortran.h: Add bounds_check to compile_options_t.
85
86 2007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
87
88 PR fortran/30814
89 * libgfortran.h: Add bounds_check to compile_options_t.
90 * runtime/compile_options.c (set_options): Add handling
91 of compile_options.bounds_check.
92 * intrinsics/pack_generic.c (pack_internal): Also determine
93 the number of elements if compile_options.bounds_check is
94 true. Raise runtime error if a different array shape is
95 detected.
96
97 2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
98
99 PR fortran/32600
100 * intrinsics/iso_c_binding.c (c_funloc): Remove.
101 * intrinsics/iso_c_binding.h: Remove c_funloc.
102 * gfortran.map: Ditto.
103
104 2007-07-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
105
106 * io/read.c (convert_real): Generate error only on EINVAL.
107
108 2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
109
110 PR fortran/32627
111 * libgfortran/intrinsics/iso_c_generated_procs.c: Add c_f_pointer
112 for character/string arguments.
113 * libgfortran/intrinsic/iso_c_binding.c (c_f_pointer_u0): Allow
114 the optional SHAPE arg to be any valid integer kind.
115 * libgfortran/gfortran.map: Add c_f_pointer_s0.
116 * libgfortran/mk-kinds-h.sh: Save smallest integer kind as default
117 character kind.
118 * libgfortran/intrinsics/iso_c_generated_procs.c: Add versions of
119 c_f_pointer for complex and logical types.
120 * libgfortran/gfortran.map: Add c_f_pointer versions for logical
121 and complex types.
122
123 2007-07-19 Christopher D. Rickett <crickett@lanl.gov>
124
125 PR fortran/32600
126 * libgfortran/intrinsics/iso_c_binding.c: Remove C_LOC.
127 * libgfortran/intrinsics/iso_c_binding.h: Ditto.
128 * libgfortran/gfortran.map: Ditto.
129
130 2007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
131 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
132
133 PR fortran/32611
134 * runtime/compile_options.c (set_std): Remove.
135 (set_options): New function.
136 (init_compile_options): Add initialization for -fsign-zero option.
137 * gfortran.map (GFORTRAN_1.0): Rename _gfortran_set_std into
138 _gfortran_set_options.
139 * libgfortran.h (compile_options_t): Add sign_zero field.
140 * io/write.c (output_float): Use the sign bit of the value to determine
141 if a negative sign should be emitted for zero values. Do not emit the
142 negative sign for zero if -fno-sign-zero was set during compile.
143
144 2007-07-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
145
146 PR libgfortran/32752
147 * io/unix.c (unix_stream): Move buffer pointer adjacent to small_buffer.
148 * io/transfer.c (formatted_transfer_scalar): If stream I/O, set
149 bytes_used to zero. Fix off by one error in calculation of pos and
150 skips. Eliminate duplicate pending_spaces check.
151
152 2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
153
154 PR fortran/32357
155 * intrinsics/mvbits.c: Change prototype so that FROMPOS, LEN and
156 TOPOS arguments are C int.
157
158 2007-07-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
159
160 PR libgfortran/32702
161 * io/unix.c (unix_stream): Restore buffer pointer and small_buffer.
162 (fd_alloc): If the number of bytes needed is greater than the default
163 BUFFER_SIZE, allocate a new buffer large enough. Free the old buffer if
164 necessary. (fd_sfree): Restore use of buffer pointer.
165 (fd_close): Likewise. (fd_open): Likewise.
166 (init_error_stream): Likewise.
167
168 2007-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
169
170 PR libfortran/32336
171 * m4/matmul.m4: When the dimension of b is incorrect,
172 raise a runtime error instead of a failed assertion.
173 * generated/matmul_i1.c: Regenerated.
174 * generated/matmul_i2.c: Regenerated.
175 * generated/matmul_i4.c: Regenerated.
176 * generated/matmul_i8.c: Regenerated.
177 * generated/matmul_i16.c: Regenerated.
178 * generated/matmul_r4.c: Regenerated.
179 * generated/matmul_r8.c: Regenerated.
180 * generated/matmul_r10.c: Regenerated.
181 * generated/matmul_r16.c: Regenerated.
182
183 2007-07-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
184
185 PR libgfortran/32678
186 * io/transfer.c (formatted_transfer_scalar): Don't allow pending_spaces
187 to go negative.
188
189 2007-07-08 Thomas Koenig <tkoenig@gcc.gnu.org>
190
191 PR libfortran/32217
192 * intrinsics/unpack_generic.c: If the destination array is
193 empty, return early.
194
195 2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
196
197 * aclocal.m4: Regenerated.
198
199 2007-07-04 David Edelsohn <edelsohn@gnu.org>
200
201 * configure.ac: SUBST CFLAGS.
202 * configure: Regenerate.
203
204 2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
205
206 * libgfortran.h: Mark internal_malloc_size as a malloc function.
207 * runtime/memory.c (internal_realloc_size): Remove.
208 (internal_realloc): Call realloc directly instead of
209 internal_realloc_size.
210 (allocate_size): Remove.
211 (allocate): Call malloc directly instead of allocate_size, mark as
212 malloc function.
213
214 2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
215
216 Restore collateral damage from ISO C Binding merge.
217
218 2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
219
220 PR libgfortran/32456
221 * io/unit.c (filename_from_unit): Don't use find_unit, instead search
222 for unit directly.
223
224 2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
225
226 * Makefile.in: Regenerated with automake 1.9.6.
227
228 2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
229
230 * Makefile.in: Remove extraneous kill.lo rule.
231
232 2007-07-02 Janne Blomqvist <jb@gcc.gnu.org>
233
234 PR fortran/32239
235 * generated/pow_r*_i4.c: Removed.
236
237 2007-07-01 Christopher D. Rickett <crickett@lanl.gov>
238
239 * Makefile.in: Add support for iso_c_generated_procs.c and
240 iso_c_binding.c.
241 * Makefile.am: Ditto.
242 * intrinsics/iso_c_generated_procs.c: New file containing helper
243 functions.
244 * intrinsics/iso_c_binding.c: Ditto.
245 * intrinsics/iso_c_binding.h: New file
246 * gfortran.map: Include the __iso_c_binding_c_* functions.
247 * libgfortran.h: define GFC_NUM_RANK_BITS.
248
249 2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
250
251 PR fortran/32239
252 * Makefile.am: Don't generate real**int4 pow functions.
253 * gfortran.map: Remove real**int4 pow symbols.
254 * Makefile.in: Regenerated.
255
256 2007-07-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
257
258 PR libgfortran/32554
259 * io/write.c (output_float): Set edigits to a fixed size, avoiding
260 variation in field width calculation and eliminate buffer overrun.
261
262 2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
263
264 * runtime/memory.c (internal_realloc): Use index_type for size
265 argument instead of GFC_INTEGER_4.
266 (allocate_array): Likewise.
267 (allocate): Likewise, add ifdef around unnecessary check.
268 (internal_reallo64): Remove.
269 (allocate_array64): Remove.
270 (allocate64): Remove.
271 * gfortran.map: Remove symbols for 64-bit allocation functions.
272
273 2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
274
275 PR libgfortran/32456
276 * io/unit.c (filename_from_unit): Don't use find_unit, instead search
277 for unit directly.
278
279 2007-06-24 Adam Nemet <anemet@caviumnetworks.com>
280
281 PR libfortran/32495
282 * runtime/backtrace.c (local_strcasestr): Rename from strcasestr.
283 (show_backtrace): Rename strcasestr to local_strcasestr.
284
285 2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
286
287 PR libgfortran/32456
288 * runtime/error.c (show_locus): Update to emit the unit number
289 and file name involved with the error. Use new function
290 filename_from_unit.
291 * libgfortran.h (filename_from_unit): Declare new function.
292 * io/unit.c (init_units): Set the unit file name for stdin, stdout,
293 and stderr for use later in error reporting.
294 (filename_from_unit): Add this new function.
295
296 2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
297
298 PR libgfortran/32446
299 * io/write.c (output_float): Calculate ndigits correctly for large
300 numbered formats that must pad zeros before the decimal point.
301
302 2007-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
303
304 PR libfortran/32345
305 * runtime/backtrace.c (show_backtrace): Only use snprintf if
306 available.
307
308 2007-06-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
309
310 PR libgfortran/32235
311 * io/transfer.c (st_read): Remove test for end of file condition.
312 (next_record_r): Add test for end of file condition.
313
314 2007-06-02 Paolo Bonzini <bonzini@gnu.org>
315
316 * configure: Regenerate.
317
318 2007-05-28 Tobias Burnus <burnus@net-b.de>
319
320 PR fortran/32124
321 * runtime/memory.c (allocate_size): Use ERROR_ALLOCATION.
322 (allocate,allocate64): Use stat variable if present.
323
324 2007-05-27 Janne Blomqvist <jb@gcc.gnu.org>
325
326 * runtime/string.c (compare0): Use gfc_charlen_type instead of
327 int.
328 (fstrlen): Likewise.
329 (find_option): Likewise.
330 (fstrcpy): Use gfc_charlen_type instead of int, return length.
331 (cf_strcpy): Likewise.
332 * libgfortran.h: Change string prototypes to use gfc_charlen_type.
333 * io/open.c (new_unit): Use snprintf if available.
334 * io/list_read.c (nml_touch_nodes): Use memcpy instead of
335 strcpy/strcat.
336 (nml_read_obj): Likewise.
337 * io/transfer.c (st_set_nml_var): Likewise.
338 * io/write.c (output_float): Use snprintf if available.
339 (nml_write_obj) Use memcpy instead of strcpy/strcat.
340
341 2007-05-26 Janne Blomqvist <jb@gcc.gnu.org>
342
343 * io/unix.c (unix_stream): Rearrange struct members, remove
344 small_buffer.
345 (int_stream): New struct.
346 (fd_alloc): Always use existing buffer, never reallocate.
347 (fd_sfree): Remove check for buffer != small_buffer.
348 (fd_close): Likewise.
349 (mem_alloc_r_at): Change to use int_stream.
350 (mem_alloc_w_at): Likewise.
351 (mem_read): Likewise.
352 (mem_write): Likewise.
353 (mem_set): Likewise.
354 (mem_truncate): Likewise.
355 (mem_close): Likewise.
356 (mem_sfree): Likewise.
357 (empty_internal_buffer): Likewise.
358 (open_internal): Likewise.
359
360 2007-05-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
361
362 * io/transfer.c (unformatted_read): Use size from front end eliminating
363 use of size_from_real_kind. (unformatted_write): Ditto.
364
365 2007-05-23 Steve Ellcey <sje@cup.hp.com>
366
367 * Makefile.in: Regenerate.
368 * configure: Regenerate.
369 * aclocal.m4: Regenerate.
370
371 2007-05-22 Tobias Burnus <burnus@net-b.de>
372
373 * libgfortran.h: Mark stop_numeric as noreturn.
374
375 2007-05-22 Tobias Burnus <burnus@net-b.de>
376
377 PR libgfortran/31295
378 * intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
379 * intrinsics/eoshift2.c (eoshift2): Ditto.
380
381 2007-05-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
382
383 PR libfortran/31964
384 * intrinsics/ishftc.c (ishftc4, ishftc8, ishftc16): Fix mask to handle
385 shift of bit-size number of bits.
386
387 2007-05-17 Tobias Burnus <burnus@net-b.de>
388
389 PR fortran/31917
390 * runtime/environ.c (mark_range): Fix setting default convert unit.
391
392 2007-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
393
394 PR libfortran/31922
395 * intrinsics/string_intrinsics.c (string_trim): Set result to null if
396 string length is zero.
397
398 2007-05-15 Tobias Burnus <burnus@net-b.de>
399
400 PR libfortran/31915
401 * io/transfer.c (unformatted_read): Use proper size for real(10).
402 (unformatted_write): Ditto.
403
404 2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
405
406 PR fortran/30723
407 * runtime/memory.c (internal_malloc, internal_malloc64,
408 internal_free): Remove.
409 * runtime/error.c (os_error): Export function.
410 * intrinsics/move_alloc.c: Include stdlib.h.
411 (move_alloc): Call free instead of internal_free.
412 (move_alloc_c): Wrap long lines.
413 * libgfortran.h (os_error): Export prototype.
414 (internal_free): Remove prototype.
415 * gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
416 _gfortran_internal_malloc and _gfortran_internal_malloc64.
417 Add _gfortran_os_error.
418
419 2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
420
421 PR libfortran/31880
422 * io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
423
424 2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
425
426 PR libfortran/31607
427 * intrinsics/system.c (system_sub): Call flush_all_units.
428 * io/io.h (flush_all_units): Move prototype to libgfortran.h.
429 * libgfortran.h (flush_all_units): Add prototype.
430
431 2007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
432
433 PR libfortran/31201
434 * runtime/error.c (runtime_error_at): New function.
435 (generate_error): Export this function.
436 * gfortran.map: Add _gfortran_generate_error and
437 _gfortran_runtime_error_at.
438 * libgfortran.h: Add comment to reference error codes in front end.
439 (library_start): Locate prototype with library_end macro and add
440 a new comment. Add prototype for runtime_error_at. Export prototype for
441 generate_error.
442 * io/lock.c (library_start): Fix check for error condition.
443 * io/transfer.c (data_transfer_init): Add library check.
444
445 2007-05-04 Daniel Franke <franke.daniel@gmail.com>
446
447 PR fortran/22359
448 * io/intrinsics.c (fseek_sub): New.
449 * io/unix.c (fd_fseek): Change logical and physical offsets only
450 if seek succeeds.
451 * gfortran.map (fseek_sub): New.
452
453 2007-05-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
454
455 PR libfortran/31210
456 * io/transfer.c (transfer_character): Avoid passing a NULL
457 pointer as source to the transfer routines, if the string length
458 is zero.
459
460 2007-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
461
462 PR libfortran/31501
463 * io/list_read.c (next_char): Fix whitespace.
464 * io/io.h: Remove prototypes and define macros for is_array_io,
465 is_stream_io, and is_internal_unit.
466 * io/unit.c (is_array_io), (is_internal_unit), (is_stream_io): Delete
467 these functions.
468 * io/transfer.c (read_sf): Change handling of internal_unit to make a
469 single call to salloc_r and use memcpy to transfer the data.
470
471 2007-04-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
472
473 PR libfortran/31532
474 * io/file_pos.c (st_backspace): Set flags.position for end of file
475 condition and use new function update_position.
476 (st_endfile): Use new function update_position.
477 * io/io.h: Add prototype for new function.
478 * io/inquire.c (inquire_via_unit): If not direct access, set NEXTREC
479 to zero.
480 * io/unit.c (update_position): New function to update position info
481 used by inquire.
482 * io/transfer.c (next_record): Fix typo and use new function.
483
484 2007-04-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
485
486 PR libfortran/31299
487 * intrinsics/getlog.c: Use getpwuid and geteuid instead of
488 getlogin if they are available.
489 * configure.ac: Add checks for getpwuid and geteuid.
490 * configure: Regenerate.
491 * config.h.in: Regenerate.
492
493 2007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
494
495 * configure: Regenerate using autoconf 2.59.
496 * Makefile.in: Likewise.
497 * config.h.in: Likewise.
498
499 2007-04-24 Janne Blomqvist <jb@gcc.gnu.org>
500
501 PR libfortran/27740
502 * configure.ac: New test to determine if symbol versioning is
503 supported.
504 * Makefile.am: Use result of above test to add appropriate linker
505 flags.
506 * gfortran.map: New file.
507 * configure: Regenerated.
508 * Makefile.in: Regenerated.
509 * config.h.in: Regenerated.
510
511 2007-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
512
513 PR fortran/31618
514 * io/transfer.c (read_block_direct): Instead of calling us_read,
515 set dtp->u.p.current_unit->current_record = 0 so that pre_position
516 will read the record marker.
517 (data_transfer_init): For different error conditions, call
518 generate_error, then return.
519
520 2007-04-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
521
522 * runtime/main.c (please_free_exe_path_when_done): New variable.
523 (store_exe_path): Initialize character buffer, and mark whether
524 exe_path should be free'd by the library destructor function.
525 (cleanup): Only free exe_path if needed.
526
527 2007-04-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
528 Tobias Burnus <burnus@net-b.de>
529
530 PR libfortran/31286
531 PR libfortran/31296
532 * intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
533 * intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
534 array structures we pass to unpack_internal.
535
536 2007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
537
538 * io/open.c (test_endfile): Revert changes for 31052, restoring this
539 function.
540
541 2007-04-14 Steve Ellcey <sje@cup.hp.com>
542
543 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS. Add libgfortran_la_LINK.
544 * Makefile.in: Regenerate.
545
546 2007-04-11 Kai Tietz <kai.tietz@onevision.com>
547
548 * configure: Regenerate.
549
550 2007-04-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
551
552 * intrinsics/cpu_time.c: Don't include headers already included
553 by libgfortran.h. Protect inclusion of sys/times.h.
554 * configure.ac: Remove unneeded checks for finit, stdio.h,
555 stddef.h, math.h and sys/params.h.
556 * config/fpu-aix.h: Don't include headers already included by
557 libgfortran.h.
558 * config/fpu-sysv.h: Likewise.
559 * io/write.c: Likewise.
560 * m4/minloc1.m4: Likewise.
561 * m4/maxloc1.m4: Likewise.
562 * m4/fraction.m4: Likewise.
563 * m4/set_exponent.m4: Likewise.
564 * m4/spacing.m4: Likewise.
565 * m4/minval.m4: Likewise.
566 * m4/maxval.m4: Likewise.
567 * m4/exponent.m4: Likewise.
568 * m4/nearest.m4: Likewise.
569 * m4/minloc0.m4: Likewise.
570 * m4/maxloc0.m4: Likewise.
571 * m4/rrspacing.m4: Likewise.
572 * runtime/main.c: Likewise.
573 * runtime/error.c: Likewise.
574 * intrinsics/system_clock.c: Likewise.
575 * intrinsics/etime.c: Likewise.
576 * intrinsics/stat.c: Likewise.
577 * intrinsics/date_and_time.c: Likewise.
578 * intrinsics/env.c: Likewise.
579 * intrinsics/kill.c: Likewise.
580 * intrinsics/getXid.c: Likewise.
581 * intrinsics/chmod.c: Likewise.
582 * intrinsics/args.c: Likewise.
583 * intrinsics/c99_functions.c: Likewise.
584 * generated/minval_r8.c: Regenerate.
585 * generated/maxloc1_4_r8.c: Regenerate.
586 * generated/minloc1_16_r16.c: Regenerate.
587 * generated/maxval_i2.c: Regenerate.
588 * generated/maxloc1_8_i4.c: Regenerate.
589 * generated/exponent_r16.c: Regenerate.
590 * generated/maxloc0_4_r4.c: Regenerate.
591 * generated/fraction_r16.c: Regenerate.
592 * generated/fraction_r4.c: Regenerate.
593 * generated/minloc0_4_r16.c: Regenerate.
594 * generated/minloc0_4_i1.c: Regenerate.
595 * generated/maxloc0_4_r16.c: Regenerate.
596 * generated/maxloc0_4_i2.c: Regenerate.
597 * generated/minloc1_8_r16.c: Regenerate.
598 * generated/maxloc1_8_r16.c: Regenerate.
599 * generated/set_exponent_r8.c: Regenerate.
600 * generated/maxloc0_8_i8.c: Regenerate.
601 * generated/minloc1_4_r8.c: Regenerate.
602 * generated/maxloc1_16_r16.c: Regenerate.
603 * generated/minloc1_16_i4.c: Regenerate.
604 * generated/maxloc1_16_i4.c: Regenerate.
605 * generated/minloc0_16_i8.c: Regenerate.
606 * generated/maxloc0_16_i8.c: Regenerate.
607 * generated/nearest_r8.c: Regenerate.
608 * generated/spacing_r16.c: Regenerate.
609 * generated/maxval_r16.c: Regenerate.
610 * generated/minloc1_8_i4.c: Regenerate.
611 * generated/minloc0_16_i16.c: Regenerate.
612 * generated/minloc0_4_r4.c: Regenerate.
613 * generated/set_exponent_r10.c: Regenerate.
614 * generated/rrspacing_r10.c: Regenerate.
615 * generated/minloc0_4_i2.c: Regenerate.
616 * generated/maxloc0_8_i1.c: Regenerate.
617 * generated/minloc0_8_i8.c: Regenerate.
618 * generated/spacing_r4.c: Regenerate.
619 * generated/minloc1_16_r10.c: Regenerate.
620 * generated/minloc0_16_i1.c: Regenerate.
621 * generated/maxloc0_16_i1.c: Regenerate.
622 * generated/maxloc1_8_r8.c: Regenerate.
623 * generated/minval_i16.c: Regenerate.
624 * generated/exponent_r10.c: Regenerate.
625 * generated/maxval_i4.c: Regenerate.
626 * generated/minval_i8.c: Regenerate.
627 * generated/maxloc1_4_i8.c: Regenerate.
628 * generated/fraction_r10.c: Regenerate.
629 * generated/maxloc0_16_i16.c: Regenerate.
630 * generated/maxloc0_8_r4.c: Regenerate.
631 * generated/rrspacing_r8.c: Regenerate.
632 * generated/minloc1_4_i16.c: Regenerate.
633 * generated/minloc0_4_r10.c: Regenerate.
634 * generated/maxloc1_4_i16.c: Regenerate.
635 * generated/minloc0_8_i16.c: Regenerate.
636 * generated/maxloc0_4_r10.c: Regenerate.
637 * generated/maxloc0_8_i16.c: Regenerate.
638 * generated/minloc1_8_r10.c: Regenerate.
639 * generated/minloc0_16_r4.c: Regenerate.
640 * generated/maxloc1_8_r10.c: Regenerate.
641 * generated/maxloc0_16_r4.c: Regenerate.
642 * generated/minloc1_16_r8.c: Regenerate.
643 * generated/minloc0_8_i1.c: Regenerate.
644 * generated/maxloc0_4_i4.c: Regenerate.
645 * generated/maxloc1_16_r8.c: Regenerate.
646 * generated/maxloc0_8_i2.c: Regenerate.
647 * generated/nearest_r16.c: Regenerate.
648 * generated/maxloc1_16_r10.c: Regenerate.
649 * generated/minloc0_16_i2.c: Regenerate.
650 * generated/minloc1_8_r8.c: Regenerate.
651 * generated/maxloc0_16_i2.c: Regenerate.
652 * generated/exponent_r4.c: Regenerate.
653 * generated/spacing_r10.c: Regenerate.
654 * generated/maxval_r10.c: Regenerate.
655 * generated/minval_i1.c: Regenerate.
656 * generated/maxloc1_4_i1.c: Regenerate.
657 * generated/minloc1_4_i8.c: Regenerate.
658 * generated/minloc0_8_r4.c: Regenerate.
659 * generated/minloc0_16_r16.c: Regenerate.
660 * generated/minloc0_4_i4.c: Regenerate.
661 * generated/minloc0_8_i2.c: Regenerate.
662 * generated/minval_r4.c: Regenerate.
663 * generated/maxloc1_4_r4.c: Regenerate.
664 * generated/maxval_r8.c: Regenerate.
665 * generated/minval_r16.c: Regenerate.
666 * generated/minloc1_4_i1.c: Regenerate.
667 * generated/minval_i2.c: Regenerate.
668 * generated/maxloc1_4_i2.c: Regenerate.
669 * generated/maxloc1_8_i8.c: Regenerate.
670 * generated/maxloc0_4_r8.c: Regenerate.
671 * generated/maxloc0_16_r16.c: Regenerate.
672 * generated/minloc1_4_r16.c: Regenerate.
673 * generated/fraction_r8.c: Regenerate.
674 * generated/maxloc1_4_r16.c: Regenerate.
675 * generated/set_exponent_r4.c: Regenerate.
676 * generated/minloc0_8_r16.c: Regenerate.
677 * generated/maxloc0_8_r16.c: Regenerate.
678 * generated/nearest_r10.c: Regenerate.
679 * generated/maxloc0_8_i4.c: Regenerate.
680 * generated/minloc1_4_r4.c: Regenerate.
681 * generated/minloc0_16_i4.c: Regenerate.
682 * generated/maxloc0_16_i4.c: Regenerate.
683 * generated/nearest_r4.c: Regenerate.
684 * generated/minloc1_16_i8.c: Regenerate.
685 * generated/maxloc1_16_i8.c: Regenerate.
686 * generated/minloc1_4_i2.c: Regenerate.
687 * generated/maxloc1_8_i1.c: Regenerate.
688 * generated/minloc0_16_r10.c: Regenerate.
689 * generated/minloc1_8_i8.c: Regenerate.
690 * generated/minloc0_4_r8.c: Regenerate.
691 * generated/minloc0_8_i4.c: Regenerate.
692 * generated/minloc1_16_i16.c: Regenerate.
693 * generated/spacing_r8.c: Regenerate.
694 * generated/maxloc1_8_r4.c: Regenerate.
695 * generated/minloc1_16_i1.c: Regenerate.
696 * generated/maxloc1_16_i1.c: Regenerate.
697 * generated/minval_r10.c: Regenerate.
698 * generated/minval_i4.c: Regenerate.
699 * generated/minloc1_8_i1.c: Regenerate.
700 * generated/maxloc1_4_i4.c: Regenerate.
701 * generated/maxloc1_8_i2.c: Regenerate.
702 * generated/maxval_i8.c: Regenerate.
703 * generated/maxloc0_16_r10.c: Regenerate.
704 * generated/rrspacing_r4.c: Regenerate.
705 * generated/minloc0_4_i16.c: Regenerate.
706 * generated/maxloc0_8_r8.c: Regenerate.
707 * generated/maxloc0_4_i16.c: Regenerate.
708 * generated/minloc1_4_r10.c: Regenerate.
709 * generated/minloc1_8_i16.c: Regenerate.
710 * generated/maxloc1_4_r10.c: Regenerate.
711 * generated/minloc0_8_r10.c: Regenerate.
712 * generated/maxloc1_8_i16.c: Regenerate.
713 * generated/maxloc0_8_r10.c: Regenerate.
714 * generated/minloc1_16_r4.c: Regenerate.
715 * generated/maxloc1_16_r4.c: Regenerate.
716 * generated/minloc0_16_r8.c: Regenerate.
717 * generated/maxloc0_16_r8.c: Regenerate.
718 * generated/maxloc0_4_i8.c: Regenerate.
719 * generated/maxloc1_16_i16.c: Regenerate.
720 * generated/minloc1_8_r4.c: Regenerate.
721 * generated/minloc1_16_i2.c: Regenerate.
722 * generated/maxloc1_16_i2.c: Regenerate.
723 * generated/maxval_i16.c: Regenerate.
724 * generated/exponent_r8.c: Regenerate.
725 * generated/minloc1_4_i4.c: Regenerate.
726 * generated/maxval_i1.c: Regenerate.
727 * generated/minloc1_8_i2.c: Regenerate.
728 * generated/minloc0_8_r8.c: Regenerate.
729 * generated/set_exponent_r16.c: Regenerate.
730 * generated/maxloc0_4_i1.c: Regenerate.
731 * generated/rrspacing_r16.c: Regenerate.
732 * generated/minloc0_4_i8.c: Regenerate.
733 * generated/maxval_r4.c: Regenerate.
734 * configure: Regenerate.
735 * config.h.in: Regenerate.
736
737 2007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
738
739 PR libfortran/31395
740 * io/format.c (parse_format_list): Fix parsing.
741
742 2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
743
744 PR fortran/31304
745 intrinsics/string_intrinsics.c (string_repeat): Remove.
746
747 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
748
749 PR libfortran/31052
750 * io/open.c (test_endfile): Delete this function.
751 (edit_modes): Delete call to test_endfile.
752 (new_unit): Likewise.
753 * io/io.h: Delete prototype for test_endfile.
754 * io/transfer.c (next_record_r): Remove use of test_endfile.
755 (st_read): Add test for end file condition and adjust status.
756
757 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
758
759 PR libfortran/31366
760 * io/transfer.c (read_block_direct): Do not generate error when reading
761 past EOF on a short record that is less than the RECL= specified.
762
763 2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
764
765 PR libfortran/31207
766 * io/unit.c (close_unit_1): If there are bytes previously written from
767 ADVANCE="no", move to the end before closing.
768
769 2007-03-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
770
771 PR libfortran/31335
772 * intrinsics/stat.c: Only provide STAT and FSTAT library routines
773 if stat() and fstat() library functions are available. When lstat()
774 is not available, use stat() instead.
775 * configure.ac: Add checks for stat, fstat and lstat.
776 * configure: Regenerate.
777 * config.h.in: Regenerate.
778
779 2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
780
781 PR libfortran/31052
782 * io/transfer.c (next_record_r): Do not call test_endfile if in namelist
783 mode.
784
785 2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
786
787 PR libfortran/31199
788 * io/io.h: Add saved_pos to gfc_unit structure.
789 * io/open.c (new_unit): Initialize saved_pos.
790 * io/transfer.c (data_transfer_init): Set max_pos to value in saved_pos.
791 (next_record_w): Fix whitespace.
792 (finalze_transfer): Calculate max_pos for ADVANCE="no" and save it for
793 later use. If not ADVANCE="no" set saved_pos to zero.
794
795 2007-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
796
797 PR libfortran/31196
798 * intrinsics/reshape_generic.c (reshape_internal): Increment
799 correct variable.
800
801 2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
802
803 PR libfortran/31052
804 * file_pos.c: Update Copyright year.
805 * io/open.c (test_endfile): Restore test_endfile to fix SPEC regression.
806 Update Copyright year.
807 * io/io.h: Same.
808 * io/unix.c (is_special): Add missing type for this function.
809 Update Copyright year.
810 * io/transfer.c (next_record_r): Restore test_endfile.
811 (st_read): Fix whitespace. Update Copyright year
812
813 2007-03-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
814
815 * configure.ac: Add missing check for gettimeofday.
816 * config.h.in: Renegerate.
817 * configure: Regenerate.
818
819 2007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
820
821 PR libfortran/31052
822 * io/file_position (st_rewind): Fix comments. Remove use of
823 test_endfile. Don't seek if already at 0 position. Use new is_special
824 function to set endfile state.
825 * io/open.c (test_endfile): Delete this function.
826 * io/io.h: Delete prototype for test_endfile. Add prototype
827 for is_special.
828 * io/unix.c (is_special): New function. Fix whitespace.
829 * io/transfer.c (next_record_r): Remove use of test_endfile.
830
831 2007-03-16 David Edelsohn <edelsohn@gnu.org>
832
833 * runtime/main.c: Include "config.h" first.
834
835 2007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
836
837 PR libfortran/31099
838 * io/file_pos.c (st_rewind): Don't set bytes_left to zero.
839
840 2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
841
842 * runtime/backtrace.c: New file.
843 * runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE
844 environment variable.
845 * runtime/compile_options.c (set_std): Add new argument.
846 * runtime/main.c (store_exe_path, full_exe_path): New functions.
847 * runtime/error.c (sys_exit): Add call to show_backtrace.
848 * libgfortran.h (options_t): New backtrace field.
849 (store_exe_path, full_exe_path, show_backtrace): New prototypes.
850 * configure.ac: Add checks for execinfo.h, execvp, pipe, dup2,
851 close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols
852 and getppid.
853 * Makefile.am: Add runtime/backtrace.c.
854 * fmain.c (main): Add call to store_exe_path.
855 * Makefile.in: Renegerate.
856 * config.h.in: Renegerate.
857 * configure: Regenerate.
858
859 2007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
860
861 PR libfortran/31051
862 * io/transfer.c (formatted_transfer_scalar): Adjust position for pending
863 spaces when in writing mode. Clean up some formatting.
864
865 2007-03-14 Thomas Koenig <Thomas.Koenig@online.de>
866
867 PR libfortran/30690
868 * all.m4: Quote everything, except for m4 macros.
869 * any.m4: Likewise.
870 * count.m4: Likewise.
871 * cshift1.m4: Likewise.
872 * eoshift1.m4: Likewise.
873 * eoshift3.m4: Likewise.
874 * exponent.m4: Likewise.
875 * fraction.m4: Likewise.
876 * in_pack.m4: Likewise.
877 * in_unpack.m4: Likewise.
878 * matmul.m4: Likewise.
879 * matmull.m4: Likewise.
880 * nearest.m4: Likewise.
881 * pow.m4: Likewise.
882 * product.m4: Likewise.
883 * reshape.m4: Likewise.
884 * rrspacing.m4: Likewise.
885 * set_exponent.m4: Likewise.
886 * shape.m4: Likewise.
887 * spacing.m4: Likewise.
888 * transpose.m4: Likewise.
889
890 2007-03-14 Jakub Jelinek <jakub@redhat.com>
891
892 * io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with
893 O_RDONLY even if errno is EROFS.
894
895 2007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
896
897 PR libfortran/31099
898 * io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
899 * io/transfer.c (next_record_w): Set bytes left to record length for
900 sequential unformatted I/O.
901 (next_record_r): Ditto.
902 (read_block_direct): Fix test for exceeding bytes_left.
903
904 2007-03-08 Daniel Franke <franke.daniel@gmail.com>
905
906 PR fortran/30947
907 * intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
908 integer arguments.
909
910 2007-03-04 Thomas Koenig <Thomas.Koenig@online.de>
911
912 PR libfortran/30981
913 * m4/pow_m4: Use appropriate unsigned int type for u.
914 * generated/pow_c10_i16.c: Regenerated.
915 * generated/pow_c10_i4.c: Regenerated.
916 * generated/pow_c10_i8.c: Regenerated.
917 * generated/pow_c16_i16.c: Regenerated.
918 * generated/pow_c16_i4.c: Regenerated.
919 * generated/pow_c16_i8.c: Regenerated.
920 * generated/pow_c4_i16.c: Regenerated.
921 * generated/pow_c4_i4.c: Regenerated.
922 * generated/pow_c4_i8.c: Regenerated.
923 * generated/pow_c8_i16.c: Regenerated.
924 * generated/pow_c8_i4.c: Regenerated.
925 * generated/pow_c8_i8.c: Regenerated.
926 * generated/pow_i16_i16.c: Regenerated.
927 * generated/pow_i16_i4.c: Regenerated.
928 * generated/pow_i16_i8.c: Regenerated.
929 * generated/pow_i4_i16.c: Regenerated.
930 * generated/pow_i4_i4.c: Regenerated.
931 * generated/pow_i4_i8.c: Regenerated.
932 * generated/pow_i8_i16.c: Regenerated.
933 * generated/pow_i8_i4.c: Regenerated.
934 * generated/pow_i8_i8.c: Regenerated.
935 * generated/pow_r10_i16.c: Regenerated.
936 * generated/pow_r10_i4.c: Regenerated.
937 * generated/pow_r10_i8.c: Regenerated.
938 * generated/pow_r16_i16.c: Regenerated.
939 * generated/pow_r16_i4.c: Regenerated.
940 * generated/pow_r16_i8.c: Regenerated.
941 * generated/pow_r4_i16.c: Regenerated.
942 * generated/pow_r4_i4.c: Regenerated.
943 * generated/pow_r4_i8.c: Regenerated.
944 * generated/pow_r8_i16.c: Regenerated.
945 * generated/pow_r8_i4.c: Regenerated.
946 * generated/pow_r8_i8.c: Regenerated.
947
948 2007-03-03 Francois-Xavier Coudert <coudert@clipper.ens.fr>
949
950 PR libfortran/31001
951 * intrinsics/pack_generic.c (pack_internal): Add special checks
952 for zero-sized arrays.
953
954 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
955
956 * Makefile.am: Add dummy install-pdf target.
957 * Makefile.in: Regenerate
958
959 2007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
960
961 PR libfortran/30918
962 * io/listread.c (namelist_read): Eat comment line.
963
964 2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
965
966 PR libfortran/30910
967 * io/write.c (output_float): Add condition of format F only for
968 special case rounding with zero precision.
969
970 2007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
971
972 PR libfortran/30533
973 PR libfortran/30765
974 * Makefile.am: Add $(srcdir) too all files in generated/.
975 (i_maxloc0_c): Add maxloc0_4_i1.c, maxloc0_8_i1.c,
976 maxloc0_16_i1.c, maxloc0_4_i2.c, maxloc0_8_i2.c and
977 maxloc0_16_i2.c.
978 (i_maxloc1_c): Add maxloc1_4_i1.c, maxloc1_8_i1.c,
979 maxloc1_16_i1.c, maxloc1_4_i2.c, maxloc1_8_i2.c and
980 maxloc1_16_i2.c.
981 (i_maxval_c): Add maxval_i1.c and maxval_i2.c.
982 (i_minloc0_c): Add minloc0_4_i1.c, minloc0_8_i1.c,
983 minloc0_16_i1.c, minloc0_4_i2.c, minloc0_8_i2.c and
984 minloc0_16_i2.c.
985 (i_minloc_1.c): Add minloc1_4_i1.c, minloc1_8_i1.c,
986 minloc1_16_i1.c, minloc1_4_i2.c, minloc1_8_i2.c and
987 minloc1_16_i2.c.
988 (i_minval_c): Add minval_i1.c and minval_i2.c.
989 (i_sum_c): Add sum_i1.c and sum_i2.c.
990 (i_product_c): Add product_i1.c and product_i2.c.
991 (i_matmul_c): Add matmul_i1.c and matmul_i2.c.
992 (gfor_built_specific_src): Remove $(srcdir) from target.
993 (gfor_bulit_specific2_src): Likewise.
994 Makefile.in: Regenerated.
995 libgfortran.h: Add GFC_INTEGER_1_HUGE and GFC_INTEGER_2_HUGE.
996 Add gfc_array_i1 and gfc_array_i2.
997 * generated/matmul_i1.c: New file.
998 * generated/matmul_i2.c: New file.
999 * generated/maxloc0_16_i1.c: New file.
1000 * generated/maxloc0_16_i2.c: New file.
1001 * generated/maxloc0_4_i1.c: New file.
1002 * generated/maxloc0_4_i2.c: New file.
1003 * generated/maxloc0_8_i1.c: New file.
1004 * generated/maxloc0_8_i2.c: New file.
1005 * generated/maxloc1_16_i1.c: New file.
1006 * generated/maxloc1_16_i2.c: New file.
1007 * generated/maxloc1_4_i1.c: New file.
1008 * generated/maxloc1_4_i2.c: New file.
1009 * generated/maxloc1_8_i1.c: New file.
1010 * generated/maxloc1_8_i2.c: New file.
1011 * generated/maxval_i1.c: New file.
1012 * generated/maxval_i2.c: New file.
1013 * generated/minloc0_16_i1.c: New file.
1014 * generated/minloc0_16_i2.c: New file.
1015 * generated/minloc0_4_i1.c: New file.
1016 * generated/minloc0_4_i2.c: New file.
1017 * generated/minloc0_8_i1.c: New file.
1018 * generated/minloc0_8_i2.c: New file.
1019 * generated/minloc1_16_i1.c: New file.
1020 * generated/minloc1_16_i2.c: New file.
1021 * generated/minloc1_4_i1.c: New file.
1022 * generated/minloc1_4_i2.c: New file.
1023 * generated/minloc1_8_i1.c: New file.
1024 * generated/minloc1_8_i2.c: New file.
1025 * generated/minval_i1.c: New file.
1026 * generated/minval_i2.c: New file.
1027 * generated/product_i1.c: New file.
1028 * generated/product_i2.c: New file.
1029 * generated/sum_i1.c: New file.
1030 * generated/sum_i2.c: New file.
1031
1032 2007-02-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1033
1034 * runtime/memory.c (deallocate): Correct comment.
1035
1036 2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
1037
1038 * Makefile.am: Use $(M4) instead of m4.
1039 * Makefile.in: Regenerate.
1040
1041 2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
1042
1043 * Makefile.am: Remove $(srcdir) from assorted targets
1044 in maintainer mode.
1045 * Makefile.in: Regenerate.
1046
1047 2007-02-09 Thomas Koenig <Thomas.Koenig@online.de>
1048 Tobias Burnus <burnus@net-b.de>
1049
1050 PR fortran/30512
1051 * m4/iparm.m4: Use HUGE-1 for most negative integer.
1052 * generated/maxloc1_8_i4.c: Regenerate.
1053 * generated/maxloc0_8_i8.c: Regenerate.
1054 * generated/maxloc1_16_i4.c: Regenerate.
1055 * generated/maxloc0_16_i8.c: Regenerate.
1056 * generated/maxval_i4.c: Regenerate.
1057 * generated/maxloc1_4_i8.c: Regenerate.
1058 * generated/maxloc0_16_i16.c: Regenerate.
1059 * generated/maxloc1_4_i16.c: Regenerate.
1060 * generated/maxloc0_8_i16.c: Regenerate.
1061 * generated/maxloc0_4_i4.c: Regenerate.
1062 * generated/maxloc1_8_i8.c: Regenerate.
1063 * generated/maxloc0_8_i4.c: Regenerate.
1064 * generated/maxloc0_16_i4.c: Regenerate.
1065 * generated/maxloc1_16_i8.c: Regenerate.
1066 * generated/maxloc1_4_i4.c: Regenerate.
1067 * generated/maxval_i8.c: Regenerate.
1068 * generated/maxloc0_4_i16.c: Regenerate.
1069 * generated/maxloc1_8_i16.c: Regenerate.
1070 * generated/maxloc0_4_i8.c: Regenerate.
1071 * generated/maxloc1_16_i16.c: Regenerate.
1072 * generated/maxval_i16.c: Regenerate.
1073
1074 2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1075
1076 PR fortran/30611
1077 * intrinsics/string_intrinsics.c (string_repeat): Don't check
1078 if ncopies is negative.
1079
1080 2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1081
1082 PR libfortran/30007
1083 * libgfortran.h: Do not prefix symbol name with
1084 __USER_LABEL_PREFIX__ when used in __attribute__((__alias__(...))).
1085
1086 2007-02-02 Paul Thomas <pault@gcc.gnu.org>
1087
1088 PR fortran/30284
1089 PR fortran/30626
1090 * io/transfer.c (init_loop_spec, next_array_record): Change to
1091 lbound rather than unity base.
1092
1093 2007-01-21 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1094
1095 * runtime/error.c: Include sys/time.h before sys/resource.h.
1096
1097 2007-01-21 Thomas Koenig <Thomas.Koenig@online.de>
1098
1099 PR libfortran/30525
1100 * intrinsics/string_intrinsics.c(compare_string): Make
1101 sure that comparisons are done unsigned.
1102
1103 2007-01-21 Tobias Burnus <burnus@net-b.de>
1104
1105 PR libfortran/30015
1106 * intrinsics/date_and_time.c (date_and_time): Fix case where time
1107 can go backwards.
1108 * configure.ac: Remove AC_TRY_RUN test for timezone in
1109 gettimeofday.
1110 * acinclude.m4: Ditto.
1111 * configure: Regenerate.
1112 * config.h.in: Regenerate.
1113
1114 2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1115
1116 * m4/misc_specifics.m4: Add _gfortran prefix to specific names.
1117 * m4/specific2.m4: Likewise.
1118 * m4/specific.m4: Likewise.
1119 * intrinsics/f2c_specifics.F90: Likewise.
1120 * intrinsics/selected_int_kind.f90: Add _gfortran prefix.
1121 * intrinsics/selected_real_kind.f90: Likewise.
1122 * intrinsics/dprod_r8.f90: Likewise.
1123 * Makefile.am: Add -fallow-leading-underscore to the
1124 gfor_specific_src files, as well as selected_real_kind.F90
1125 and selected_int_kind.F90
1126 * Makefile.in: Regenerate.
1127 * generated/_sqrt_c8.F90: Regenerate.
1128 * generated/_sign_r16.F90: Regenerate.
1129 * generated/_log_c16.F90: Regenerate.
1130 * generated/_sin_c10.F90: Regenerate.
1131 * generated/_tanh_r4.F90: Regenerate.
1132 * generated/_tanh_r8.F90: Regenerate.
1133 * generated/_log10_r10.F90: Regenerate.
1134 * generated/_aimag_c4.F90: Regenerate.
1135 * generated/_sign_r4.F90: Regenerate.
1136 * generated/_aimag_c8.F90: Regenerate.
1137 * generated/_sign_r8.F90: Regenerate.
1138 * generated/_mod_i4.F90: Regenerate.
1139 * generated/_cos_r16.F90: Regenerate.
1140 * generated/_aint_r10.F90: Regenerate.
1141 * generated/_mod_i8.F90: Regenerate.
1142 * generated/_abs_i16.F90: Regenerate.
1143 * generated/_sqrt_c10.F90: Regenerate.
1144 * generated/_atan2_r4.F90: Regenerate.
1145 * generated/_cos_c4.F90: Regenerate.
1146 * generated/_atan_r16.F90: Regenerate.
1147 * generated/_tanh_r10.F90: Regenerate.
1148 * generated/_atan2_r8.F90: Regenerate.
1149 * generated/_cos_c8.F90: Regenerate.
1150 * generated/_exp_r4.F90: Regenerate.
1151 * generated/_log_r10.F90: Regenerate.
1152 * generated/_exp_r8.F90: Regenerate.
1153 * generated/_abs_r4.F90: Regenerate.
1154 * generated/_abs_r8.F90: Regenerate.
1155 * generated/_sin_r16.F90: Regenerate.
1156 * generated/_tan_r4.F90: Regenerate.
1157 * generated/_tan_r8.F90: Regenerate.
1158 * generated/_sign_i4.F90: Regenerate.
1159 * generated/_sign_i8.F90: Regenerate.
1160 * generated/_exp_c16.F90: Regenerate.
1161 * generated/_sqrt_r16.F90: Regenerate.
1162 * generated/_conjg_c4.F90: Regenerate.
1163 * generated/_conjg_c8.F90: Regenerate.
1164 * generated/_dim_r16.F90: Regenerate.
1165 * generated/_mod_r10.F90: Regenerate.
1166 * generated/_abs_c10.F90: Regenerate.
1167 * generated/_conjg_c16.F90: Regenerate.
1168 * generated/_tan_r16.F90: Regenerate.
1169 * generated/_asinh_r10.F90: Regenerate.
1170 * generated/_abs_i4.F90: Regenerate.
1171 * generated/_abs_i8.F90: Regenerate.
1172 * generated/_acos_r10.F90: Regenerate.
1173 * generated/_exp_r10.F90: Regenerate.
1174 * generated/_acosh_r16.F90: Regenerate.
1175 * generated/_atan2_r16.F90: Regenerate.
1176 * generated/_cos_c16.F90: Regenerate.
1177 * generated/_mod_i16.F90: Regenerate.
1178 * generated/_asin_r4.F90: Regenerate.
1179 * generated/_anint_r16.F90: Regenerate.
1180 * generated/_asin_r8.F90: Regenerate.
1181 * generated/_aimag_c10.F90: Regenerate.
1182 * generated/_exp_c4.F90: Regenerate.
1183 * generated/_sinh_r10.F90: Regenerate.
1184 * generated/_exp_c8.F90: Regenerate.
1185 * generated/_log10_r4.F90: Regenerate.
1186 * generated/_log10_r8.F90: Regenerate.
1187 * generated/_abs_c4.F90: Regenerate.
1188 * generated/_abs_r16.F90: Regenerate.
1189 * generated/_abs_c8.F90: Regenerate.
1190 * generated/_asin_r10.F90: Regenerate.
1191 * generated/_sign_r10.F90: Regenerate.
1192 * generated/_atanh_r16.F90: Regenerate.
1193 * generated/_log_c10.F90: Regenerate.
1194 * generated/_cosh_r16.F90: Regenerate.
1195 * generated/_sin_c16.F90: Regenerate.
1196 * generated/_cos_r10.F90: Regenerate.
1197 * generated/_log10_r16.F90: Regenerate.
1198 * generated/_aint_r16.F90: Regenerate.
1199 * generated/_acos_r4.F90: Regenerate.
1200 * generated/_acos_r8.F90: Regenerate.
1201 * generated/_sqrt_c16.F90: Regenerate.
1202 * generated/_acosh_r4.F90: Regenerate.
1203 * generated/_atan_r10.F90: Regenerate.
1204 * generated/_acosh_r8.F90: Regenerate.
1205 * generated/_sign_i16.F90: Regenerate.
1206 * generated/_tanh_r16.F90: Regenerate.
1207 * generated/_log_r4.F90: Regenerate.
1208 * generated/_log_r8.F90: Regenerate.
1209 * generated/_sin_r4.F90: Regenerate.
1210 * generated/_sin_r8.F90: Regenerate.
1211 * generated/_log_r16.F90: Regenerate.
1212 * generated/_sin_r10.F90: Regenerate.
1213 * generated/_sqrt_r4.F90: Regenerate.
1214 * generated/_exp_c10.F90: Regenerate.
1215 * generated/_sqrt_r8.F90: Regenerate.
1216 * generated/_asinh_r4.F90: Regenerate.
1217 * generated/_sqrt_r10.F90: Regenerate.
1218 * generated/_asinh_r8.F90: Regenerate.
1219 * generated/_dim_r4.F90: Regenerate.
1220 * generated/_dim_r8.F90: Regenerate.
1221 * generated/_dim_r10.F90: Regenerate.
1222 * generated/_cosh_r4.F90: Regenerate.
1223 * generated/_conjg_c10.F90: Regenerate.
1224 * generated/_tan_r10.F90: Regenerate.
1225 * generated/_cosh_r8.F90: Regenerate.
1226 * generated/_mod_r16.F90: Regenerate.
1227 * generated/_abs_c16.F90: Regenerate.
1228 * generated/_cos_r4.F90: Regenerate.
1229 * generated/_asinh_r16.F90: Regenerate.
1230 * generated/_cos_r8.F90: Regenerate.
1231 * generated/_atanh_r4.F90: Regenerate.
1232 * generated/_atanh_r8.F90: Regenerate.
1233 * generated/_acos_r16.F90: Regenerate.
1234 * generated/_anint_r4.F90: Regenerate.
1235 * generated/_acosh_r10.F90: Regenerate.
1236 * generated/_anint_r8.F90: Regenerate.
1237 * generated/_exp_r16.F90: Regenerate.
1238 * generated/_mod_r4.F90: Regenerate.
1239 * generated/_cos_c10.F90: Regenerate.
1240 * generated/_atan2_r10.F90: Regenerate.
1241 * generated/_dim_i16.F90: Regenerate.
1242 * generated/_mod_r8.F90: Regenerate.
1243 * generated/_anint_r10.F90: Regenerate.
1244 * generated/_aint_r4.F90: Regenerate.
1245 * generated/_aint_r8.F90: Regenerate.
1246 * generated/_dim_i4.F90: Regenerate.
1247 * generated/_sinh_r4.F90: Regenerate.
1248 * generated/_log_c4.F90: Regenerate.
1249 * generated/_dim_i8.F90: Regenerate.
1250 * generated/_sinh_r8.F90: Regenerate.
1251 * generated/_log_c8.F90: Regenerate.
1252 * generated/_sin_c4.F90: Regenerate.
1253 * generated/_sin_c8.F90: Regenerate.
1254 * generated/misc_specifics.F90: Regenerate.
1255 * generated/_abs_r10.F90: Regenerate.
1256 * generated/_aimag_c16.F90: Regenerate.
1257 * generated/_atan_r4.F90: Regenerate.
1258 * generated/_sinh_r16.F90: Regenerate.
1259 * generated/_atan_r8.F90: Regenerate.
1260 * generated/_atanh_r10.F90: Regenerate.
1261 * generated/_cosh_r10.F90: Regenerate.
1262 * generated/_sqrt_c4.F90: Regenerate.
1263 * generated/_asin_r16.F90: Regenerate.
1264
1265 2007-01-19 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1266
1267 PR libfortran/26893
1268 * acinclude.m4 (LIBGFOR_WORKING_GFORTRAN): New check.
1269 * configure.ac: Add call to LIBGFOR_WORKING_GFORTRAN.
1270 * configure: Regenerate.
1271 * config.h.in: Regenerate because it was forgottent in the last
1272 commit.
1273
1274 2007-01-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1275 Tobias Burnus <burnus@net-b.de>
1276
1277 PR libfortran/29649
1278 * runtime/environ.c (variable_table): New GFORTRAN_ERROR_DUMPCORE
1279 environment variable.
1280 * runtime/compile_options.c (set_std): Add new argument.
1281 * runtime/error.c (sys_exit): Move from io/unix.c. Add coredump
1282 functionality.
1283 * libgfortran.h (options_t): New dump_core and backtrace members.
1284 (sys_exit): Move prototype.
1285 * io/unix.c (sys_exit): Move to runtime/error.c.
1286 * configure.ac: Add check for getrlimit.
1287 * configure: Regenerate.
1288
1289 2007-01-17 Tom Tromey <tromey@redhat.com>
1290
1291 PR libfortran/27107:
1292 * aclocal.m4, configure, Makefile.in: Rebuilt.
1293 * configure.ac: Enable automake dependency tracking. Update
1294 minimum automake version.
1295
1296 2007-01-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
1297
1298 PR libfortran/27107
1299 * runtime/environ.c: Don't include io/io.h.
1300 * runtime/string.c: Don't include io/io.h.
1301 (compare0): Add cast to avoid warning.
1302 * runtime/error.c: Don't include io/io.h.
1303 (st_printf): Move to io/unix.c.
1304 * intrinsics/flush.c: Delete, contents moved to io/intrinsics.c.
1305 * intrinsics/fget.c: Likewise.
1306 * intrinsics/ftell.c: Likewise.
1307 * intrinsics/tty.c: Likewise.
1308 * libgfortran.h (DEFAULT_RECL, notification_std,
1309 get_unformatted_convert, IOPARM_*, st_parameter_common, unit_convert,
1310 DEFAULT_TEMPDIR): New declarations.
1311 * io/io.h (DEFAULT_RECL, notification_std, get_unformatted_convert,
1312 IOPARM_*, st_parameter_common, unit_convert, DEFAULT_TEMPDIR):
1313 Move to libgfortran.h.
1314 * io/unix.c: Add io/unix.h content.
1315 (st_printf): New function.
1316 * io/intrinsics.c: New file.
1317 * io/unix.h: Remove, contents moved into unix.c.
1318 * libtool-version: Update library version to 3.0.0.
1319 * configure.ac: Update library version to 0.3.
1320 * Makefile.am (intrinsics/fget.c, intrinsics/flush.c,
1321 intrinsics/ftell.c, intrinsics/tty.c, libgfortran.h): Remove targets.
1322 * Makefile.in: Regenerate.
1323 * configure: Regenerate.
1324
1325 2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1326
1327 PR libfortran/30435
1328 * io/list_read.c (finish_separator): Don't call next_record.
1329 (list_formatted_read_scalar): Clean up some comments and whitespace.
1330 (nml_read_obj): Whitespace fix.
1331
1332 2007-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1333
1334 PR libfortran/30162
1335 * io/unix.c (fd_flush): Don't seek if file is not seekable, defined as
1336 s->file_length == -1.
1337 (fd_alloc_w_at): Do not adjust file_length if file is not seekable.
1338 (fd_seek): If not seekable, just return success.
1339 (fd_truncate): If not seekable, no need to truncate. Return failure if
1340 seek fails and the stream is not a pipe.
1341 (fd_to_stream): Make test for non-seekable file more robust.
1342
1343 2007-01-01 Steven G. Kargl <kargls@comcast.net>
1344
1345 * ChangeLog: Copied to ...
1346 * ChangeLog-2006: here.