]> git.ipfire.org Git - thirdparty/gcc.git/blob - libgfortran/ChangeLog-2004
i386: Add clear_ratio to processor_costs
[thirdparty/gcc.git] / libgfortran / ChangeLog-2004
1 2004-12-27 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
2
3 * libgfortran/libgfortran.h (GFC_UINTEGER_1, GFC_UINTEGER_2):
4 Define.
5 * intrinsics/ishftc.c: Update copyright years.
6 (ishftc8): Change 'shift' and 'size' to GFC_INTEGER_4.
7 * intrinsics/mvbits.c: Correct non-ASCII character in my name.
8 Add implementations for GFC_INTEGER_1 and GFC_INTEGER_2.
9
10 2004-12-23 Bud Davis <bdavis9659@comcast.net>
11
12 PR fortran/19071
13 * io/tranfer.c (formatted_transfer): moved check for
14 format reversion inside the processing loop.
15
16 2004-12-19 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
17
18 PR libfortran/19074
19 * libgfortran.h (itoa): Rename to gfc_itoa.
20 * io/write.c (itoa): Same.
21 * runtime/environ.c (itoa): Same.
22 * runtime/error.c (itoa): Same.
23
24 2004-12-15 Bud Davis <bdavis9659@comcast.net>
25 Steven G. Kargl <kargls@comcast.net>
26
27 PR fortran/17597
28 * io/list_read.c (read_real): do not push back a comma when
29 it delimits a real value without a decimal point
30
31 2004-12-14 Steve Ellcey <sje@cup.hp.com>
32
33 * libgfortran/io/transfer.c (us_read): Use memcpy/memset
34 instead of assignment to fill unaligned buffer.
35 (us_write): Ditto.
36 (next_record_w): Ditto.
37
38 2004-12-14 Steven G. Kargl <kargls@comcast.net>
39
40 PR libfortran/18966
41 * gfortran.h: typedef GFC_INTEGER_1 and GFC_INTEGER_2
42 * intrinsics/cshift0.c (cshift0_1,cshift0_2): New functions.
43 * intrinsics/eoshift0.c (eoshift0_1,eoshift0_2): New functions.
44 * intrinsics/eoshift2.c (eoshift2_1,eoshift2_2): New functions.
45
46 2004-12-13 David Edelsohn <edelsohn@gnu.org>
47
48 * io/transfer.c (read_sf): Change bitwise "and" to logical "and".
49
50 2004-12-12 Richard Henderson <rth@redhat.com>
51
52 * intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
53 intrinsics/pack_generic.c, intrinsics/reshape_generic.c,
54 intrinsics/spread_generic.c, intrinsics/transpose_generic.c,
55 intrinsics/unpack_generic.c, m4/cshift1.m4, m4/dotprod.m4,
56 m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4, m4/eoshift3.m4,
57 m4/iforeach.m4, m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4,
58 m4/reshape.m4, m4/shape.m4, m4/transpose.m4: Use standard prefix
59 instead of "__".
60 * generated/*: Rebuild.
61
62 2004-12-12 Richard Henderson <rth@redhat.com>
63
64 * acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY): New.
65 (LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT): New.
66 (LIBGFOR_CHECK_ATTRIBUTE_ALIAS): New.
67 * configure.ac: Use them.
68 * configure, config.h.in, aclocal.m4: Rebuild.
69 * libgfortran.h (prefix): Remove.
70 (PREFIX, IPREFIX): New.
71 (sym_rename, sym_rename1, sym_rename2): New.
72 (internal_proto, export_proto, export_proto_np): New.
73 (iexport_proto, iexport): New.
74 (iexport_data_proto, iexport_data): New.
75 * intrinsics/abort.c, intrinsics/args.c, intrinsics/associated.c,
76 intrinsics/cpu_time.c, intrinsics/cshift0.c,
77 intrinsics/date_and_time.c, intrinsics/env.c, intrinsics/eoshift0.c,
78 intrinsics/eoshift2.c, intrinsics/etime.c, intrinsics/exit.c,
79 intrinsics/flush.c, intrinsics/fnum.c, intrinsics/getXid.c,
80 intrinsics/getcwd.c, intrinsics/ishftc.c, intrinsics/mvbits.c,
81 intrinsics/pack_generic.c, intrinsics/rand.c, intrinsics/random.c,
82 intrinsics/reshape_generic.c, intrinsics/size.c,
83 intrinsics/spread_generic.c, intrinsics/stat.c,
84 intrinsics/string_intrinsics.c, intrinsics/system.c,
85 intrinsics/system_clock.c, intrinsics/transpose_generic.c,
86 intrinsics/umask.c, intrinsics/unlink.c, intrinsics/unpack_generic.c,
87 io/backspace.c, io/close.c, io/endfile.c, io/inquire.c, io/io.h,
88 io/open.c, io/rewind.c, io/transfer.c, libgfortran.h, m4/cshift1.m4,
89 m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4,
90 m4/eoshift3.m4, m4/exponent.m4, m4/fraction.m4, m4/iforeach.m4,
91 m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/nearest.m4,
92 m4/pow.m4, m4/reshape.m4, m4/set_exponent.m4, m4/shape.m4,
93 m4/transpose.m4, runtime/environ.c, runtime/error.c,
94 runtime/in_pack_generic.c, runtime/in_unpack_generic.c,
95 runtime/main.c, runtime/memory.c, runtime/pause.c, runtime/select.c,
96 runtime/stop.c: Use them to mark symbols internal or external.
97 * generated/*: Rebuild.
98
99 2004-12-09 David Edelsohn <edelsohn@gnu.org>
100
101 PR bootstrap/18895
102 Revert 2004-12-07 change.
103 * Makefile.am (AM_MAKEFLAGS): Delete.
104 * Makefile.in: Regenerate.
105
106 2004-12-07 Steve Ellcey <sje@cup.hp.com>
107
108 * libgfortran/Makefile.am (AM_MAKEFLAGS): New.
109 * libgfortran/Makefile.in: Regenerate
110
111 2004-12-07 Steve Ellcey <sje@cup.hp.com>
112
113 * io/io.h (open_external): Change prototype.
114 * io/unix.c (regular_file): Change prototype and set flags->action if
115 needed.
116 (open_external): Ditto.
117 * io/open.c (new_unit): Let open_external set flags->action.
118
119 2004-12-07 Eric Botcazou <ebotcazou@libertysurf.fr>
120
121 * configure.ac: Check for ieeefp.h. Check for fabsf in libm.
122 * configure: Regenerate.
123 * config.h.in: Likewise.
124 * c99_protos.h: New file.
125 * libgfortran.h: Include c99_protos.h and conditionally ieeefp.h.
126 * intrinsics/c99_functions.c (fabsf): New function.
127
128 2004-12-06 Richard Henderson <rth@redhat.com>
129
130 * intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
131 intrinsics/pack_generic.c, intrinsics/string_intrinsics.c,
132 intrinsics/transpose_generic.c, m4/ifunction.m4, m4/matmul.m4,
133 m4/matmull.m4, m4/transpose.m4: Use internal_malloc_size instead
134 of internal_malloc.
135 * generated/*: Rebuild.
136
137 2004-12-06 Richard Henderson <rth@redhat.com>
138
139 * intrinsics/c99_functions.c, intrinsics/eoshift0.c,
140 intrinsics/eoshift2.c, intrinsics/exit.c, intrinsics/flush.c,
141 intrinsics/ishftc.c, intrinsics/mvbits.c, intrinsics/pack_generic.c,
142 intrinsics/random.c, intrinsics/reshape_generic.c, intrinsics/size.c,
143 intrinsics/spread_generic.c, intrinsics/stat.c,
144 intrinsics/string_intrinsics.c, intrinsics/system_clock.c,
145 intrinsics/transpose_generic.c, intrinsics/unlink.c,
146 intrinsics/unpack_generic.c, io/backspace.c, io/format.c,
147 io/list_read.c, io/lock.c, io/open.c, io/transfer.c, io/unix.c,
148 io/write.c, runtime/environ.c, runtime/error.c,
149 runtime/in_pack_generic.c, runtime/in_unpack_generic.c, runtime/main.c,
150 runtime/memory.c, runtime/pause.c, runtime/stop.c,
151 runtime/string.c: Whitespace fixes.
152
153 2004-12-06 Richard Henderson <rth@redhat.com>
154
155 * Makefile.am: Generate all m4 output under $(srcdir).
156 * Makefile.in: Regenerate.
157
158 2004-12-02 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
159
160 PR fortran/18710
161 * io/transfer.c (unformatted_read, unformatted_write): width of
162 a COMPLEX is twice its kind.
163
164 2004-12-02 Richard Sandiford <rsandifo@redhat.com>
165
166 * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
167 * configure, aclocal.m4, Makefile.in: Regenerate.
168
169 2004-12-02 Bud Davis <bdavis9659@comcast.net>
170
171 PR libfortran/18284
172 * io/unix.c (fd_alloc_w_at): Update file_length when extending.
173 * io/backspace.c (formatted_backspace): Reset endfile after backspace.
174
175 2004-12-02 Bud Davis <bdavis9659@comcast.net>
176
177 * io/inquire.c (inquire_via_unit): do not allow a direct access
178 file to be opened for sequential I/O.
179
180 2004-12-02 Steven G. Kargl <kargls@comcast.net>
181 Paul Brook <paul@codesourcery.com>
182
183 * intrinsics/flush.c: New file.
184 * intrinsics/fnum.c: ditto
185 * intrinsics/stat.c: ditto
186 * io/io.h (unit_to_fd): Add prototype.
187 * io/unix.c (unit_to_fd): New function.
188 * configure.ac: Add test for members of struct stat. Check for
189 sys/types.h and sys/stat.h
190 * Makefile.am: Add intrinsics/{flush.c,fnum.c,stat.c}
191 * configure.in: Regenerate.
192 * config.h.in: Regenerate.
193 * Makefile.in: Regenerate.
194
195 2004-12-01 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
196
197 * Makefile.am (AM_CPPFLAGS): Use -iquote instead of -I.
198
199 2004-11-28 Bud Davis <bdavis9659@comcast.net>
200
201 * io/unix.c (mmap_alloc_w_a): check for a write to a location
202 less than the mapped area.
203
204 2004-11-27 Bud Davis <bdavis9659@comcast.net>
205
206 PR fortran/18364
207 * io/endfile.c (st_endfile): flush the stream before truncating.
208
209 2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
210
211 * configure: Regenerate for libtool change.
212
213 2004-11-22 Steven Bosscher <stevenb@suse.de>
214
215 PR libfortran/15960
216 * configure.ac: Check for finite in libm.
217 * libgfortran.h: Define isfinite macro if not defined.
218 * intrinsics/c99_functions.c: Use defined(fpclassify) instead of
219 HAVE_FPCLASSIFY.
220 * io/write.c (write_float): Use isfinite instead of finite.
221 * configure, config.h.in: Rebuilt.
222
223 2004-11-20 Roger Sayle <roger@eyesopen.com>
224
225 * io/write.c (write_float, list_formatted_write): Fix indentation.
226
227 2004-11-20 Eric Botcazou <ebotcazou@libertysurf.fr>
228
229 PR target/16135
230 * acinclude.m4 (LIBGFOR_TARGET_ILP32): New check.
231 * configure.ac: Include LIBGFOR_TARGET_ILP32.
232 * configure: Regenerate.
233 * config.h.in: Likewise.
234 * libgfortran.h: Provide default definitions for C99 types
235 on ILP32 targets that don't have them.
236
237 PR target/17999
238 * configure.ac: Check for snprintf.
239 * configure: Regenerate.
240 * config.h.in: Likewise.
241 * intrinsics/date_and_time.c (date_and_time): Do not
242 use snprinf if it is not available.
243 * io/write.c (output_float): Likewise.
244
245 2004-11-20 Steven G. Kargl <kargls@comcast.net>
246
247 * Makefile.am: Add intrinsics/{umask.c,unlink.c,exit.c}
248 * Makefile.in: Regenerated
249 * intrinsics/umask.c: New file
250 * intrinsics/unlink.c: ditto
251 * intrinsics/exit.c: ditto
252
253 2004-11-18 Victor Leikehman <lei@il.ibm.com>
254
255 * m4/matmul.m4: Loops reordered to improve cache behavior.
256 * generated/matmul_??.c: Regenerated.
257
258 2004-11-10 Paul Brook <paul@codesourcery.com>
259
260 PR fortran/18218
261 * configure.ac: Check for strtof.
262 * configure: Regenerate.
263 * config.h.in: Regenerate.
264 * io/read.c (convert_real): Use strtof if available.
265 (convert_precision_real): Remove.
266 (read_f): Avoid poor exponentiation algorithm.
267
268 2004-11-05 Andreas Schwab <schwab@suse.de>
269
270 * configure.ac: Use AC_PROG_FC, FC and FCFLAGS instead of
271 AC_PROG_F77, F77 and FFLAGS.
272 * Makefile.am (selected_int_kind.inc, selected_real_kind.inc): Use
273 FCCOMPILE instead of F77COMPILE.
274 * configure, Makefile.in: Regenerate.
275
276 2004-11-05 Kelley Cook <kcook@gcc.gnu.org>
277
278 * acinclude.m4: Properly quote AC_CACHE_CHECK.
279 * Makefile.am: Add in ACLOCAL_AMFLAGS.
280 * aclocal.m4, configure, Makefile.in: Regenerate.
281
282 2004-10-30 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
283
284 * config.h.in: Regenerate.
285 * configure: Regenerate.
286 * configure.ac (AC_CHECK_FUNCS): Add mkstemp.
287 * io/unix.c (S_IRGRP): Define if undefined.
288 (S_IWGRP): Same.
289 (S_IROTH): Same.
290 (S_IWOTH): Same.
291 (tempfile): Use mktemp if mkstemp missing, fix typos.
292
293 2004-10-30 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
294
295 * intrinsics/system.c ("libgfortran.h"): Move after system headers.
296
297 2004-10-30 Canqun Yang <canqun@nudt.edu.cn>
298
299 * intrinsics/rand.c (irand): Handle NULL argument.
300
301 2004-10-07 Paul Brook <paul@codesourcery.com>
302
303 * io/transfer.c (finalize_transfer): Free internal streams.
304 * io/unix.c (mem_close): Free stream object.
305
306 2004-10-07 Paul Brook <paul@codesourcery.com>
307
308 * intrinsics/string_intrinsics.c (string_verify): Fix off by one
309 error.
310
311 2004-10-06 Paul Brook <paul@codesourcery.com>
312
313 PR libfortran/17709
314 * io/transfer.c (data_transfer_init): Reset sf_seen_eor.
315
316 2004-10-04 Andrew Pinski <pinskia@physics.uc.edu>
317
318 * intrinsics/mvbits.c: Commit the file.
319
320 2004-10-04 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
321
322 PR fortran/17283
323 * intrinsics/pack_generic.c (__pack): Allocate memory for return array
324 if not done by caller.
325 (__pack_s): New function.
326 * runtime/memory.c (internal_malloc, internal_malloc64): Allow
327 allocating zero memory.
328
329 PR fortran/17631
330 * Makefile.am (gfor_helper_src): Add intrinsics/mvbits.h.
331 * Makefile.in: Regenerate.
332 * intrinsics/mvbits.h: New file.
333
334 PR fortran/17776
335 * intrinsics/system.c: New file.
336 * Makefile.am: Add dependency for the new file.
337 * Makefile.in: Regenerate.
338
339 2004-10-04 Paul Brook <paul@codesourcery.com>
340 Bud Davis <bdavis9659@comcast.net>
341
342 PR fortran/17706
343 PR fortran/16434
344 * io/format.c (parse_format_list): Set repeat count for S, SP, SS,
345 BN and BZ formats.
346 * io/write.c (output_float): Don't output minus zero.
347
348 2004-10-03 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
349
350 * intrinsics/abort.c ("libgfortran.h"): Move.
351 * intrinsics/date_and_time.c ("libgfortran.h"): Same.
352 * intrinsics/write.c ("libgfortran.h"): Same.
353
354 2004-09-26 Tobias Schlueter <tobis.schlueter@physik.uni-muenchen.de>
355
356 PR libfortran/16137
357 * config.h.in (HAVE_POWF): Undefine.
358 * configure.ac: Check for 'powf' in library.
359 * configure: Regenerate.
360 * intrinsics/c99_functions.c (powf): New function.
361
362 2004-09-24 Tobias Schlueter <tobis.schlueter@physik.uni-muenchen.de>
363
364 * intrinsics/etime.c (etime_): New function.
365
366 2004-09-21 Steven G. Kargl <kargls@comcast.net>
367
368 * libgfortran.h: define gfc_alloca()
369 * intrinsics/env.c (getenv, get_environment_variable_i4): Use it.
370
371 2004-09-21 Bud Davis <bdavis9659@comcast.net>
372
373 PR fortran/17286
374 * io/list_read.c (namelist_read): ignore spaces after
375 the '=' for namelist reads.
376
377 2004-09-15 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
378
379 * config.h.in: Regenerate.
380 * configure: Regenerate.
381 * configure.ac (AC_CHECK_HEADERS): Check for sys/mman.h.
382 * unix.c: Include stdio.h.
383 (HAVE_SYS_MMAN_H): Check.
384 (PROT_READ, PROT_WRITE): Provide default definitions.
385
386 2004-09-15 Steven G. Kargl <kargls@comcast.net>
387
388 * intrincics/getcwd.c: New file.
389 * Makefile.am: Add getcwd.c.
390 * Makefile.in: Regenerated.
391
392 2004-09-15 Steven G. Kargl <kargls@comcast.net>
393 Paul Brook <paul@codesourcery.com>
394
395 * intrinsics/env.c (getenv, get_environmental_variable): Remove
396 trailing white space. Use alloca. Honour trim_name.
397
398 2004-09-13 Bud Davis <bdavis9659@comcast.net>
399
400 PR fortran/17090
401
402 * io/list_read.c (list_formatted_read): Handle trailing spaces
403 at end of line.
404
405 2004-09-06 Steven G. Kargl <kargls@comcast.net>
406
407 * io/write.c (output_float): Typo in comment. Remove debugging
408 printf. Fix format for FP of form 1e10.
409
410 2004-09-03 Richard Henderson <rth@redhat.com>
411
412 * intrinsics/cshift0.c (DEF_COPY_LOOP, copy_loop_int, copy_loop_long,
413 copy_loop_double, copy_loop_ldouble): New.
414 (__cshift0): Make shift type ssize_t. Use % operator instead of
415 div. Use specialized versions of copy loop depending on the shape.
416
417 2004-09-02 Paul Brook <paul@codesourcery.com>
418
419 * io/format.c (parse_format_list): Set repeat count for P descriptors.
420 * write.c (output_float): Fix condition. Correctly handle nonzero
421 scale factor.
422
423 2004-09-01 Eric Botcazou <ebotcazou@libertysurf.fr>
424
425 * mk-sik-inc.sh: Use a temporary string instead of 'echo -n'.
426 * mk-srk-inc.sh: Likewise.
427
428 2004-09-01 Paul Brook <paul@codesourcery.com>
429
430 * runtime/error.c (generate_error): Set both iostat and
431 library_return.
432
433 2004-08-31 Paul Brook <paul@codesourcery.com>
434
435 PR libfortran/16805
436 * io/list_read.c (next_char): Don't signal EOF for internal files.
437 * io/unix.c (mem_alloc_r_at): Don't return NULL for incomplete reads.
438
439 2004-08-31 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
440
441 * io/unit.c: Separate copyright years by ','.
442 (compare, insert_unit, delete_unit, is_internal_unit, close_units):
443 Remove blank line in beginning of function.
444 (get_unit): Simplify code.
445
446 2004-08-31 Paul Brook <paul@codesourcery.com>
447
448 * io/unit.c (get_unit): Remove superfluous if.
449
450 2004-08-31 Paul Brook <paul@codesourcery.com>
451
452 * io/transfer.c (read_sf): Rename uinty to readlen. Detect EOF.
453 (finalize_transfer): Move setjmp after namlist IO.
454 * io/unix.c (mem_alloc_r_at): Calculate remaining length correctly.
455
456 2004-08-31 Paul Brook <paul@codesourcery.com>
457
458 * list_read.c (eat_separator): Set at_eo when a '/' is seen.
459
460 2004-08-31 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
461
462 * libgfortran.h: Replace 'gfc_strlen_type' by
463 'gfc_charlen_type'. Update comment accordingly.
464 * intrinsics/args.c, intrinsics/env.c, io/io.h, io/transfer.c:
465 Replace all occurences of 'gfc_strlen_type' by 'gfc_charlen_type'.
466
467 2004-08-31 Paul Brook <paul@codesourcery.com>
468
469 * libgfortran.h: Add comments.
470
471 2004-08-30 Richard Henderson <rth@redhat.com>
472
473 * Makefile.am (gfor_helper_src): Split selected_kind.f90.
474 (gfor_built_src): Add selected_int_kind.inc selected_real_kind.inc.
475 (selected_int_kind.inc selected_real_kind.inc): New rules.
476 * Makefile.in: Regenerate.
477 * mk-sik-inc.sh, mk-srk-inc.sh: New files.
478 * intrinsics/selected_int_kind.f90: Split from selected_kind.f90,
479 include table of detected kinds.
480 * intrinsics/selected_real_kind.f90: Similarly.
481
482 2004-08-29 Steven G. Kargl <kargls@comcast.net>
483 Paul Brook <paul@codesourcery.com>
484
485 * intrinsics/bessel.c: New file.
486 * intrinsics/erf.c: New file.
487 * Makefie.am: Add intrinsics/bessel.c and intrinsics/erf.c.
488 * configure.ac: Test for C99 Bessel and Error functions.
489 * Makefile.in: Regenerate.
490 * config.h.in: Regenerate.
491 * configure: Regenerate.
492
493 2004-08-29 Steven G. Kargl <kargls@comcast.net>
494 Paul Brook <paul@codesourcery.com>
495
496 * Makefile.am: Add intrinsics/getXid.c.
497 * configure.ac: Add tests for get{g,p,u}id.
498 * config.h.in: Regenerate.
499 * Makefile.in: Regenerate.
500 * configure: Regenerate.
501
502 2004-08-28 Paul Brook <paul@codesourcery.com>
503
504 PR libfortran/17195
505 * libgfortran.h (rtoa): Remove prototype.
506 * runtime/error.c (rtoa): Remove.
507 * io/write.c (calculate_G_format): Don't add blanks if E format is
508 used. Add correct number of blanks when exponent width is specified.
509 (output_float): Rewrite.
510
511 2004-08-27 Paul Brook <paul@codesourcery.com>
512
513 * io/rewind.c (st_rewind): Reset unit to read mode.
514
515 2004-08-27 Bud Davis <bdavis9659@comcast.net>
516
517 PR fortran/16597
518 * io/io.h: created typedef for unit_mode.
519 * io/io.h (gfc_unit): added mode to unit structure.
520 * io/transfer.c (data_transfer_init): flush if a write then
521 read is done on a unit (direct access files).
522 * io/rewind.c (st_rewind): Used unit mode instead of global.
523
524 2004-08-24 Bud Davis <bdavis9659@comcast.net>
525
526 PR fortran/17143
527 * runtime/error.c (itoa): keep from overflowing during
528 mod operation by using unsigned variable.
529
530 2004-08-24 Bud Davis <bdavis9659@comcast.net>
531
532 PR fortran/17164
533 * runtime/string_intrinsics.c (string_index):check for
534 substring longer than string.
535
536 2004-08-24 David Edelsohn <edelsohn@gnu.org>
537
538 * Makefile.am (libgfortran_la_LDFLAGS): Add -lm.
539 * Makefile.in: Rebuilt.
540
541 2004-08-23 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
542
543 * io/io.h, io/list_read.c, io/open.c, io/transfer.c, io/write.c:
544 Fix formatting issues, update copyright years.
545
546 2004-08-21 Bud Davis <bdavis9659@comcast.net>
547
548 PR 16908
549 * io/transfer.c (next_record_w): Do not blank pad.
550 * io/transfer.c (next_record): Take into account partial records.
551
552 2004-08-18 Victor Leikehman <lei@il.ibm.com>
553
554 PR fortran/13278
555 * io/transfer.c (st_set_nml_var)
556 * io/write.c (namelist_write): Allow var_name and var_name_len to be
557 null. For strings, use string_length field instead of len.
558 * io/io.h (struct namelist_type): New field string_length.
559 (st_set_nml_var_char): New argument string_length.
560
561 2004-08-13 Bud Davis <bdavis9659@comcast.net>
562
563 PR gfortran/16935
564 * io/open.c (st_open): use flags instead of the unit structure.
565
566 2004-08-10 Victor Leikehman <lei@il.ibm.com>
567
568 * io/list_read.c (namelist_read): Convert variable names
569 to lower case, so that mixed-case names are recognized.
570 Don't read beyond terminating slash.
571
572 2004-08-09 Richard Henderson <rth@redhat.com>
573 Roger Sayle <roger@eyesopen.com>
574
575 * intrinsics/c99_functions.c (nextafterf): New implementation that
576 works correctly with denormalized numbers.
577
578 2004-08-09 Victor Leikehman <lei@il.ibm.com>
579
580 * m4/matmul.m4, m4/matmull.m4, intrinsics/eoshift0.c,
581 intrinsics/eoshift2.c, intrinsics/transpose_generic.c:
582 Allocate space if return value has NULL in its data field.
583 * generated/*.c: Regenerate.
584
585 2004-08-06 Janne Blomqvist <jblomqvi@cc.hut.fi>
586
587 * intrinsics/env.c: New file.
588 * Makefile.am: Add env.c to build.
589 * Makefile.in: Regenerate.
590
591 2004-08-05 Victor Leikehman <lei@il.ibm.com>
592
593 PR libfortran/16704
594 * io/read.c (read_radix): Understand letters f and F as hex digits.
595
596 2004-08-04 Victor Leikehman <lei@il.ibm.com>
597
598 * libgfortran.h (array_t, size0) New declarations.
599 * m4/ifunction.m4, m4/transpose.m4, intrinsics/cshift0.c: Allocate
600 space if return value descriptor has NULL in its data field,
601 and initialize bounds and stride.
602 * intrinsics/size.c (array_t, size0): Declarations moved to
603 libgfortran.h.
604 * generated/*.c: Regenerate.
605
606 2004-08-03 Roger Sayle <roger@eyesopen.com>
607
608 PR libfortran/16137
609 * configure.ac: Add tests for acosf, asinf, atan2f, atanf, ceilf,
610 copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
611 scalbnf, sinf, sinhf, sqrtf, tanf and tanhf in libm.
612 * config.h.in: Regenerate.
613 * configure: Regenerate.
614
615 * instrinsics/c99_functions.c (acosf, asinf, atan2f, atanf, ceilf,
616 copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
617 nextafterf, scalbnf, sinf, sinhf, sqrtf, tanf, tanhf): New stub
618 implementations for targets that don't support C99 float functions.
619
620 2004-08-01 Roger Sayle <roger@eyesopen.com>
621
622 * io/write.c (write_float): Use the slightly more portable isnan
623 in preference to isinf.
624
625 2004-07-18 Bud Davis <bdavis9659@comcast.net>
626
627 * configure.ac: Add check for LFS support.
628 * configure: Regenerate
629
630 2004-07-11 Paul Brook <paul@codesourcery.com>
631
632 PR fortran/16303
633 * m4/cexp.m4 (carg): Return -pi to pi.
634 * generated/exp_c?.c: Regenerate.
635
636 2004-07-08 Andreas Krebbel <krebbel1@de.ibm.com>
637
638 PR fortran/16291
639 * libgfortran/io/write.c: (write_float): Added length check.
640 Remove pointless memset calls.
641
642 2004-07-04 Bud Davis <bdavis9659@comcast.net>
643 Paul Brook <paul@codesourcery.com>
644
645 PR fortran/15472
646 * io/transfer.c(us_write): set recl for seq unform writes to max size.
647 * io/transfer.c(data_transfer_init): handle un-opened seq unform unit.
648 * io/unix.c(fd_alloc_w_at): handle requests at start, fd_flush at
649 right time.
650 * io/unix.c(is_seekable): set based upon the file/device, not the
651 method being used to access it (fd or mmap).
652 * io/unix.c(fd_flush): don't set file_size if !seekable.
653 * io/unix.c(fd_truncate: ditto.
654
655 2004-07-04 Janne Blomqvist <jblomqvi@cc.hut.fi>
656 Paul Brook <paul@codesourcery.com>
657
658 PR fortran/15280
659 PR fortran/15665
660 * libgfortran.h (gfc_strlen_type): Define.
661 * intrinsics/args.c (getarg): Rename ...
662 (getarg_i4): ... to this.
663 (getarg_i8, get_command_argument_i4, get_command_argument_i8,
664 get_command_i4, get_command_i8): New functions.
665
666 2004-07-04 Matthias Klose <doko@debian.org>
667
668 * libtool-version: New.
669 * Makefile.am (libgfortran_la_LDFLAGS): Use -version-info for soname.
670 * Makefile.in: Regenerate.
671 * configure.ac: Remove libtool_VERSION macro
672 * configure: Regenerate
673
674 2004-06-30 Steve Kargl <sgk@troutmask.apl.washington.edu>
675 Steven Bosscher <stevenb@suse.de>
676
677 * intrinsics/rand.c (rand): Wrap the irand() call from the previous
678 commit in prefix.
679
680 2004-06-29 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
681 Paul Brook <paul@codesourcery.com>
682
683 * runtime/normalize.c (normalize_r4_i4, normalize_r8_i8): Fix
684 comments.
685 * intrinsics/rand.c (rand): Call irand() in call to normalize_r4_i4.
686
687 2004-06-27 Bud Davis <bdavis9659@comcast.net>
688
689 PR gfortran/12839
690 * io/write.c (write_float): check signbit for Infinity.
691
692 2004-06-26 Bud Davis <bdavis9659@comcast.net>
693
694 PR gfortran/16196
695 * unix.c(regular_file): create file if it does not exist.
696
697 2004-06-24 Andrew Pinski <apinski@apple.com>
698
699 * configure.ac: Remove check for libmx.
700 * configure: Regenerate.
701
702 2004-06-22 Janne Blomqvist <jblomqvi@cc.hut.fi>
703
704 PR fortran/15750
705 * inquire.c (st_inquire): Add comment
706 * io.h (st_parameter): Add iolength.
707 (st_iolength, st_iolength_done): Declare.
708 * transfer.c (iolength_transfer, iolength_transfer_init,
709 st_iolength, st_iolength_done): New functions.
710
711 2004-06-21 Steven G. Kargl <kargls@comcast.net>
712
713 * etime.c (etime_sub): Remove array rank check;
714 Add check for sufficient space.
715
716 2004-06-19 Bud Davis <bdavis9659@comcast.net>
717
718 PR gfortran/16080
719 * io/list_read.c(set_value): fixed spelling.
720
721 2004-06-19 Bud Davis <bdavis9659@comcast.net>
722
723 PR gfortran/16080
724 * io/list_read.c(set_value): don't copy if the string is null.
725
726 2004-06-14 Bud Davis <bdavis9659@comcast.net>
727
728 PR gfortran/15292
729 * intrinsics/c99_functions.c: Use fpclassify if it exists.
730
731 2004-06-13 Paul Brook <paul@codesourcery.com>
732
733 * Makefile.am (gfor_helper_src): Add runtime/normalize.f90.
734 * configure.ac: Add checks for nextafter and nextafterf.
735 * Makefile.in, config.h.in, configure: Regenerate.
736 * libgfortran.h (normalize_r4_i4, normalize_r8_i8): Declare.
737 * intrinsics/rand.c (rand): Use normalize_r4_i4.
738 * intrinsics/random.c (random_r4): Use normalize_r4_i4.
739 (random_r8): Use normalize_r8_i8.
740 * runtime/normalize.c: New file.
741
742 2004-06-13 Steven G. Kargl <kargls@comcast.net>
743 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
744
745 * random.c: Fix several spelling and formatting mistakes in
746 comments.
747 (random_r8): Fix loop to make random numbers range in [0,1(.
748
749
750 2004-06-13 Steven G. Kargl <kargls@comcast.net>
751
752 * random.c (random_r4): Burn a random number.
753 (random_r8): fix infinite loop.
754
755 2004-06-12 Bud Davis <bdavis9659@comcast.net>
756 Steve Kargl <sgk@troutmask.apl.washington.edu>
757
758 PR gfortran/15292
759 * intrinsics/c99_functions.c: New file.
760 * Makefile.am: Add new file.
761 * configure.ac: Added test for round/roundf.
762 * Makefile.in: Regenerate.
763 * configure: Regenerate.
764 * configure.h.in: Regenerate.
765
766 2004-06-12 Steven G. Kargl <kargls@comcast.net>
767
768 * Makefile.am: Add rand.c and etime.c
769 * Makefile.in: Regenerated.
770 * aclocal.in: Regenerated.
771 * cpu_time.c (second_sub, second): New functions.
772 * rand.c (irand, rand, srand): New file.
773 * etime.c (etime_sub, etime): New file.
774
775 2004-06-12 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
776 Steven Bosscher <stevenb@suse.de>
777
778 PR fortran/14923
779 * intrinsics/date_and_time.c: New file.
780 * Makefile.am (gfor_helper_src): Add intrinsics/date_and_time.c.
781 * Makefile.in, aclocal.m4: Regenerate.
782 * libgfortran.h: Prototype date_and_time().
783
784 2004-06-12 Bud Davis <bdavis9659@comcast.net>
785
786 PR fortran/15665
787 * intrinsics/args.c: Implement GETARG and IARGC.
788 * Makefile.am: Add it.
789 * Makefile.in: Regenerate.
790
791 2004-06-12 Bud Davis <bdavis9659@comcast.net>
792
793 PR gfortran/12839
794 * io/write.c(write_float): Format inf and nan IAW F2003.
795
796 2004-06-09 Bud Davis <bdavis9659@comcaste.net>
797
798 PR gfortran/14897
799 * io/transfer.c (formatted_transfer): position is unique
800 for T and TL edit descriptors.
801 (data_transfer_init): set record length to size of internal
802 file.
803
804 2004-06-09 Bud Davis <bdavis9659@comcast.net>
805
806 PR gfortran/15755
807 * io/backspace.c(st_backspace): call correct routine for
808 formatted and un-formatted units.
809
810 2004-05-30 Andreas Jaeger <aj@suse.de>, Steven Bosscher <stevenb@suse.de>
811
812 PR gfortran/11800
813 * Makefile.am (AM_CPPFLAGS): Renamed from INCLUDES.
814 (lib_LTLIBRARIES): Rename to ...
815 (toolexeclib_LTLIBRARIES): this for multilib support.
816 * configure.in: Rename to ...
817 * configure.ac: this. Update to modern autoconf style, enable
818 multilibs, support --enable-version-specific-runtime-libs.
819 * Makefile.in: Regenerated.
820 * configure: Regenerated.
821 * aclocal.m4: Regenerated.
822
823 2004-05-30 Steven G. Kargl <kargls@comcast.net>
824
825 * libgfortran.h (random_seed): Update prototype.
826 * intrinsics/random.c: Disable old implementation and add new one.
827
828 2004-05-30 Andreas Jaeger <aj@suse.de>
829
830 * intrinsics/random.c: Include unistd.h for close and read
831 prototypes, remove unneeded inclusion of assert.h.
832
833 * intrinsics/abort.c: Include stdlib.h for abort prototype, remove
834 unneeded inclusion of assert.h.
835
836 2004-05-27 Tobias Schlueter <tobias.shclueter@physik.uni-muenchen.de>
837
838 PR fortran/15234
839 * intrinsics/associated.c: Remove enum.
840 (associated): Replace TRUE/FALSE by 1/0.
841
842 2004-05-23 Steven G. Kargl <kargls@comcast.net>
843
844 * random.c (random_seed): Use correct variable.
845
846 2004-05-22 Steven G. Kargl <kargls@comcast.net>
847
848 * intrinsics/system_clock: New file.
849 * Makefile.am: Add intrinsics/system_clock.c.
850 * Makefile.in: Regenerate.
851
852 2004-05-21 Roger Sayle <roger@eyesopen.com>
853
854 * io/format.c (parse_format_list): Allow the comma after a string
855 literal to be optional.
856
857 2004-05-18 Paul Brook <paul@codesourcery.com>
858 Feng Wang <fengwang@nudt.edu.cn>
859
860 * Makefile.am (i_pow_c): Set it. Add build rule.
861 (gfor_built_src): Use it.
862 (m4_files): add m4/pow.m4.
863 * Makefile.in: Regenerate.
864 * m4/pow.m4: New file.
865 * generated/pow_*.c: Regenerate.
866
867 2004-05-18 Paul Brook <paul@codesourcery.com>
868
869 * Makefile.am: Remove references to types.m4.
870 * m4/iparm.m4: Merge with types.m4.
871 * m4/types.m4: Remove.
872 * m4/cshift1.m4, m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4,
873 m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4, m4/ifunction.m4,
874 m4/in_pack.m4, m4/in_unpack.m4, m4/iparm.m4, m4/matmul.m4,
875 m4/matmull.m4, m4/maxloc0.m4, m4/maxloc1.m4, m4/maxval.m4,
876 m4/minloc0.m4, m4/minloc1.m4, m4/minval.m4, m4/reshape.m4,
877 m4/shape.m4, m4/specific.m4, m4/specific2.m4, m4/transpose.m4):
878 Update to use new iparm.m4.
879 * generated/*.c: Regenerate.
880
881 2004-05-18 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
882
883 PR fortran/15235
884 * gfortran.h (offset_t): Rename to ...
885 (gfc_offset): ... this.
886 * io/backspace.c (formatted_backspace, unformatted_backspace),
887 io/io.h (stream, gfc_unit, global_t, file_length, file_position),
888 transfer.c (us_read, us_write, next_record_r, next_record_w),
889 io/unit.c (init_units), unix.c (unix_stream, fd_alloc,
890 fd_alloc_r_at, fd_alloc_w_at, fd_seek, mmap_alloc,
891 mmap_alloc_r_at, mmap_alloc_w_at, mmap_seek, mem_alloc_r_at,
892 mem_alloc_w_at, mem_seek, file_length, file_position): Replace all
893 occurences of offset_t by gfc_offset.
894
895 2004-05-16 Paul Brook <paul@codesourcery.com>
896
897 * io/format.c (write_real): Don't include padding in format.
898
899 2004-05-16 Paul Brook <paul@codesourcery.com>
900
901 * io/format.c (format_lex): Make c an int.
902
903 2004-05-16 Janne Blomqvist <jblomqvi@cc.hut.fi>
904 Paul Brook <paul@codesourcery.com>
905
906 * io/write.c (write_logical): Don't print extra blank.
907 (write_integer): Base field width on kind.
908 (list_formatted_write): Output initial blank.
909
910 2004-05-16 Janne Blomqvist <jblomqvi@cc.hut.fi>
911
912 * io/io.h (flush): Add prototype.
913 * io/transfer.c (finalize_transfer): Flush partial records.
914 * io/unix.c (flush): New function.
915
916 2004-05-15 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
917
918 PR fortran/15234
919 * io/io.h (unit_t): Rename to ...
920 (gfc_unit) ... this.
921 (unit_root, current_unit, find_file, find_unit, get_unit): Now
922 of type gfc_unit.
923 (delete_file, insert_unit, close_unit): Argument now of type
924 gfc_unit.
925 * backspace.c (st_backspace), close.c (st_close), endfile.c
926 (st_endfile), inquire.c (inquire_via_unit, st_inquire), open.c
927 (test_endfile, edit_modes, new_unit, already_open, st_open),
928 rewind.c (st_rewind), transfer.c (current_unit), unit.c
929 (internal_unit, unit_cache, rotate_left, rotate_right, insert,
930 insert_unit, delete_root, delete_treap, delete_unit, find_unit,
931 get_unit, init_units, close_unit), unix.c (find_file0,
932 find_file, delete_file): Replace all occurences of unit_t by
933 gfc_unit.
934
935 2004-05-15 Bud Davis <bdavis9659@comcast.net>
936
937 PR fortran/15311
938 * io/write.c (write_a): right justify A edit output.
939
940 2004-05-14 Bud Davis <bdavis9659@comcast.net>
941
942 PR fortran/15149
943 * libgfortan.h,intrinsics/random.c: Made random_seed visible.
944 * runtime/main.c(init): Call random_seed as part of MAIN init.
945
946 2004-05-13 Tobias Schlter <tobias.schlueter@physik.uni-muenchen.de>
947
948 * io/format.c: (parse_format_list): No comma is required after
949 P descriptor.
950
951 2004-05-13 Bud Davis <bdavis9659@comcast.net>
952
953 PR fortran/15204
954 * io/intrinsic/string_intrinsics.c (adjustr): rework logic.
955
956 2004-05-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
957 Steven Bosscher <stevenb@suse.de>
958
959 PR libfortran/15234
960 * libgfortran.h: Include <inttypes.h> if available.
961
962 2004-05-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
963
964 * io/unix.c (MAP_FAILED): Define if missing.
965 (mmap_alloc): Cast MAP_FAILED to char *.
966 (mmap_open): Likewise.
967
968 2004-04-26 Bud Davis <bdavis9659@comcast.net>
969
970 * generated/_abs_i8.f90: New file.
971 * generated/_abs_c4.f90: New file.
972 * generated/_abs_c8.f90: New file.
973 * Makefile.am: Add them.
974 * Makefile.in: Regenerate.
975 `
976 2004-04-26 Bud Davis <bdavis9659@comcast.net>
977
978 PR fortran/14056
979 * generated/_abs_i4.f90: New file.
980 * Makefile.am: Add it.
981 * Makefile.in: Regenerate.
982
983 2004-04-25 Bud Davis <bdavis9659@comcast.net>
984
985 PR fortran/14942
986 * io/list_read.c(list_formatted_read): finish consuming the
987 spaces and seperators at eoln to get ready for next item.
988
989 2004-04-23 Bud Davis <bdavis9659@comcast.net>
990
991 PR fortran/15113
992 * io/read.c(read_a): Handle field width > destination and no field width.
993
994 2004-04-22 Bud Davis <bdavis9659@comcast.net>
995
996 PR fortran/14906
997 * io/format.c (format_item): gracefully handle a ')'
998 when it is the first character encountered in the string.
999
1000 2004-04-11 Bud Davis <bdavis9659@comcast.net>
1001
1002 PR fortran/14904
1003 * io/transfer.c (next_record): Update last_record when
1004 more than one record is written to a direct access file
1005 with one write statement.
1006
1007 2004-04-11 Bud Davis <bdavis9659@comcast.net>
1008
1009 PR fortran/14901
1010 * io/transfer.c (next_record_w) : No '\n' if internal.
1011 * io/unix.c (empty_internal_buffer) : Init to spaces, not '\n'.
1012
1013 2004-04-11 Bud Davis <bdavis9659@comcast.net>
1014
1015 * io.h (ioparm): Interface from FE is 32 bit, irregardless of offset_t.
1016 Will need to change this later to support direct access files > 2gb.
1017
1018 2004-04-03 Bud Davis <bdavis9659@comcast.net>
1019
1020 PR gfortran/14762
1021 * io/transfer.c (next_record_r) : Skip to next record.
1022
1023 2004-04-03 Bud Davis <bdavis9659@comcast.net>
1024
1025 PR gfortran/14836
1026 * io/transfer.c (next_record): Update last_record for DIRECT
1027
1028 2004-04-03 Bud Davis <bdavis9659@comcast.net>
1029
1030 PR gfortran/14837
1031 * io/unix.c (find_file0): Use fd field of struct
1032
1033 2004-04-03 Bud Davis <bdavis9659@comcast.net>
1034
1035 PR 14831
1036 * io/inquire.c (inquire_via_unit): Changed return string for
1037 BLANK=NULL. Use correct variable for ACTION.
1038
1039 2004-04-01 Bud Davis <bdavis9659@comcast.net>
1040
1041 PR 14746
1042 * io/read.c (read_f): Allow a decimal without a leading digit.
1043 * io/write.c (output_float): remove a leading '0' to keep from
1044 overflowing the field (F edit descriptor).
1045
1046 2004-04-01 Bud Davis <bdavis9659@comcast.net>
1047
1048 PR gfortran/14565
1049 * io/open.c (new_unit),
1050 * io/io.h : new_unit is now visible
1051 * io/transfer.c (data_transfer_init): open unit if no OPEN statement.
1052 * io/transfer.c (data_transfer_init): remove compile warnings.
1053 * io/rewind.c (st_rewind): ftruncate if writing.
1054
1055 2004-03-24 Bud Davis <bdavis9659@comcast.net>
1056
1057 * write.c (write_l): Use extract_int for 'L' edit descriptor.
1058
1059 2004-03-24 Bud Davis <bdavis9659@comcast.net>
1060
1061 PR 13919
1062 * io/io.h (global_t):
1063 * io/list_read.c (next_char,list_formatted_read,ist_formatted_read):
1064 Move eof_jmp to a global structure.
1065 * io/transfer.c(finalize_transfer) : Set up eof_jump for callers.
1066
1067 2004-03-24 Bud Davis <bdavis9659@comcast.net>
1068
1069 * m4/cexp.m4 (csqrt): Actually use the passed value.
1070 * generated/exp_c?.c: Regenerate.
1071
1072 2004-03-24 Bud Davis <bdavis9659@comcast.net>
1073
1074 PR 12921
1075 * io.h, transfer.c, open.c : recl_in changed from ptr to variable.
1076 * open.c (new_unit): Moved test for positioned direct access error.
1077 (init_units): Corrected calculation of max records.
1078
1079 2004-02-06 Feng Wang <fengwang@nudt.edu.cn>
1080
1081 * Makefile.am: Add m4/dotprodc.m4. And fix spelling.
1082 * Makefile.in: Regenerate.
1083 * m4/dotprodc.m4: New file. Implement complex dot_product.
1084 * m4/dotprod.m4: Delete the complex implementation.
1085 * generated/dotprod_*: Update.
1086
1087 2004-02-07 Bud Davis <bdavis9659@comcast.net>
1088
1089 * transfer.c (write_constant_string): Do not delete H's in hollerith
1090 formats.
1091
1092 2004-01-05 Andrew Pinski <apinski@apple.com>
1093
1094 * configure.in: Check for csin in -lmx also.
1095 * configure: Regenerate.
1096
1097 2004-01-01 Paul Brook <paul@codesourcery.com>
1098
1099 * io/list_read.c (find_nml_node): Make static.
1100 (match_namelist_name): Ditto.
1101 * io/read.c (convert_precision_real): Make static, fix spelling.
1102 * io/transfer.c (extract_real): Remove unused prototype.
1103 (st_set_nml_var): Make static.
1104 * io/write.c (extract_real): Make static.
1105
1106 \f
1107 Copyright (C) 2004 Free Software Foundation, Inc.
1108
1109 Copying and distribution of this file, with or without modification,
1110 are permitted in any medium without royalty provided the copyright
1111 notice and this notice are preserved.