OSDN Git Service

2005-04-10 Thomas Koenig <Thomas.Koenig@online.de>
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2005-04-10  Thomas Koenig <Thomas.Koenig@online.de>
2
3         PR libfortran/17992
4         PR libfortran/19568
5         PR libfortran/19595
6         PR libfortran/20005
7         PR libfortran/20092
8         PR libfortran/20131
9         PR libfortran/20138
10         PR libfortran/20661
11         PR libfortran/20744
12         * io/transfer.c (top level): eor_condition: New static variable.
13         (read_sf): Remove unnecessary zeroing of buffer (there is enough
14         information in its length).
15         Return a string of length 0 (to be padded by caller) if EOR was
16         seen previously.
17         Remove erroneous special casing of EOR for standard input.
18         Set eor_condition for non-advancing I/O if an end of line was
19         detected.
20         Increment ioparm.size if necessary.
21         (formatted_transfer):  Skip the function if there is an EOR condition.
22         (data_transfer_init):  Initialize eor_condition to zero (false).
23         (next_record_r):  Clear sf_seen_eor if a \n has been seen already.
24         (finalize_transfer):  If there is an EOR condition, raise the error.
25
26 2005-04-09  Bud Davis  <bdavis@gfortran.org>
27             Steven G. Kargl <kargls@comcast.net>
28
29         PR fortran/19872
30         * io/transfer.c (data_transfer_init): truncate an existing
31         file on the first write.
32
33 2005-04-09  Thomas Koenig  <Thomas.Koenig@online.de>
34
35         PR libfortran/19106
36         PR libfortran/19014
37         * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): ditto.
38         If retarray->data is NULL (i.e. the front end does not
39         know the rank and dimenson of the array), fill in its
40         properties and allocate memory.
41         Change the assertions about rank and dimension of retarray into
42         runtime errors and only check them for retarray->data != NULL.
43         Do the same for correcting the stride from 0 to 1 in retarray.
44         (`m'name`'rtype_qual`_'atype_code): Likewise.
45         * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Likewise.
46         Change assertion about rank of array to runtime error.
47         (`m'name`'rtype_qual`_'atype_code): Likewise.
48         * generated/all_l4.c: Regenerated.
49         * generated/all_l8.c: Regenerated.
50         * generated/any_l4.c: Regenerated.
51         * generated/any_l8.c: Regenerated.
52         * generated/count_4_l4.c: Regenerated.
53         * generated/count_4_l8.c: Regenerated.
54         * generated/count_8_l4.c: Regenerated.
55         * generated/count_8_l8.c: Regenerated.
56         * generated/maxloc0_4_i4.c: Regenerated.
57         * generated/maxloc0_4_i8.c: Regenerated.
58         * generated/maxloc0_4_r4.c: Regenerated.
59         * generated/maxloc0_4_r8.c: Regenerated.
60         * generated/maxloc0_8_i4.c: Regenerated.
61         * generated/maxloc0_8_i8.c: Regenerated.
62         * generated/maxloc0_8_r4.c: Regenerated.
63         * generated/maxloc0_8_r8.c: Regenerated.
64         * generated/maxloc1_4_i4.c: Regenerated.
65         * generated/maxloc1_4_i8.c: Regenerated.
66         * generated/maxloc1_4_r4.c: Regenerated.
67         * generated/maxloc1_4_r8.c: Regenerated.
68         * generated/maxloc1_8_i4.c: Regenerated.
69         * generated/maxloc1_8_i8.c: Regenerated.
70         * generated/maxloc1_8_r4.c: Regenerated.
71         * generated/maxloc1_8_r8.c: Regenerated.
72         * generated/maxval_i4.c: Regenerated.
73         * generated/maxval_i8.c: Regenerated.
74         * generated/maxval_r4.c: Regenerated.
75         * generated/maxval_r8.c: Regenerated.
76         * generated/minloc0_4_i4.c: Regenerated.
77         * generated/minloc0_4_i8.c: Regenerated.
78         * generated/minloc0_4_r4.c: Regenerated.
79         * generated/minloc0_4_r8.c: Regenerated.
80         * generated/minloc0_8_i4.c: Regenerated.
81         * generated/minloc0_8_i8.c: Regenerated.
82         * generated/minloc0_8_r4.c: Regenerated.
83         * generated/minloc0_8_r8.c: Regenerated.
84         * generated/minloc1_4_i4.c: Regenerated.
85         * generated/minloc1_4_i8.c: Regenerated.
86         * generated/minloc1_4_r4.c: Regenerated.
87         * generated/minloc1_4_r8.c: Regenerated.
88         * generated/minloc1_8_i4.c: Regenerated.
89         * generated/minloc1_8_i8.c: Regenerated.
90         * generated/minloc1_8_r4.c: Regenerated.
91         * generated/minloc1_8_r8.c: Regenerated.
92         * generated/minval_i4.c: Regenerated.
93         * generated/minval_i8.c: Regenerated.
94         * generated/minval_r4.c: Regenerated.
95         * generated/minval_r8.c: Regenerated.
96         * generated/product_c4.c: Regenerated.
97         * generated/product_c8.c: Regenerated.
98         * generated/product_i4.c: Regenerated.
99         * generated/product_i8.c: Regenerated.
100         * generated/product_r4.c: Regenerated.
101         * generated/product_r8.c: Regenerated.
102         * generated/sum_c4.c: Regenerated.
103         * generated/sum_c8.c: Regenerated.
104         * generated/sum_i4.c: Regenerated.
105         * generated/sum_i8.c: Regenerated.
106         * generated/sum_r4.c: Regenerated.
107         * generated/sum_r8.c: Regenerated.
108
109 2005-04-09  Thomas Koenig <Thomas.Koenig@online.de>
110
111         PR libfortran/20163
112         * runtime/string.c (compare0): Use fstrlen() to 
113         strip trailing blanks from option string.
114
115 2005-04-09  Andrew Pinski  <pinskia@physics.uc.edu>
116
117         PR fortran/13257
118         * format.c (parse_format_list): Allow an optional comma
119         between descriptors.
120
121 2005-04-08  Eric Botcazou  <ebotcazou@libertysurf.fr>
122
123         * io/backspace.c (unformatted_backspace): Do not dereference
124         the pointer to the stream.
125
126 2005-04-07  Andrew Pinski  <pinskia@physics.uc.edu>
127
128         PR libfortran/20766
129         * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
130         "-Wl,-single_module".
131         * configure: Regenerate.
132         * Makefile.am (libgfortran_la_LDFLAGS): Add extra_ldflags_libgfortran.
133         * Makefile.in: Regenerate.
134
135 2005-04-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
136
137         PR libfortran/20755
138         * write.c (write_float): A G edit descriptor may locally change
139         the scale factor, but it needs to be restored afterwards.
140
141 2005-04-03  Dale Ranta  <dir@lanl.gov>
142             Francois-Xavier Coudert  <coudert@clipper.ens.fr>
143
144         PR libfortran/20068
145         PR libfortran/20125
146         PR libfortran/20156
147         PR libfortran/20471
148         * io/backspace.c (unformatted_backspace): Fix error in arithmetic.
149         (st_backspace): When in WRITING mode, we flush and falling back
150         into READING mode. In all cases, correctly position the stream.
151
152 2005-03-31  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
153
154         PR libfortran/20660
155         * io/inquire.c (inquire_via_unit): Non-opened units should still be
156         reported by an INQUIRE statement as existing.
157         * io/transfer.c (data_transfer_init): Never accept negative units.
158
159 2005-03-29  Dale Ranta  <dir@lanl.gov>
160             Francois-Xavier Coudert  <coudert@clipper.ens.fr>
161
162         PR libfortran/20163
163         * io/open.c (st_open): call library_end() before returning even if
164         an error arises.
165
166 2005-03-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
167
168         PR libfortran/19678
169         * list_read.c (next_char, eat_separator, finish_separator, read_real)
170         (namelist_read): Add support for '\r' as well as '\n' as EOL
171         character.
172
173         PR libfortran/19679
174         * list_read.c (read_sf): Add a '\r' in a test to support DOS
175         line-endings when line length is exceeded.
176
177 2005-03-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
178
179         PR libfortran/15332
180         * io/format.c (parse_format_list): format node for colon edit
181         descriptor needs a repeat counter set to 1.
182
183 2005-02-24  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
184
185         * config.h.in: Regenerate.
186
187 2005-02-23  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
188
189         PR libfortran/18025
190         * write.c (output_float): Handling the "F0.d" format similarly as
191         commercial compilers.
192
193 2005-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
194
195         * Makefile.am: Added new files.
196         * Makefile.in: Regenerate.
197         * aclocal.m4: Regenerate.
198         * configure.ac: add checks for signal.h headers file, as well as
199         following functions: chdir, strerror, getlogin, gethostname, kill,
200         link, symlink, perror, sleep, time.
201         * configure: Regenerate.
202         * intrinsics/chdir.c, intrinsics/gerror.c, intrinsics/getlog.c,
203         intrinsics/hostnm.c, intrinsics/ierrno.c, intrinsics/kill.c,
204         intrinsics/link.c, intrinsics/perror.c, intrinsics/rename.c,
205         intrinsics/sleep.c, intrinsics/symlnk.c, intrinsics/time.c: Newly
206         implementend g77 intrinsics.
207
208 2005-03-21  Zack Weinberg  <zack@codesourcery.com>
209
210         * configure.ac: Do not invoke TL_AC_GCC_VERSION.
211         In all substitutions, leave gcc_version to be expanded by the Makefile.
212         * aclocal.m4, configure: Regenerate.
213         * Makefile.am: Set gcc_version.
214         * Makefile.in: Regenerate.
215
216 2005-03-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
217
218         PR libfortran/20257
219         * open.c (new_unit): set record length to max_offset rather than
220           using a hard-coded limit (which was too low).
221
222 2005-03-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
223
224         PR libfortran/20480
225         * write.c (output_float): special check when writing 0.0 with
226           EN and ES formats.
227
228 2005-03-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
229
230         PR libfortran/20124
231         * write.c (output_float): Adds a nzero_real variable to store
232         the number of leading zeros whatever the format width is. Corrects
233         the rounding of numbers less than 10^(-width). Fixes typo in an
234         error message. Updates copyright years
235
236 2005-02-27  Toon Moene  <toon@moene.indiv.nluug.nl>
237
238         * runtime/environ.c: Update copyright years.
239
240 2005-02-27  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
241
242         * io/write.c: Update copyright years.
243
244 2005-02-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
245
246         PR libfortran/20101
247         * io/write.c (output_float): Added special check for value 0.0 in
248         PE format.
249
250 2004-02-27  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
251
252         * io/write.c (output_float): Fix typo in condition.
253
254 2005-02-25  Peter O'Gorman  <peter@pogma.com>
255             Toon Moene  <toon@moene.indiv.nluug.nl>
256
257         PR libgfortran/17748
258         * runtime/environ.c: Remove references to environ.
259         (show_variables): remove GFORTRAN_UNBUFFERED_* and
260         GFORTRAN_NAME_* because they require environ.
261         (pattern_scan): Remove function.
262
263 2004-02-22  Paul Thomas <paulthomas2@wannado.fr>
264             Bud Davis  <bdavis@gfortran.org>
265
266         * io/list_read.c (read_real): Handle separators properly
267         in list directed read.
268
269 2004-02-21  Bud Davis  <bdavis@gfortran.org>
270
271         PR fortran/20086
272         * io/transfer.c (write_constant_string): accept an 'h' as
273         the start of a hollerith format string.
274
275 2005-02-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
276
277         PR libfortran/19302
278         * intrinsics/c99_functions.c (nextafterf): Special-case infinite
279         numbers.
280
281 2005-02-21  Steven G. Kargl  <kargls@comcast.net>
282
283         * io/write.c (output_float):  Typo in error meesage.
284
285 2005-02-20  Steven G. Kargl  <kargls@comcast.net>
286
287         PR 20085
288         * intrinsic/args.c (iargc): Off by 1.
289
290 2005-02-19  Steven G. Kargl  <kargls@comcast.net>
291
292       *  intrinsic/date_and_time.c: Fix conformance problems.
293
294 2005-02-01  Paul Thomas <paulthomas2@wanadoo.fr>
295
296         PR libgfortran/19363
297         PR libgfortran/19691
298         * libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.
299
300 2005-01-30  Bud Davis  <bdavis@gfortran.org>
301
302         PR fortran/19647
303         * io/inquire.c (inquire_via_unit): Use correct variable for
304         pad.
305
306 2005-01-29  Thomas Koenig  <Thomas.Koenig@online.de>
307
308         PR libfortran/19595
309         * io/transfer.c (data_transfer_init): eor requires advance="NO".
310
311 2005-01-25  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
312
313         PR libfortran/19524
314         * io/read.c (read_f): Don't free uninitialized pointer.
315
316 2005-01-23  James A. Morrison  <phython@gcc.gnu.org>
317         Paul Brook  <paul@codesourcery.com>
318
319         PR fortran/19294
320         * Makefile.am: Add transpose_c4.c and transpose_c8.c.
321         * intrinsics/cshift0.c: Use separate optimized loops for complex types.
322         * m4/transpose.m4: Include type letter in function name.
323         * Makefile.in: Regenerate.
324         * generated/transpose_*.c: Regenerate.
325
326 2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>
327
328         PR libfortran/19451
329         * io/transfer.c (finalize_transfer):  Don't do anything if
330         there is an error condition.
331
332 2005-01-22  David Edelsohn  <edelsohn@gnu.org>
333
334         PR libgfortran/19052
335         * libgfortran.h (options_t): Add stderr_unit.
336         * io/io.h (error_stream): Declare.
337         * io/open.c (new_unit): Do not terminate abnormally if opening
338         file preconnected to stdin, stdout, or stderr.
339         * io/unit.c (init_units): Initialize stderr_unit.
340         * io/unix.c (error_stream): New function.
341         * runtime/environ.c (GFORTRAN_STDERR_UNIT): New environment variable.
342
343 2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>
344
345         PR libfortran/18982
346         * io/unix.c (regular_file):  No need to change flags->action
347         if an error occurs.  Document this.
348         No need to call stat() for STATUS_OLD, open() will
349         fail anyway.
350         For ACTION_UNSPECIFIED, try open for read-write, then for
351         read-only if open fails with EACCES, then for write-only
352         if that fails with EACCES again.
353         * io/unix.c (open_external): Document changed behavior of
354         regular_file.
355
356 2005-01-22  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
357
358         PR fortran/19194
359         * io/io.h (st_parameter): Use 'GFC_INTEGER_4' instead of 'int',
360         use CHARACTER macro for definition of string valued paramters.
361
362 2005-01-22  Bud Davis  <bdavis9659@comcast.net>
363
364         PR fortran/19314
365         * io/inquire.c(inquire_via_unit): implement POSITION=.
366         * io/transfer.c(next_record): update position for
367         INQUIRE.
368         * io/rewind.c(st_rewind): update position for
369         INQUIRE.
370
371 2005-01-16  Bud Davis  <bdavis9659@comcast.net>
372
373         PR fortran/18778
374         * io/transfer.c (us_read): no bytes available is not a
375         runtime error.
376
377 2005-01-15  Bud Davis  <bdavis9659@comcast.net>
378
379         PR fortran/18983
380         * io/transfer.c (st_write_done): only truncate when it
381         is required.
382
383 2005-01-12  Toon Moene  <toon@moene.indiv.nluug.nl>
384
385         PR libfortran/19280
386         c99_protos.h: License changed to GPL+exception.
387         libgfortran.h: Ditto.
388         intrinsics/abort.c: Ditto.
389         intrinsics/args.c: Ditto.
390         intrinsics/associated.c: Ditto.
391         intrinsics/bessel.c: Ditto.
392         intrinsics/c99_functions.c: Ditto.
393         intrinsics/cpu_time.c: Ditto.
394         intrinsics/cshift0.c: Ditto.
395         intrinsics/date_and_time.c: Ditto.
396         intrinsics/env.c: Ditto.
397         intrinsics/eoshift0.c: Ditto.
398         intrinsics/eoshift2.c: Ditto.
399         intrinsics/erf.c: Ditto.
400         intrinsics/etime.c: Ditto.
401         intrinsics/exit.c: Ditto.
402         intrinsics/flush.c: Ditto.
403         intrinsics/fnum.c: Ditto.
404         intrinsics/getXid.c: Ditto.
405         intrinsics/getcwd.c: Ditto.
406         intrinsics/ishftc.c: Ditto.
407         intrinsics/mvbits.c: Ditto.
408         intrinsics/pack_generic.c: Ditto.
409         intrinsics/rand.c: Ditto.
410         intrinsics/random.c: Ditto.
411         intrinsics/reshape_generic.c: Ditto.
412         intrinsics/reshape_packed.c: Ditto.
413         intrinsics/size.c: Ditto.
414         intrinsics/spread_generic.c: Ditto.
415         intrinsics/stat.c: Ditto.
416         intrinsics/string_intrinsics.c: Ditto.
417         intrinsics/system.c: Ditto.
418         intrinsics/system_clock.c: Ditto.
419         intrinsics/transpose_generic.c: Ditto.
420         intrinsics/umask.c: Ditto.
421         intrinsics/unlink.c: Ditto.
422         intrinsics/unpack_generic.c: Ditto.
423         io/backspace.c: Ditto.
424         io/close.c: Ditto.
425         io/endfile.c: Ditto.
426         io/format.c: Ditto.
427         io/inquire.c: Ditto.
428         io/io.h: Ditto.
429         io/list_read.c: Ditto.
430         io/lock.c: Ditto.
431         io/open.c: Ditto.
432         io/read.c: Ditto.
433         io/rewind.c: Ditto.
434         io/transfer.c: Ditto.
435         io/unit.c: Ditto.
436         io/unix.c: Ditto.
437         io/write.c: Ditto.
438         m4/all.m4: Ditto.
439         m4/any.m4: Ditto.
440         m4/cexp.m4: Ditto.
441         m4/chyp.m4: Ditto.
442         m4/count.m4: Ditto.
443         m4/cshift1.m4: Ditto.
444         m4/ctrig.m4: Ditto.
445         m4/dotprod.m4: Ditto.
446         m4/dotprodc.m4: Ditto.
447         m4/dotprodl.m4: Ditto.
448         m4/eoshift1.m4: Ditto.
449         m4/eoshift3.m4: Ditto.
450         m4/exponent.m4: Ditto.
451         m4/fraction.m4: Ditto.
452         m4/head.m4: Ditto.
453         m4/iforeach.m4: Ditto.
454         m4/ifunction.m4: Ditto.
455         m4/in_pack.m4: Ditto.
456         m4/in_unpack.m4: Ditto.
457         m4/iparm.m4: Ditto.
458         m4/matmul.m4: Ditto.
459         m4/matmull.m4: Ditto.
460         m4/maxloc0.m4: Ditto.
461         m4/maxloc1.m4: Ditto.
462         m4/maxval.m4: Ditto.
463         m4/minloc0.m4: Ditto.
464         m4/minloc1.m4: Ditto.
465         m4/minval.m4: Ditto.
466         m4/mtype.m4: Ditto.
467         m4/nearest.m4: Ditto.
468         m4/pow.m4: Ditto.
469         m4/product.m4: Ditto.
470         m4/reshape.m4: Ditto.
471         m4/set_exponent.m4: Ditto.
472         m4/shape.m4: Ditto.
473         m4/specific.m4: Ditto.
474         m4/specific2.m4: Ditto.
475         m4/sum.m4: Ditto.
476         m4/transpose.m4: Ditto.
477         m4/types.m4: Ditto.
478         runtime/environ.c: Ditto.
479         runtime/error.c: Ditto.
480         runtime/in_pack_generic.c: Ditto.
481         runtime/in_unpack_generic.c: Ditto.
482         runtime/main.c: Ditto.
483         runtime/memory.c: Ditto.
484         runtime/normalize.c: Ditto.
485         runtime/pause.c: Ditto.
486         runtime/select.c: Ditto.
487         runtime/stop.c: Ditto.
488         runtime/string.c: Ditto.
489         generated/_abs_c4.f90: Regenerated.
490         generated/_abs_c8.f90: Regenerated.
491         generated/_abs_i4.f90: Regenerated.
492         generated/_abs_i8.f90: Regenerated.
493         generated/_abs_r4.f90: Regenerated.
494         generated/_abs_r8.f90: Regenerated.
495         generated/_acos_r4.f90: Regenerated.
496         generated/_acos_r8.f90: Regenerated.
497         generated/_aint_r4.f90: Regenerated.
498         generated/_aint_r8.f90: Regenerated.
499         generated/_anint_r4.f90: Regenerated.
500         generated/_anint_r8.f90: Regenerated.
501         generated/_asin_r4.f90: Regenerated.
502         generated/_asin_r8.f90: Regenerated.
503         generated/_atan2_r4.f90: Regenerated.
504         generated/_atan2_r8.f90: Regenerated.
505         generated/_atan_r4.f90: Regenerated.
506         generated/_atan_r8.f90: Regenerated.
507         generated/_conjg_c4.f90: Regenerated.
508         generated/_conjg_c8.f90: Regenerated.
509         generated/_cos_c4.f90: Regenerated.
510         generated/_cos_c8.f90: Regenerated.
511         generated/_cos_r4.f90: Regenerated.
512         generated/_cos_r8.f90: Regenerated.
513         generated/_cosh_r4.f90: Regenerated.
514         generated/_cosh_r8.f90: Regenerated.
515         generated/_dim_i4.f90: Regenerated.
516         generated/_dim_i8.f90: Regenerated.
517         generated/_dim_r4.f90: Regenerated.
518         generated/_dim_r8.f90: Regenerated.
519         generated/_exp_c4.f90: Regenerated.
520         generated/_exp_c8.f90: Regenerated.
521         generated/_exp_r4.f90: Regenerated.
522         generated/_exp_r8.f90: Regenerated.
523         generated/_log10_r4.f90: Regenerated.
524         generated/_log10_r8.f90: Regenerated.
525         generated/_log_c4.f90: Regenerated.
526         generated/_log_c8.f90: Regenerated.
527         generated/_log_r4.f90: Regenerated.
528         generated/_log_r8.f90: Regenerated.
529         generated/_mod_i4.f90: Regenerated.
530         generated/_mod_i8.f90: Regenerated.
531         generated/_mod_r4.f90: Regenerated.
532         generated/_mod_r8.f90: Regenerated.
533         generated/_sign_i4.f90: Regenerated.
534         generated/_sign_i8.f90: Regenerated.
535         generated/_sign_r4.f90: Regenerated.
536         generated/_sign_r8.f90: Regenerated.
537         generated/_sin_c4.f90: Regenerated.
538         generated/_sin_c8.f90: Regenerated.
539         generated/_sin_r4.f90: Regenerated.
540         generated/_sin_r8.f90: Regenerated.
541         generated/_sinh_r4.f90: Regenerated.
542         generated/_sinh_r8.f90: Regenerated.
543         generated/_sqrt_c4.f90: Regenerated.
544         generated/_sqrt_c8.f90: Regenerated.
545         generated/_sqrt_r4.f90: Regenerated.
546         generated/_sqrt_r8.f90: Regenerated.
547         generated/_tan_r4.f90: Regenerated.
548         generated/_tan_r8.f90: Regenerated.
549         generated/_tanh_r4.f90: Regenerated.
550         generated/_tanh_r8.f90: Regenerated.
551         generated/all_l4.c: Regenerated.
552         generated/all_l8.c: Regenerated.
553         generated/any_l4.c: Regenerated.
554         generated/any_l8.c: Regenerated.
555         generated/count_4_l4.c: Regenerated.
556         generated/count_4_l8.c: Regenerated.
557         generated/count_8_l4.c: Regenerated.
558         generated/count_8_l8.c: Regenerated.
559         generated/cshift1_4.c: Regenerated.
560         generated/cshift1_8.c: Regenerated.
561         generated/dotprod_c4.c: Regenerated.
562         generated/dotprod_c8.c: Regenerated.
563         generated/dotprod_i4.c: Regenerated.
564         generated/dotprod_i8.c: Regenerated.
565         generated/dotprod_l4.c: Regenerated.
566         generated/dotprod_l8.c: Regenerated.
567         generated/dotprod_r4.c: Regenerated.
568         generated/dotprod_r8.c: Regenerated.
569         generated/eoshift1_4.c: Regenerated.
570         generated/eoshift1_8.c: Regenerated.
571         generated/eoshift3_4.c: Regenerated.
572         generated/eoshift3_8.c: Regenerated.
573         generated/exp_c4.c: Regenerated.
574         generated/exp_c8.c: Regenerated.
575         generated/exponent_r4.c: Regenerated.
576         generated/exponent_r8.c: Regenerated.
577         generated/fraction_r4.c: Regenerated.
578         generated/fraction_r8.c: Regenerated.
579         generated/hyp_c4.c: Regenerated.
580         generated/hyp_c8.c: Regenerated.
581         generated/in_pack_i4.c: Regenerated.
582         generated/in_pack_i8.c: Regenerated.
583         generated/in_unpack_i4.c: Regenerated.
584         generated/in_unpack_i8.c: Regenerated.
585         generated/matmul_c4.c: Regenerated.
586         generated/matmul_c8.c: Regenerated.
587         generated/matmul_i4.c: Regenerated.
588         generated/matmul_i8.c: Regenerated.
589         generated/matmul_l4.c: Regenerated.
590         generated/matmul_l8.c: Regenerated.
591         generated/matmul_r4.c: Regenerated.
592         generated/matmul_r8.c: Regenerated.
593         generated/maxloc0_4_i4.c: Regenerated.
594         generated/maxloc0_4_i8.c: Regenerated.
595         generated/maxloc0_4_r4.c: Regenerated.
596         generated/maxloc0_4_r8.c: Regenerated.
597         generated/maxloc0_8_i4.c: Regenerated.
598         generated/maxloc0_8_i8.c: Regenerated.
599         generated/maxloc0_8_r4.c: Regenerated.
600         generated/maxloc0_8_r8.c: Regenerated.
601         generated/maxloc1_4_i4.c: Regenerated.
602         generated/maxloc1_4_i8.c: Regenerated.
603         generated/maxloc1_4_r4.c: Regenerated.
604         generated/maxloc1_4_r8.c: Regenerated.
605         generated/maxloc1_8_i4.c: Regenerated.
606         generated/maxloc1_8_i8.c: Regenerated.
607         generated/maxloc1_8_r4.c: Regenerated.
608         generated/maxloc1_8_r8.c: Regenerated.
609         generated/maxval_i4.c: Regenerated.
610         generated/maxval_i8.c: Regenerated.
611         generated/maxval_r4.c: Regenerated.
612         generated/maxval_r8.c: Regenerated.
613         generated/minloc0_4_i4.c: Regenerated.
614         generated/minloc0_4_i8.c: Regenerated.
615         generated/minloc0_4_r4.c: Regenerated.
616         generated/minloc0_4_r8.c: Regenerated.
617         generated/minloc0_8_i4.c: Regenerated.
618         generated/minloc0_8_i8.c: Regenerated.
619         generated/minloc0_8_r4.c: Regenerated.
620         generated/minloc0_8_r8.c: Regenerated.
621         generated/minloc1_4_i4.c: Regenerated.
622         generated/minloc1_4_i8.c: Regenerated.
623         generated/minloc1_4_r4.c: Regenerated.
624         generated/minloc1_4_r8.c: Regenerated.
625         generated/minloc1_8_i4.c: Regenerated.
626         generated/minloc1_8_i8.c: Regenerated.
627         generated/minloc1_8_r4.c: Regenerated.
628         generated/minloc1_8_r8.c: Regenerated.
629         generated/minval_i4.c: Regenerated.
630         generated/minval_i8.c: Regenerated.
631         generated/minval_r4.c: Regenerated.
632         generated/minval_r8.c: Regenerated.
633         generated/nearest_r4.c: Regenerated.
634         generated/nearest_r8.c: Regenerated.
635         generated/pow_c4_i4.c: Regenerated.
636         generated/pow_c4_i8.c: Regenerated.
637         generated/pow_c8_i4.c: Regenerated.
638         generated/pow_c8_i8.c: Regenerated.
639         generated/pow_i4_i4.c: Regenerated.
640         generated/pow_i4_i8.c: Regenerated.
641         generated/pow_i8_i4.c: Regenerated.
642         generated/pow_i8_i8.c: Regenerated.
643         generated/pow_r4_i4.c: Regenerated.
644         generated/pow_r4_i8.c: Regenerated.
645         generated/pow_r8_i4.c: Regenerated.
646         generated/pow_r8_i8.c: Regenerated.
647         generated/product_c4.c: Regenerated.
648         generated/product_c8.c: Regenerated.
649         generated/product_i4.c: Regenerated.
650         generated/product_i8.c: Regenerated.
651         generated/product_r4.c: Regenerated.
652         generated/product_r8.c: Regenerated.
653         generated/reshape_i4.c: Regenerated.
654         generated/reshape_i8.c: Regenerated.
655         generated/set_exponent_r4.c: Regenerated.
656         generated/set_exponent_r8.c: Regenerated.
657         generated/shape_i4.c: Regenerated.
658         generated/shape_i8.c: Regenerated.
659         generated/sum_c4.c: Regenerated.
660         generated/sum_c8.c: Regenerated.
661         generated/sum_i4.c: Regenerated.
662         generated/sum_i8.c: Regenerated.
663         generated/sum_r4.c: Regenerated.
664         generated/sum_r8.c: Regenerated.
665         generated/transpose_i4.c: Regenerated.
666         generated/transpose_i8.c: Regenerated.
667         generated/trig_c4.c: Regenerated.
668         generated/trig_c8.c: Regenerated.
669
670 2005-01-07  Bud Davis  <bdavis9659@comcast.net>
671
672         PR fortran/18398
673         * transfer.c (next_record_r): always skip the
674         eol search if it was found during sf_read.
675
676 2004-12-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
677
678         * libgfortran/libgfortran.h (GFC_UINTEGER_1, GFC_UINTEGER_2):
679         Define.
680         * intrinsics/ishftc.c: Update copyright years.
681         (ishftc8): Change 'shift' and 'size' to GFC_INTEGER_4.
682         * intrinsics/mvbits.c: Correct non-ASCII character in my name.
683         Add implementations for GFC_INTEGER_1 and GFC_INTEGER_2.
684
685 2004-12-23  Bud Davis  <bdavis9659@comcast.net>
686
687         PR fortran/19071
688         * io/tranfer.c (formatted_transfer): moved check for
689         format reversion inside the processing loop.
690
691 2004-12-19  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
692
693         PR libfortran/19074
694         * libgfortran.h (itoa): Rename to gfc_itoa.
695         * io/write.c (itoa): Same.
696         * runtime/environ.c (itoa): Same.
697         * runtime/error.c (itoa): Same.
698
699 2004-12-15  Bud Davis  <bdavis9659@comcast.net>
700             Steven G. Kargl  <kargls@comcast.net>
701
702         PR fortran/17597
703         * io/list_read.c (read_real): do not push back a comma when
704         it delimits a real value without a decimal point
705
706 2004-12-14  Steve Ellcey  <sje@cup.hp.com>
707
708         * libgfortran/io/transfer.c (us_read): Use memcpy/memset
709         instead of assignment to fill unaligned buffer.
710         (us_write): Ditto.
711         (next_record_w): Ditto.
712
713 2004-12-14  Steven G. Kargl  <kargls@comcast.net>
714
715         PR libfortran/18966
716         * gfortran.h: typedef GFC_INTEGER_1 and GFC_INTEGER_2
717         * intrinsics/cshift0.c (cshift0_1,cshift0_2): New functions.
718         * intrinsics/eoshift0.c (eoshift0_1,eoshift0_2): New functions.
719         * intrinsics/eoshift2.c (eoshift2_1,eoshift2_2): New functions.
720
721 2004-12-13  David Edelsohn  <edelsohn@gnu.org>
722
723         * io/transfer.c (read_sf): Change bitwise "and" to logical "and".
724
725 2004-12-12  Richard Henderson  <rth@redhat.com>
726
727         * intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
728         intrinsics/pack_generic.c, intrinsics/reshape_generic.c,
729         intrinsics/spread_generic.c, intrinsics/transpose_generic.c,
730         intrinsics/unpack_generic.c, m4/cshift1.m4, m4/dotprod.m4,
731         m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4, m4/eoshift3.m4,
732         m4/iforeach.m4, m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4,
733         m4/reshape.m4, m4/shape.m4, m4/transpose.m4: Use standard prefix
734         instead of "__".
735         * generated/*: Rebuild.
736
737 2004-12-12  Richard Henderson  <rth@redhat.com>
738
739         * acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY): New.
740         (LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT): New.
741         (LIBGFOR_CHECK_ATTRIBUTE_ALIAS): New.
742         * configure.ac: Use them.
743         * configure, config.h.in, aclocal.m4: Rebuild.
744         * libgfortran.h (prefix): Remove.
745         (PREFIX, IPREFIX): New.
746         (sym_rename, sym_rename1, sym_rename2): New.
747         (internal_proto, export_proto, export_proto_np): New.
748         (iexport_proto, iexport): New.
749         (iexport_data_proto, iexport_data): New.
750         * intrinsics/abort.c, intrinsics/args.c, intrinsics/associated.c,
751         intrinsics/cpu_time.c, intrinsics/cshift0.c,
752         intrinsics/date_and_time.c, intrinsics/env.c, intrinsics/eoshift0.c,
753         intrinsics/eoshift2.c, intrinsics/etime.c, intrinsics/exit.c,
754         intrinsics/flush.c, intrinsics/fnum.c, intrinsics/getXid.c,
755         intrinsics/getcwd.c, intrinsics/ishftc.c, intrinsics/mvbits.c,
756         intrinsics/pack_generic.c, intrinsics/rand.c, intrinsics/random.c,
757         intrinsics/reshape_generic.c, intrinsics/size.c,
758         intrinsics/spread_generic.c, intrinsics/stat.c,
759         intrinsics/string_intrinsics.c, intrinsics/system.c,
760         intrinsics/system_clock.c, intrinsics/transpose_generic.c,
761         intrinsics/umask.c, intrinsics/unlink.c, intrinsics/unpack_generic.c,
762         io/backspace.c, io/close.c, io/endfile.c, io/inquire.c, io/io.h,
763         io/open.c, io/rewind.c, io/transfer.c, libgfortran.h, m4/cshift1.m4,
764         m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4,
765         m4/eoshift3.m4, m4/exponent.m4, m4/fraction.m4, m4/iforeach.m4,
766         m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/nearest.m4,
767         m4/pow.m4, m4/reshape.m4, m4/set_exponent.m4, m4/shape.m4,
768         m4/transpose.m4, runtime/environ.c, runtime/error.c,
769         runtime/in_pack_generic.c, runtime/in_unpack_generic.c,
770         runtime/main.c, runtime/memory.c, runtime/pause.c, runtime/select.c,
771         runtime/stop.c: Use them to mark symbols internal or external.
772         * generated/*: Rebuild.
773
774 2004-12-09  David Edelsohn  <edelsohn@gnu.org>
775
776         PR bootstrap/18895
777         Revert 2004-12-07 change.
778         * Makefile.am (AM_MAKEFLAGS): Delete.
779         * Makefile.in: Regenerate.
780
781 2004-12-07  Steve Ellcey  <sje@cup.hp.com>
782
783         * libgfortran/Makefile.am (AM_MAKEFLAGS): New.
784         * libgfortran/Makefile.in: Regenerate
785
786 2004-12-07  Steve Ellcey  <sje@cup.hp.com>
787
788         * io/io.h (open_external): Change prototype.
789         * io/unix.c (regular_file): Change prototype and set flags->action if
790         needed.
791         (open_external): Ditto.
792         * io/open.c (new_unit): Let open_external set flags->action.
793
794 2004-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
795
796         * configure.ac: Check for ieeefp.h.  Check for fabsf in libm.
797         * configure: Regenerate.
798         * config.h.in: Likewise.
799         * c99_protos.h: New file.
800         * libgfortran.h: Include c99_protos.h and conditionally ieeefp.h.
801         * intrinsics/c99_functions.c (fabsf): New function.
802
803 2004-12-06  Richard Henderson  <rth@redhat.com>
804
805         * intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
806         intrinsics/pack_generic.c, intrinsics/string_intrinsics.c,
807         intrinsics/transpose_generic.c, m4/ifunction.m4, m4/matmul.m4,
808         m4/matmull.m4, m4/transpose.m4: Use internal_malloc_size instead
809         of internal_malloc.
810         * generated/*: Rebuild.
811
812 2004-12-06  Richard Henderson  <rth@redhat.com>
813
814         * intrinsics/c99_functions.c, intrinsics/eoshift0.c,
815         intrinsics/eoshift2.c, intrinsics/exit.c, intrinsics/flush.c,
816         intrinsics/ishftc.c, intrinsics/mvbits.c, intrinsics/pack_generic.c,
817         intrinsics/random.c, intrinsics/reshape_generic.c, intrinsics/size.c,
818         intrinsics/spread_generic.c, intrinsics/stat.c,
819         intrinsics/string_intrinsics.c, intrinsics/system_clock.c,
820         intrinsics/transpose_generic.c, intrinsics/unlink.c,
821         intrinsics/unpack_generic.c, io/backspace.c, io/format.c,
822         io/list_read.c, io/lock.c, io/open.c, io/transfer.c, io/unix.c,
823         io/write.c, runtime/environ.c, runtime/error.c,
824         runtime/in_pack_generic.c, runtime/in_unpack_generic.c, runtime/main.c,
825         runtime/memory.c, runtime/pause.c, runtime/stop.c,
826         runtime/string.c: Whitespace fixes.
827
828 2004-12-06  Richard Henderson  <rth@redhat.com>
829
830         * Makefile.am: Generate all m4 output under $(srcdir).
831         * Makefile.in: Regenerate.
832
833 2004-12-02  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
834
835         PR fortran/18710
836         * io/transfer.c (unformatted_read, unformatted_write): width of
837         a COMPLEX is twice its kind.
838
839 2004-12-02  Richard Sandiford  <rsandifo@redhat.com>
840
841         * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
842         * configure, aclocal.m4, Makefile.in: Regenerate.
843
844 2004-12-02  Bud Davis  <bdavis9659@comcast.net>
845
846         PR libfortran/18284
847         * io/unix.c (fd_alloc_w_at): Update file_length when extending.
848         * io/backspace.c (formatted_backspace): Reset endfile after backspace.
849
850 2004-12-02  Bud Davis  <bdavis9659@comcast.net>
851
852         * io/inquire.c (inquire_via_unit): do not allow a direct access
853         file to be opened for sequential I/O.
854
855 2004-12-02  Steven G. Kargl  <kargls@comcast.net>
856         Paul Brook  <paul@codesourcery.com>
857
858         * intrinsics/flush.c: New file.
859         * intrinsics/fnum.c: ditto
860         * intrinsics/stat.c: ditto
861         * io/io.h (unit_to_fd): Add prototype.
862         * io/unix.c (unit_to_fd): New function.
863         * configure.ac: Add test for members of struct stat.  Check for
864         sys/types.h and sys/stat.h
865         * Makefile.am: Add intrinsics/{flush.c,fnum.c,stat.c}
866         * configure.in: Regenerate.
867         * config.h.in: Regenerate.
868         * Makefile.in: Regenerate.
869
870 2004-12-01  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
871
872         * Makefile.am (AM_CPPFLAGS): Use -iquote instead of -I.
873
874 2004-11-28  Bud Davis  <bdavis9659@comcast.net>
875
876         * io/unix.c (mmap_alloc_w_a): check for a write to a location
877         less than the mapped area.
878
879 2004-11-27  Bud Davis  <bdavis9659@comcast.net>
880
881         PR fortran/18364
882         *  io/endfile.c (st_endfile): flush the stream before truncating.
883
884 2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
885
886         * configure: Regenerate for libtool change.
887
888 2004-11-22  Steven Bosscher  <stevenb@suse.de>
889
890         PR libfortran/15960
891         * configure.ac: Check for finite in libm.
892         * libgfortran.h: Define isfinite macro if not defined.
893         * intrinsics/c99_functions.c: Use defined(fpclassify) instead of
894         HAVE_FPCLASSIFY.
895         * io/write.c (write_float): Use isfinite instead of finite.
896         * configure, config.h.in: Rebuilt.
897
898 2004-11-20  Roger Sayle  <roger@eyesopen.com>
899
900         * io/write.c (write_float, list_formatted_write): Fix indentation.
901
902 2004-11-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
903
904         PR target/16135
905         * acinclude.m4 (LIBGFOR_TARGET_ILP32): New check.
906         * configure.ac: Include LIBGFOR_TARGET_ILP32.
907         * configure: Regenerate.
908         * config.h.in: Likewise.
909         * libgfortran.h: Provide default definitions for C99 types
910         on ILP32 targets that don't have them.
911
912         PR target/17999
913         * configure.ac: Check for snprintf.
914         * configure: Regenerate.
915         * config.h.in: Likewise.
916         * intrinsics/date_and_time.c (date_and_time): Do not
917         use snprinf if it is not available.
918         * io/write.c (output_float): Likewise.
919
920 2004-11-20  Steven G. Kargl  <kargls@comcast.net>
921
922         * Makefile.am: Add intrinsics/{umask.c,unlink.c,exit.c}
923         * Makefile.in: Regenerated
924         * intrinsics/umask.c: New file
925         * intrinsics/unlink.c: ditto
926         * intrinsics/exit.c: ditto
927
928 2004-11-18  Victor Leikehman  <lei@il.ibm.com>
929
930         * m4/matmul.m4: Loops reordered to improve cache behavior.
931         * generated/matmul_??.c: Regenerated.
932
933 2004-11-10  Paul Brook  <paul@codesourcery.com>
934
935         PR fortran/18218
936         * configure.ac: Check for strtof.
937         * configure: Regenerate.
938         * config.h.in: Regenerate.
939         * io/read.c (convert_real): Use strtof if available.
940         (convert_precision_real): Remove.
941         (read_f): Avoid poor exponentiation algorithm.
942
943 2004-11-05  Andreas Schwab  <schwab@suse.de>
944
945         * configure.ac: Use AC_PROG_FC, FC and FCFLAGS instead of
946         AC_PROG_F77, F77 and FFLAGS.
947         * Makefile.am (selected_int_kind.inc, selected_real_kind.inc): Use
948         FCCOMPILE instead of F77COMPILE.
949         * configure, Makefile.in: Regenerate.
950
951 2004-11-05  Kelley Cook  <kcook@gcc.gnu.org>
952
953         * acinclude.m4: Properly quote AC_CACHE_CHECK.
954         * Makefile.am: Add in ACLOCAL_AMFLAGS.
955         * aclocal.m4, configure, Makefile.in: Regenerate.
956
957 2004-10-30  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
958
959         * config.h.in: Regenerate.
960         * configure: Regenerate.
961         * configure.ac (AC_CHECK_FUNCS): Add mkstemp.
962         * io/unix.c (S_IRGRP): Define if undefined.
963         (S_IWGRP): Same.
964         (S_IROTH): Same.
965         (S_IWOTH): Same.
966         (tempfile): Use mktemp if mkstemp missing, fix typos.
967
968 2004-10-30  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
969
970         *  intrinsics/system.c ("libgfortran.h"): Move after system headers.
971
972 2004-10-30  Canqun Yang  <canqun@nudt.edu.cn>
973
974         * intrinsics/rand.c (irand): Handle NULL argument.
975
976 2004-10-07  Paul Brook  <paul@codesourcery.com>
977
978         * io/transfer.c (finalize_transfer): Free internal streams.
979         * io/unix.c (mem_close): Free stream object.
980
981 2004-10-07  Paul Brook  <paul@codesourcery.com>
982
983         * intrinsics/string_intrinsics.c (string_verify): Fix off by one
984         error.
985
986 2004-10-06  Paul Brook  <paul@codesourcery.com>
987
988         PR libfortran/17709
989         * io/transfer.c (data_transfer_init): Reset sf_seen_eor.
990
991 2004-10-04  Andrew Pinski  <pinskia@physics.uc.edu>
992
993         * intrinsics/mvbits.c: Commit the file.
994
995 2004-10-04  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
996
997         PR fortran/17283
998         * intrinsics/pack_generic.c (__pack): Allocate memory for return array
999         if not done by caller.
1000         (__pack_s): New function.
1001         * runtime/memory.c (internal_malloc, internal_malloc64): Allow
1002         allocating zero memory.
1003
1004         PR fortran/17631
1005         * Makefile.am (gfor_helper_src): Add intrinsics/mvbits.h.
1006         * Makefile.in: Regenerate.
1007         * intrinsics/mvbits.h: New file.
1008
1009         PR fortran/17776
1010         * intrinsics/system.c: New file.
1011         * Makefile.am: Add dependency for the new file.
1012         * Makefile.in: Regenerate.
1013
1014 2004-10-04  Paul Brook  <paul@codesourcery.com>
1015         Bud Davis  <bdavis9659@comcast.net>
1016
1017         PR fortran/17706
1018         PR fortran/16434
1019         * io/format.c (parse_format_list): Set repeat count for S, SP, SS,
1020         BN and BZ formats.
1021         * io/write.c (output_float): Don't output minus zero.
1022
1023 2004-10-03  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
1024
1025         * intrinsics/abort.c ("libgfortran.h"): Move.
1026         * intrinsics/date_and_time.c ("libgfortran.h"): Same.
1027         * intrinsics/write.c ("libgfortran.h"): Same.
1028
1029 2004-09-26  Tobias Schlueter  <tobis.schlueter@physik.uni-muenchen.de>
1030
1031         PR libfortran/16137
1032         * config.h.in (HAVE_POWF): Undefine.
1033         * configure.ac: Check for 'powf' in library.
1034         * configure: Regenerate.
1035         * intrinsics/c99_functions.c (powf): New function.
1036
1037 2004-09-24  Tobias Schlueter  <tobis.schlueter@physik.uni-muenchen.de>
1038
1039         * intrinsics/etime.c (etime_): New function.
1040
1041 2004-09-21  Steven G. Kargl  <kargls@comcast.net>
1042
1043         * libgfortran.h: define gfc_alloca()
1044         * intrinsics/env.c (getenv, get_environment_variable_i4): Use it.
1045
1046 2004-09-21  Bud Davis  <bdavis9659@comcast.net>
1047
1048         PR fortran/17286
1049         * io/list_read.c (namelist_read): ignore spaces after
1050         the '=' for namelist reads.
1051
1052 2004-09-15  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
1053
1054         * config.h.in: Regenerate.
1055         * configure: Regenerate.
1056         * configure.ac (AC_CHECK_HEADERS): Check for sys/mman.h.
1057         * unix.c: Include stdio.h.
1058         (HAVE_SYS_MMAN_H): Check.
1059         (PROT_READ, PROT_WRITE): Provide default definitions.
1060
1061 2004-09-15  Steven G. Kargl  <kargls@comcast.net>
1062
1063         * intrincics/getcwd.c: New file.
1064         * Makefile.am: Add getcwd.c.
1065         * Makefile.in: Regenerated.
1066
1067 2004-09-15  Steven G. Kargl  <kargls@comcast.net>
1068         Paul Brook  <paul@codesourcery.com>
1069
1070         * intrinsics/env.c (getenv, get_environmental_variable): Remove
1071         trailing white space.  Use alloca.  Honour trim_name.
1072
1073 2004-09-13  Bud Davis  <bdavis9659@comcast.net>
1074
1075         PR fortran/17090
1076
1077         * io/list_read.c (list_formatted_read): Handle trailing spaces
1078         at end of line.
1079
1080 2004-09-06  Steven G. Kargl  <kargls@comcast.net>
1081
1082         * io/write.c (output_float): Typo in comment.  Remove debugging
1083         printf.  Fix format for FP of form 1e10.
1084
1085 2004-09-03  Richard Henderson  <rth@redhat.com>
1086
1087         * intrinsics/cshift0.c (DEF_COPY_LOOP, copy_loop_int, copy_loop_long,
1088         copy_loop_double, copy_loop_ldouble): New.
1089         (__cshift0): Make shift type ssize_t.  Use % operator instead of
1090         div.  Use specialized versions of copy loop depending on the shape.
1091
1092 2004-09-02  Paul Brook  <paul@codesourcery.com>
1093
1094         * io/format.c (parse_format_list): Set repeat count for P descriptors.
1095         * write.c (output_float): Fix condition.  Correctly handle nonzero
1096         scale factor.
1097
1098 2004-09-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
1099
1100         * mk-sik-inc.sh: Use a temporary string instead of 'echo -n'.
1101         * mk-srk-inc.sh: Likewise.
1102
1103 2004-09-01  Paul Brook  <paul@codesourcery.com>
1104
1105         * runtime/error.c (generate_error): Set both iostat and
1106         library_return.
1107
1108 2004-08-31  Paul Brook  <paul@codesourcery.com>
1109
1110         PR libfortran/16805
1111         * io/list_read.c (next_char): Don't signal EOF for internal files.
1112         * io/unix.c (mem_alloc_r_at): Don't return NULL for incomplete reads.
1113
1114 2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1115
1116         * io/unit.c: Separate copyright years by ','.
1117         (compare, insert_unit, delete_unit, is_internal_unit, close_units):
1118         Remove blank line in beginning of function.
1119         (get_unit): Simplify code.
1120
1121 2004-08-31  Paul Brook  <paul@codesourcery.com>
1122
1123         * io/unit.c (get_unit): Remove superfluous if.
1124
1125 2004-08-31  Paul Brook  <paul@codesourcery.com>
1126
1127         * io/transfer.c (read_sf): Rename uinty to readlen.  Detect EOF.
1128         (finalize_transfer): Move setjmp after namlist IO.
1129         * io/unix.c (mem_alloc_r_at): Calculate remaining length correctly.
1130
1131 2004-08-31  Paul Brook  <paul@codesourcery.com>
1132
1133         * list_read.c (eat_separator): Set at_eo when a '/' is seen.
1134
1135 2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1136
1137         * libgfortran.h: Replace 'gfc_strlen_type' by
1138         'gfc_charlen_type'. Update comment accordingly.
1139         * intrinsics/args.c, intrinsics/env.c, io/io.h, io/transfer.c:
1140         Replace all occurences of 'gfc_strlen_type' by 'gfc_charlen_type'.
1141
1142 2004-08-31  Paul Brook  <paul@codesourcery.com>
1143
1144         * libgfortran.h: Add comments.
1145
1146 2004-08-30  Richard Henderson  <rth@redhat.com>
1147
1148         * Makefile.am (gfor_helper_src): Split selected_kind.f90.
1149         (gfor_built_src): Add selected_int_kind.inc selected_real_kind.inc.
1150         (selected_int_kind.inc selected_real_kind.inc): New rules.
1151         * Makefile.in: Regenerate.
1152         * mk-sik-inc.sh, mk-srk-inc.sh: New files.
1153         * intrinsics/selected_int_kind.f90: Split from selected_kind.f90,
1154         include table of detected kinds.
1155         * intrinsics/selected_real_kind.f90: Similarly.
1156
1157 2004-08-29  Steven G. Kargl  <kargls@comcast.net>
1158         Paul Brook  <paul@codesourcery.com>
1159
1160         * intrinsics/bessel.c: New file.
1161         * intrinsics/erf.c: New file.
1162         * Makefie.am: Add intrinsics/bessel.c and intrinsics/erf.c.
1163         * configure.ac: Test for C99 Bessel and Error functions.
1164         * Makefile.in: Regenerate.
1165         * config.h.in: Regenerate.
1166         * configure: Regenerate.
1167
1168 2004-08-29  Steven G. Kargl  <kargls@comcast.net>
1169         Paul Brook  <paul@codesourcery.com>
1170
1171         * Makefile.am: Add intrinsics/getXid.c.
1172         * configure.ac: Add tests for get{g,p,u}id.
1173         * config.h.in: Regenerate.
1174         * Makefile.in: Regenerate.
1175         * configure: Regenerate.
1176
1177 2004-08-28  Paul Brook  <paul@codesourcery.com>
1178
1179         PR libfortran/17195
1180         * libgfortran.h (rtoa): Remove prototype.
1181         * runtime/error.c (rtoa): Remove.
1182         * io/write.c (calculate_G_format): Don't add blanks if E format is
1183         used.  Add correct number of blanks when exponent width is specified.
1184         (output_float): Rewrite.
1185
1186 2004-08-27  Paul Brook  <paul@codesourcery.com>
1187
1188         * io/rewind.c (st_rewind): Reset unit to read mode.
1189
1190 2004-08-27  Bud Davis  <bdavis9659@comcast.net>
1191
1192         PR fortran/16597
1193         * io/io.h: created typedef for unit_mode.
1194         * io/io.h (gfc_unit): added mode to unit structure.
1195         * io/transfer.c (data_transfer_init): flush if a write then
1196         read is done on a unit (direct access files).
1197         * io/rewind.c (st_rewind): Used unit mode instead of global.
1198
1199 2004-08-24  Bud Davis  <bdavis9659@comcast.net>
1200
1201         PR fortran/17143
1202         * runtime/error.c (itoa): keep from overflowing during
1203         mod operation by using unsigned variable.
1204
1205 2004-08-24  Bud Davis  <bdavis9659@comcast.net>
1206
1207         PR fortran/17164
1208         * runtime/string_intrinsics.c (string_index):check for
1209         substring longer than string.
1210
1211 2004-08-24  David Edelsohn  <edelsohn@gnu.org>
1212
1213         * Makefile.am (libgfortran_la_LDFLAGS): Add -lm.
1214         * Makefile.in: Rebuilt.
1215
1216 2004-08-23  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1217
1218         * io/io.h, io/list_read.c, io/open.c, io/transfer.c, io/write.c:
1219         Fix formatting issues, update copyright years.
1220
1221 2004-08-21  Bud Davis  <bdavis9659@comcast.net>
1222
1223         PR 16908
1224         * io/transfer.c (next_record_w): Do not blank pad.
1225         * io/transfer.c (next_record): Take into account partial records.
1226
1227 2004-08-18  Victor Leikehman  <lei@il.ibm.com>
1228
1229         PR fortran/13278
1230         * io/transfer.c (st_set_nml_var)
1231         * io/write.c (namelist_write): Allow var_name and var_name_len to be
1232         null. For strings, use string_length field instead of len.
1233         * io/io.h (struct namelist_type): New field string_length.
1234         (st_set_nml_var_char): New argument string_length.
1235
1236 2004-08-13  Bud Davis  <bdavis9659@comcast.net>
1237
1238         PR gfortran/16935
1239         * io/open.c (st_open): use flags instead of the unit structure.
1240
1241 2004-08-10  Victor Leikehman  <lei@il.ibm.com>
1242
1243         * io/list_read.c (namelist_read): Convert variable names
1244         to lower case, so that mixed-case names are recognized.
1245         Don't read beyond terminating slash.
1246
1247 2004-08-09  Richard Henderson  <rth@redhat.com>
1248             Roger Sayle  <roger@eyesopen.com>
1249
1250         * intrinsics/c99_functions.c (nextafterf): New implementation that
1251         works correctly with denormalized numbers.
1252
1253 2004-08-09  Victor Leikehman  <lei@il.ibm.com>
1254
1255         * m4/matmul.m4, m4/matmull.m4, intrinsics/eoshift0.c,
1256         intrinsics/eoshift2.c, intrinsics/transpose_generic.c:
1257         Allocate space if return value has NULL in its data field.
1258         * generated/*.c: Regenerate.
1259
1260 2004-08-06  Janne Blomqvist  <jblomqvi@cc.hut.fi>
1261
1262         * intrinsics/env.c: New file.
1263         * Makefile.am: Add env.c to build.
1264         * Makefile.in: Regenerate.
1265
1266 2004-08-05  Victor Leikehman  <lei@il.ibm.com>
1267
1268         PR libgfortran/16704
1269         * io/read.c (read_radix): Understand letters f and F as hex digits.
1270
1271 2004-08-04  Victor Leikehman  <lei@il.ibm.com>
1272
1273         * libgfortran.h (array_t, size0) New declarations.
1274         * m4/ifunction.m4, m4/transpose.m4, intrinsics/cshift0.c: Allocate
1275         space if return value descriptor has NULL in its data field,
1276         and initialize bounds and stride.
1277         * intrinsics/size.c (array_t, size0): Declarations moved to
1278         libgfortran.h.
1279         * generated/*.c: Regenerate.
1280
1281 2004-08-03  Roger Sayle  <roger@eyesopen.com>
1282
1283         PR libgfortran/16137
1284         * configure.ac: Add tests for acosf, asinf, atan2f, atanf, ceilf,
1285         copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
1286         scalbnf, sinf, sinhf, sqrtf, tanf and tanhf in libm.
1287         * config.h.in: Regenerate.
1288         * configure: Regenerate.
1289
1290         * instrinsics/c99_functions.c (acosf, asinf, atan2f, atanf, ceilf,
1291         copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
1292         nextafterf, scalbnf, sinf, sinhf, sqrtf, tanf, tanhf): New stub
1293         implementations for targets that don't support C99 float functions.
1294
1295 2004-08-01  Roger Sayle  <roger@eyesopen.com>
1296
1297         * io/write.c (write_float): Use the slightly more portable isnan
1298         in preference to isinf.
1299
1300 2004-07-18  Bud Davis  <bdavis9659@comcast.net>
1301
1302         * configure.ac: Add check for LFS support.
1303         * configure: Regenerate
1304
1305 2004-07-11  Paul Brook  <paul@codesourcery.com>
1306
1307         PR fortran/16303
1308         * m4/cexp.m4 (carg): Return -pi to pi.
1309         * generated/exp_c?.c: Regenerate.
1310
1311 2004-07-08  Andreas Krebbel  <krebbel1@de.ibm.com>
1312
1313         PR fortran/16291
1314         * libgfortran/io/write.c: (write_float): Added length check.
1315         Remove pointless memset calls.
1316
1317 2004-07-04  Bud Davis  <bdavis9659@comcast.net>
1318             Paul Brook  <paul@codesourcery.com>
1319
1320         PR fortran/15472
1321         * io/transfer.c(us_write): set recl for seq unform writes to max size.
1322         * io/transfer.c(data_transfer_init): handle un-opened seq unform unit.
1323         * io/unix.c(fd_alloc_w_at): handle requests at start, fd_flush at
1324         right time.
1325         * io/unix.c(is_seekable): set based upon the file/device, not the
1326         method being used to access it (fd or mmap).
1327         * io/unix.c(fd_flush): don't set file_size if !seekable.
1328         * io/unix.c(fd_truncate: ditto.
1329
1330 2004-07-04  Janne Blomqvist  <jblomqvi@cc.hut.fi>
1331         Paul Brook  <paul@codesourcery.com>
1332
1333         PR fortran/15280
1334         PR fortran/15665
1335         * libgfortran.h (gfc_strlen_type): Define.
1336         * intrinsics/args.c (getarg): Rename ...
1337         (getarg_i4): ... to this.
1338         (getarg_i8, get_command_argument_i4, get_command_argument_i8,
1339         get_command_i4, get_command_i8): New functions.
1340
1341 2004-07-04  Matthias Klose  <doko@debian.org>
1342
1343         * libtool-version: New.
1344         * Makefile.am (libgfortran_la_LDFLAGS): Use -version-info for soname.
1345         * Makefile.in: Regenerate.
1346         * configure.ac: Remove libtool_VERSION macro
1347         * configure: Regenerate
1348
1349 2004-06-30  Steve Kargl  <sgk@troutmask.apl.washington.edu>
1350             Steven Bosscher  <stevenb@suse.de>
1351
1352         * intrinsics/rand.c (rand): Wrap the irand() call from the previous
1353         commit in prefix.
1354
1355 2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1356         Paul Brook  <paul@codesourcery.com>
1357
1358         * runtime/normalize.c (normalize_r4_i4, normalize_r8_i8): Fix
1359         comments.
1360         * intrinsics/rand.c (rand): Call irand() in call to normalize_r4_i4.
1361
1362 2004-06-27  Bud Davis  <bdavis9659@comcast.net>
1363
1364         PR gfortran/12839
1365         * io/write.c (write_float): check signbit for Infinity.
1366
1367 2004-06-26  Bud Davis  <bdavis9659@comcast.net>
1368
1369         PR gfortran/16196
1370         * unix.c(regular_file): create file if it does not exist.
1371
1372 2004-06-24  Andrew Pinski  <apinski@apple.com>
1373
1374         * configure.ac: Remove check for libmx.
1375         * configure: Regenerate.
1376
1377 2004-06-22  Janne Blomqvist  <jblomqvi@cc.hut.fi>
1378
1379         PR fortran/15750
1380         * inquire.c (st_inquire): Add comment
1381         * io.h (st_parameter): Add iolength.
1382         (st_iolength, st_iolength_done): Declare.
1383         * transfer.c (iolength_transfer, iolength_transfer_init,
1384         st_iolength, st_iolength_done): New functions.
1385
1386 2004-06-21  Steven G. Kargl  <kargls@comcast.net>
1387
1388         * etime.c (etime_sub): Remove array rank check;
1389         Add check for sufficient space.
1390
1391 2004-06-19  Bud Davis  <bdavis9659@comcast.net>
1392
1393         PR gfortran/16080
1394         * io/list_read.c(set_value): fixed spelling.
1395
1396 2004-06-19  Bud Davis  <bdavis9659@comcast.net>
1397
1398         PR gfortran/16080
1399         * io/list_read.c(set_value): don't copy if the string is null.
1400
1401 2004-06-14  Bud Davis  <bdavis9659@comcast.net>
1402
1403         PR gfortran/15292
1404         * intrinsics/c99_functions.c: Use fpclassify if it exists.
1405
1406 2004-06-13  Paul Brook  <paul@codesourcery.com>
1407
1408         * Makefile.am (gfor_helper_src): Add runtime/normalize.f90.
1409         * configure.ac: Add checks for nextafter and nextafterf.
1410         * Makefile.in, config.h.in, configure: Regenerate.
1411         * libgfortran.h (normalize_r4_i4, normalize_r8_i8): Declare.
1412         * intrinsics/rand.c (rand): Use normalize_r4_i4.
1413         * intrinsics/random.c (random_r4): Use normalize_r4_i4.
1414         (random_r8): Use normalize_r8_i8.
1415         * runtime/normalize.c: New file.
1416
1417 2004-06-13  Steven G. Kargl  <kargls@comcast.net>
1418             Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1419
1420         * random.c: Fix several spelling and formatting mistakes in
1421         comments.
1422         (random_r8): Fix loop to make random numbers range in [0,1(.
1423
1424
1425 2004-06-13  Steven G. Kargl  <kargls@comcast.net>
1426
1427         * random.c (random_r4): Burn a random number.
1428         (random_r8): fix infinite loop.
1429
1430 2004-06-12  Bud Davis  <bdavis9659@comcast.net>
1431       Steve Kargl  <sgk@troutmask.apl.washington.edu>
1432
1433         PR gfortran/15292
1434         * intrinsics/c99_functions.c: New file.
1435         * Makefile.am: Add new file.
1436         * configure.ac: Added test for round/roundf.
1437         * Makefile.in: Regenerate.
1438         * configure: Regenerate.
1439         * configure.h.in: Regenerate.
1440
1441 2004-06-12  Steven G. Kargl  <kargls@comcast.net>
1442
1443         * Makefile.am: Add rand.c and etime.c
1444         * Makefile.in: Regenerated.
1445         * aclocal.in: Regenerated.
1446         * cpu_time.c (second_sub, second): New functions.
1447         * rand.c (irand, rand, srand): New file.
1448         * etime.c (etime_sub, etime): New file.
1449
1450 2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1451             Steven Bosscher  <stevenb@suse.de>
1452
1453         PR fortran/14923
1454         * intrinsics/date_and_time.c: New file.
1455         * Makefile.am (gfor_helper_src): Add intrinsics/date_and_time.c.
1456         * Makefile.in, aclocal.m4: Regenerate.
1457         * libgfortran.h: Prototype date_and_time().
1458
1459 2004-06-12  Bud Davis  <bdavis9659@comcast.net>
1460
1461         PR fortran/15665
1462         * intrinsics/args.c: Implement GETARG and IARGC.
1463         * Makefile.am: Add it.
1464         * Makefile.in: Regenerate.
1465
1466 2004-06-12  Bud Davis  <bdavis9659@comcast.net>
1467
1468         PR gfortran/12839
1469         * io/write.c(write_float): Format inf and nan IAW F2003.
1470
1471 2004-06-09  Bud Davis  <bdavis9659@comcaste.net>
1472
1473         PR gfortran/14897
1474         * io/transfer.c (formatted_transfer): position is unique
1475          for T and TL edit descriptors.
1476         (data_transfer_init): set record length to size of internal
1477          file.
1478
1479 2004-06-09  Bud Davis  <bdavis9659@comcast.net>
1480
1481         PR gfortran/15755
1482         * io/backspace.c(st_backspace): call correct routine for
1483         formatted and un-formatted units.
1484
1485 2004-05-30  Andreas Jaeger  <aj@suse.de>, Steven Bosscher <stevenb@suse.de>
1486
1487         PR gfortran/11800
1488         * Makefile.am (AM_CPPFLAGS): Renamed from INCLUDES.
1489         (lib_LTLIBRARIES): Rename to ...
1490         (toolexeclib_LTLIBRARIES): this for multilib support.
1491         * configure.in: Rename to ...
1492         * configure.ac: this.  Update to modern autoconf style, enable
1493         multilibs, support --enable-version-specific-runtime-libs.
1494         * Makefile.in: Regenerated.
1495         * configure: Regenerated.
1496         * aclocal.m4: Regenerated.
1497
1498 2004-05-30  Steven G. Kargl  <kargls@comcast.net>
1499
1500         * libgfortran.h (random_seed): Update prototype.
1501         * intrinsics/random.c: Disable old implementation and add new one.
1502
1503 2004-05-30  Andreas Jaeger  <aj@suse.de>
1504
1505         * intrinsics/random.c: Include unistd.h for close and read
1506         prototypes, remove unneeded inclusion of assert.h.
1507
1508         * intrinsics/abort.c: Include stdlib.h for abort prototype, remove
1509         unneeded inclusion of assert.h.
1510
1511 2004-05-27  Tobias Schlueter  <tobias.shclueter@physik.uni-muenchen.de>
1512
1513         PR fortran/15234
1514         * intrinsics/associated.c: Remove enum.
1515         (associated): Replace TRUE/FALSE by 1/0.
1516
1517 2004-05-23  Steven G. Kargl  <kargls@comcast.net>
1518
1519         * random.c (random_seed): Use correct variable.
1520
1521 2004-05-22  Steven G. Kargl  <kargls@comcast.net>
1522
1523         * intrinsics/system_clock: New file.
1524         * Makefile.am: Add intrinsics/system_clock.c.
1525         * Makefile.in: Regenerate.
1526
1527 2004-05-21  Roger Sayle  <roger@eyesopen.com>
1528
1529         * io/format.c (parse_format_list): Allow the comma after a string
1530         literal to be optional.
1531
1532 2004-05-18  Paul Brook  <paul@codesourcery.com>
1533         Feng Wang  <fengwang@nudt.edu.cn>
1534
1535         * Makefile.am (i_pow_c): Set it. Add build rule.
1536         (gfor_built_src): Use it.
1537         (m4_files): add m4/pow.m4.
1538         * Makefile.in: Regenerate.
1539         * m4/pow.m4: New file.
1540         * generated/pow_*.c: Regenerate.
1541
1542 2004-05-18  Paul Brook  <paul@codesourcery.com>
1543
1544         * Makefile.am: Remove references to types.m4.
1545         * m4/iparm.m4: Merge with types.m4.
1546         * m4/types.m4: Remove.
1547         * m4/cshift1.m4, m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4,
1548         m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4, m4/ifunction.m4,
1549         m4/in_pack.m4, m4/in_unpack.m4, m4/iparm.m4, m4/matmul.m4,
1550         m4/matmull.m4, m4/maxloc0.m4, m4/maxloc1.m4, m4/maxval.m4,
1551         m4/minloc0.m4, m4/minloc1.m4, m4/minval.m4, m4/reshape.m4,
1552         m4/shape.m4, m4/specific.m4, m4/specific2.m4, m4/transpose.m4):
1553         Update to use new iparm.m4.
1554         * generated/*.c: Regenerate.
1555
1556 2004-05-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1557
1558         PR fortran/15235
1559         * gfortran.h (offset_t): Rename to ...
1560         (gfc_offset): ... this.
1561         * io/backspace.c (formatted_backspace, unformatted_backspace),
1562         io/io.h (stream, gfc_unit, global_t, file_length, file_position),
1563         transfer.c (us_read, us_write, next_record_r, next_record_w),
1564         io/unit.c (init_units), unix.c (unix_stream, fd_alloc,
1565         fd_alloc_r_at, fd_alloc_w_at, fd_seek, mmap_alloc,
1566         mmap_alloc_r_at, mmap_alloc_w_at, mmap_seek, mem_alloc_r_at,
1567         mem_alloc_w_at, mem_seek, file_length, file_position): Replace all
1568         occurences of offset_t by gfc_offset.
1569
1570 2004-05-16  Paul Brook  <paul@codesourcery.com>
1571
1572         * io/format.c (write_real): Don't include padding in format.
1573
1574 2004-05-16  Paul Brook  <paul@codesourcery.com>
1575
1576         * io/format.c (format_lex): Make c an int.
1577
1578 2004-05-16  Janne Blomqvist  <jblomqvi@cc.hut.fi>
1579         Paul Brook  <paul@codesourcery.com>
1580
1581         * io/write.c (write_logical): Don't print extra blank.
1582         (write_integer): Base field width on kind.
1583         (list_formatted_write): Output initial blank.
1584
1585 2004-05-16  Janne Blomqvist  <jblomqvi@cc.hut.fi>
1586
1587         * io/io.h (flush): Add prototype.
1588         * io/transfer.c (finalize_transfer): Flush partial records.
1589         * io/unix.c (flush): New function.
1590
1591 2004-05-15  Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
1592
1593         PR fortran/15234
1594         * io/io.h (unit_t): Rename to ...
1595         (gfc_unit) ... this.
1596         (unit_root, current_unit, find_file, find_unit, get_unit): Now
1597         of type gfc_unit.
1598         (delete_file, insert_unit, close_unit): Argument now of type
1599         gfc_unit.
1600         * backspace.c (st_backspace), close.c (st_close), endfile.c
1601         (st_endfile), inquire.c (inquire_via_unit, st_inquire), open.c
1602         (test_endfile, edit_modes, new_unit, already_open, st_open),
1603         rewind.c (st_rewind), transfer.c (current_unit), unit.c
1604         (internal_unit, unit_cache, rotate_left, rotate_right, insert,
1605         insert_unit, delete_root, delete_treap, delete_unit, find_unit,
1606         get_unit, init_units, close_unit), unix.c (find_file0,
1607         find_file, delete_file): Replace all occurences of unit_t by
1608         gfc_unit.
1609
1610 2004-05-15  Bud Davis  <bdavis9659@comcast.net>
1611
1612         PR fortran/15311
1613         * io/write.c (write_a): right justify A edit output.
1614
1615 2004-05-14  Bud Davis  <bdavis9659@comcast.net>
1616
1617         PR fortran/15149
1618         * libgfortan.h,intrinsics/random.c: Made random_seed visible.
1619         * runtime/main.c(init): Call random_seed as part of MAIN init.
1620
1621 2004-05-13  Tobias Schlter  <tobias.schlueter@physik.uni-muenchen.de>
1622
1623         * io/format.c: (parse_format_list): No comma is required after
1624         P descriptor.
1625
1626 2004-05-13  Bud Davis  <bdavis9659@comcast.net>
1627
1628         PR fortran/15204
1629         * io/intrinsic/string_intrinsics.c (adjustr): rework logic.
1630
1631 2004-05-06  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1632             Steven Bosscher  <stevenb@suse.de>
1633
1634         PR libfortran/15234
1635         * libgfortran.h: Include <inttypes.h> if available.
1636
1637 2004-05-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1638
1639         * io/unix.c (MAP_FAILED): Define if missing.
1640         (mmap_alloc): Cast MAP_FAILED to char *.
1641         (mmap_open): Likewise.
1642
1643 2004-04-26  Bud Davis  <bdavis9659@comcast.net>
1644
1645         * generated/_abs_i8.f90: New file.
1646         * generated/_abs_c4.f90: New file.
1647         * generated/_abs_c8.f90: New file.
1648         * Makefile.am: Add them.
1649         * Makefile.in: Regenerate.
1650 `
1651 2004-04-26  Bud Davis  <bdavis9659@comcast.net>
1652
1653         PR fortran/14056
1654         * generated/_abs_i4.f90: New file.
1655         * Makefile.am: Add it.
1656         * Makefile.in: Regenerate.
1657
1658 2004-04-25  Bud Davis  <bdavis9659@comcast.net>
1659
1660         PR fortran/14942
1661         * io/list_read.c(list_formatted_read): finish consuming the
1662         spaces and seperators at eoln to get ready for next item.
1663
1664 2004-04-23  Bud Davis  <bdavis9659@comcast.net>
1665
1666         PR fortran/15113
1667         * io/read.c(read_a): Handle field width > destination and no field width.
1668
1669 2004-04-22  Bud Davis  <bdavis9659@comcast.net>
1670
1671         PR fortran/14906
1672         * io/format.c (format_item): gracefully handle a ')'
1673         when it is the first character encountered in the string.
1674
1675 2004-04-11  Bud Davis  <bdavis9659@comcast.net>
1676
1677         PR fortran/14904
1678         * io/transfer.c (next_record): Update last_record when
1679         more than one record is written to a direct access file
1680         with one write statement.
1681
1682 2004-04-11  Bud Davis  <bdavis9659@comcast.net>
1683
1684         PR fortran/14901
1685         * io/transfer.c (next_record_w) : No '\n' if internal.
1686         * io/unix.c (empty_internal_buffer) : Init to spaces, not '\n'.
1687
1688 2004-04-11  Bud Davis  <bdavis9659@comcast.net>
1689
1690         * io.h (ioparm): Interface from FE is 32 bit, irregardless of offset_t.
1691         Will need to change this later to support direct access files > 2gb.
1692
1693 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1694
1695         PR gfortran/14762
1696         * io/transfer.c (next_record_r) : Skip to next record.
1697
1698 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1699
1700         PR gfortran/14836
1701         * io/transfer.c (next_record): Update last_record for DIRECT
1702
1703 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1704
1705         PR gfortran/14837
1706         * io/unix.c (find_file0): Use fd field of struct
1707
1708 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1709
1710         PR 14831
1711         * io/inquire.c (inquire_via_unit): Changed return string for
1712         BLANK=NULL. Use correct variable for ACTION.
1713
1714 2004-04-01  Bud Davis  <bdavis9659@comcast.net>
1715
1716         PR 14746
1717         * io/read.c (read_f): Allow a decimal without a leading digit.
1718         * io/write.c (output_float): remove a leading '0' to keep from
1719         overflowing the field (F edit descriptor).
1720
1721 2004-04-01  Bud Davis  <bdavis9659@comcast.net>
1722
1723         PR gfortran/14565
1724         * io/open.c (new_unit),
1725         * io/io.h : new_unit is now visible
1726         * io/transfer.c (data_transfer_init): open unit if no OPEN statement.
1727         * io/transfer.c (data_transfer_init): remove compile warnings.
1728         * io/rewind.c (st_rewind): ftruncate if writing.
1729
1730 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1731
1732         * write.c (write_l): Use extract_int for 'L' edit descriptor.
1733
1734 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1735
1736         PR 13919
1737         * io/io.h (global_t):
1738         * io/list_read.c (next_char,list_formatted_read,ist_formatted_read):
1739           Move eof_jmp to a global structure.
1740         * io/transfer.c(finalize_transfer) : Set up eof_jump for callers.
1741
1742 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1743
1744         * m4/cexp.m4 (csqrt): Actually use the passed value.
1745         * generated/exp_c?.c: Regenerate.
1746
1747 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1748
1749         PR 12921
1750         * io.h, transfer.c, open.c : recl_in changed from ptr to variable.
1751         * open.c (new_unit): Moved test for positioned direct access error.
1752         (init_units): Corrected calculation of max records.
1753
1754 2004-02-06  Feng Wang  <fengwang@nudt.edu.cn>
1755
1756         * Makefile.am: Add m4/dotprodc.m4. And fix spelling.
1757         * Makefile.in: Regenerate.
1758         * m4/dotprodc.m4: New file. Implement complex dot_product.
1759         * m4/dotprod.m4: Delete the complex implementation.
1760         * generated/dotprod_*: Update.
1761
1762 2004-02-07  Bud Davis  <bdavis9659@comcast.net>
1763
1764         * transfer.c (write_constant_string): Do not delete H's in hollerith
1765         formats.
1766
1767 2004-01-05  Andrew Pinski  <apinski@apple.com>
1768
1769         * configure.in: Check for csin in -lmx also.
1770         * configure: Regenerate.
1771
1772 2004-01-01  Paul Brook  <paul@codesourcery.com>
1773
1774         * io/list_read.c (find_nml_node): Make static.
1775         (match_namelist_name): Ditto.
1776         * io/read.c (convert_precision_real): Make static, fix spelling.
1777         * io/transfer.c (extract_real): Remove unused prototype.
1778         (st_set_nml_var): Make static.
1779         * io/write.c (extract_real): Make static.
1780
1781 2003-12-12  Huang Chun <chunhuang73@hotmal.com>
1782
1783         * intrinsics/string_intrinsics.c (string_index): Fix logics thinko.
1784
1785 2003-12-05  Melvin Hadasht  <melvin.hadasht@free.fr>
1786
1787         * io/transfer.c (data_transfer_init): Give a runtime error for list
1788         formatted reads and writes from/to files opened for unformatted IO.
1789
1790 2003-11-30  Paul Brook  <paul@nowt.org>
1791
1792         * runtime/memory.c (push_context): Remove.
1793         (pop_context): Remove.
1794         * libgfortran.h: Remove prototypes.
1795
1796 2003-11-27  Paul Brook  <paul@nowt.org>
1797
1798         * runtime/memory.c (deallocate): Nullify pointer after freeing.
1799
1800 2003-11-27  Paul Brook  <paul@nowt.org>
1801
1802         * intrinsics/string_intrinsics.c: Use new memory allocation interface.
1803         * libgfortran.h: Ditto.
1804         * m4/in_pack.m4: Ditto.
1805         * runtime/in_pack_generic.c: Ditto.
1806         * runtime/memory.c: Ditto.
1807
1808 2003-11-26  Richard Henderson  <rth@redhat.com>
1809
1810         * m4/exponent.m4, m4/fraction.m4: New.
1811         * m4/nearest.m4, m4/set_exponent.m4: New.
1812         * generated/*: Update.
1813         * Makefile.am: Add them.
1814         (AM_CFLAGS): New.  Use -std=gnu99.
1815         * Makefile.in: Regenerate.
1816
1817 2003-11-08  Paul Brook  <paul@nowt.org>
1818
1819         PR fortran/12704
1820         * m4/maxloc0.m4: Use default value of 1. Handle zero sized arrays.
1821         * m4/maxloc1.m4: Ditto.
1822         * m4/minloc0.m4: Ditto.
1823         * m4/minloc1.m4: Ditto.
1824         * m4/ifunction.m4: Set return value for zero sized arrays.
1825         * m4/iforeach.m4: Ditto.
1826         * m4/all.m4, m4/any.m4, m4/count.m4, m4/maxloc1.m4, m4/minloc1.m4,
1827         m4/mxaval.m4, m4/minval.m4, m4/product.m4, m4/sum.m4: Ditto.
1828         * generated/*: Update.
1829
1830 2003-10-30  Toon Moene  <toon@moene.indiv.nluug.nl>
1831
1832         PR fortran/12702
1833         * io/list_read.c (eat_spaces): Treat tab as space.
1834
1835 2003-10-30  Lars Segerlund  <Lars.Segerlund@comsys.se>
1836
1837         * intrinsics/random.c: Add reference to paper containing algorithm.
1838         (random_seed): Extra error checking and proper handling of arrays.
1839         (arandom_r4, arandom_r8): Implement.
1840
1841 2003-10-29  Toon Moene  <toon@moene.indiv.nluug.nl>
1842
1843         PR fortran/12703
1844         * runtime/memory.c (allocate_size): Allow allocation
1845         of zero-sized objects.
1846
1847 2003-10-29  Toon Moene  <toon@moene.indiv.nluug.nl>
1848
1849         PR fortran/12701
1850         * open.c (new_unit): Open without a file name opens
1851         a file with name fort.<unit>.
1852
1853 2003-10-12  Feng Wang  <wf_cs@yahoo.com>
1854
1855         * intrinsics/cshift0.c: New file.
1856         * m4/cshift1.m4: New file
1857         * generated/cshift*.c: New files.
1858         * Makefile.am: Add them.
1859         * Makefile.in: Regenerate.
1860
1861 2003-10-12  XiaoQiang Zhang  <zhangapache@yahoo.com>
1862
1863         * io/list_read.c (read_character): Remove unwanted call to free_saved.
1864
1865 2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
1866
1867         * intrinsics/string_intrinsics.c (string_trim): New function.
1868         (string_repeat): New function.
1869
1870 2003-10-11  Paul Brook  <paul@nowt.org>
1871
1872         * intrinsics/dprod_r8.f90: New file.
1873         * Makefile.am (gfor_specific_src): Add it.
1874         (gfor_built_specific_src): Rename from gfor_build_specific_c.
1875         Add new intrinsics.
1876         (gfor_specific2_src): Rename from gfor_built_specific2_c.
1877         Add new intrinsics.
1878         * Makefile.in: Regenerate.
1879         * generated/_aint_*.f90: New files.
1880         * generated/_anint*.f90: New files.
1881         * generated/_atan2*.f90: New files.
1882         * generated/_mod*.f90: New files.
1883
1884 2003-09-20  Kejia Zhao  <kejia_zh@yahoo.com.cn>
1885
1886         * intrinsics/selected_kind.f90: New file.
1887         * Makefile.am: Add it.
1888         * Makefile.in: regenerate.
1889
1890 2003-09-19  Lars Segerlund  <Lars.Segerlund@comsys.se>
1891         Paul Brook  <paul@nowt.org>
1892
1893         * intrinsics/random.c: New file.
1894         * Makefile.am (gfor_hemper_src): Add it.
1895         (gfor_specific_c): Fix typo.
1896
1897 2003-09-19  Paul Brook  <paul@nowt.org>
1898
1899         * All: rename g95->gfc.
1900
1901 2003-09-18  XiaoQiang Zhang  <zhangapache@yahoo.com>
1902
1903         * io/write.c (output_float): Fix bug of FMT_E, Add comments.
1904
1905 2003-09-09  XiaoQiang Zhang  <zhangapache@yahoo.com>
1906
1907         * io/write.c (write_float): Dectection of positive infinite number,
1908         Not a Number(NaN) and negative infinite number.
1909         (ioutput_float): Bug fix for FMT_E and FMT_D processing to
1910         output a very_very small number ( < 0.1e-100 ).
1911
1912 2003-09-07  XiaoQiang Zhang  <zhangapache@yahoo.com>
1913
1914         * libgfortran.h (xtoa, itoa): Parameter modified.
1915         * io/io.h (namelist_info): Declaration to support namelist I/O
1916         (st_parameter): Add namelist related component
1917         (ionml, empty_internal_buffer, st_set_nml_var_int,
1918         st_set_nml_var_float, st_set_nml_var_char, st_set_nml_var_complex,
1919         st_set_nml_var_log): Declaration
1920         (set_integer, set_integer): Parameter changed
1921         * io/format.c (free_nodes): Fix annoying bug of lefting "deallocated"
1922          fnodes
1923         (parse_format_list): Fix bug about FMT_SLASH
1924         * io/list_read.c (push_char): Totally clear old saved_string, zeroize
1925         newly allocated saved_string
1926         (next_char): Add detection of End_Of_Line support
1927         (convert_integer): Now can process 64 bits interger
1928         (read_real): Bug fixed
1929         (init_at_eol, find_nml_node, match_namelist_name): Add new functions
1930         (match_namelist_name): New implemention
1931         * io/lock.c (ionml): New global variable
1932         (library_end): Free memory in ionml
1933         * io/open.c (st_open): Variable initializtion
1934         * io/read.c (max_value): 64 bits interger support
1935         (convert_precsion_real): New procedure to replace "strtod" with more
1936          features
1937         (read_f, read_radix): Input bug fix
1938         * io/transfer.c: (sf_seen_eor): New static variable
1939         (read_sf): Zeroize base buffer; fix bugs: single read statement can
1940         not get input in mutli line when read from stdin
1941         (formatted_transfer): Fix bug of FMT_O, FMT_B, FMT_Z for INTEGER type
1942          request
1943         (data_transfer_init): Clear internal buffer for Internel File I/O.
1944         Internal File now worked. Detect some error condition for namelist.
1945         Some minor bug fix
1946         (next_record_w): Internal file and Namelist I/O support.
1947         (st_set_nml_var, st_set_nml_var_float, st_set_nml_var_char,
1948         st_set_nml_var_complex, st_set_nml_var_log): Implemention.
1949         * io/unit.c (implicit_unit): Deletion
1950         (get_unit): Now cannot open a unit implicitly.
1951         * io/unix.c (mmap_alloc): Fix fatal error in calculating the length of
1952         mapped buffer.
1953         (mem_alloc_r_at): Internal file I/O support added
1954         (empty_internal_buffer): New function
1955         * io/write.c (extract_int): Support 64 bits interger processing
1956         (output_float): Varibale initialization
1957         (write_float): Infinite real number detection.
1958         (write_int): 64 bits integer I/O support
1959         (write_decimal): New function to output decimal number
1960         (otoa, btoa): Better implemention and 64 bits interger support
1961         (namelist_write): New function
1962         * runtime/error.c (itoa, xtoa): Better implemention and 64 bits
1963         interger support
1964
1965 2003-08-15  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
1966
1967         * libgfortran.h (os_error, runtime_error,internal_error, sys_exit,
1968         get_mem ): Add attribute.
1969         * intrinsics/spread_generic.c (__spread): Fix spelling.
1970         * io/inquire.c (inquire_via_filename): Add const.
1971         * io/io.h (sys_exit): Add attribute.
1972         * io/io.h (move_pos_offset): Add move_pos_offset.
1973         * io/io.h (compare_file_filename, inquire_sequential, inquire_direct,
1974         inquire_formatted, inquire_unformatted, inquire_read, inquire_write,
1975         inquire_readwrite, convert_real, write_a, write_b, write_d, write_e,
1976         write_en, write_es, write_f, write_i, write_l, write_o, write_x,
1977         write_z): Add const.
1978         * io/read.c (convert_real): Add const.
1979         * io/transfer.c (type_name): Add const.
1980         * io/unix.c (unpack_filename, compare_file_filename,inquire_sequential,
1981         inquire_direct, inquire_formatted, inquire_unformatted, inquire_access,
1982         inquire_read, inquire_write, inquire_readwrite): Add const.
1983         * io/write.c (output_float): Remove unused variable.
1984         * io/write.c (write_a, extract_int, extract_real, output_float,
1985         write_float, write_int, write_i, write_b, write_o, write_z, write_d,
1986         write_e, write_f, write_en, write_es, write_logical, write_integer,
1987         write_character, write_real, write_complex): Add const.
1988         * runtime/error.c (rtoa): Remove unused variable.
1989         * runtime/select.c (select_string): Add const.
1990         * runtime/stop.c (stop_string): Add const.
1991
1992 2003-08-10  Paul Brook  <paul@nowt.org>
1993
1994         * Makefile.am (gfor_helper_src): Add intrinsics/abort.c.
1995         (FFLAGS): Add -fno-underscoring.
1996         * Makefile.in: Regenerate.
1997         * intrinsics/abort.c: New file.
1998
1999 2003-08-10  Erik Schnetter  <schnetter@uni-tuebingen.de>
2000
2001         * fmain.c (main): Do not call init and cleanup; call set_args instead.
2002         * libgfortran.h (init, cleanup): Remove declarations.
2003         (set_args): Add declaration.
2004         * runtime/main.c (init, cleanup): Make them static, and give them
2005         the constructor and destructor attributes.
2006         (set_args): New function.
2007
2008 2003-08-10  Paul Brook  <paul@nowt.org>
2009
2010         * intrinsics/strinf_intrinsics.c (compare_string): Return value based
2011         on which string is longest.
2012
2013 2003-08-10  Paul Brook  <paul@nowt.org>
2014
2015         * Makefile.am (EXTRA_DIST): Remove old files.
2016         * Makefile.in: Regenerate.
2017
2018 2003-07-26  Paul Brook  <paul@nowt.org>
2019
2020         Rename library to libgfortran.
2021         * libgfortran.h: Change prefix to _libgfortran_.
2022
2023 2003-07-24  Paul Brook  <paul@nowt.org>
2024
2025         * configure.in: Don't pull in system libtool.  Use toplevel
2026         auxiliary files.
2027
2028 2003-07-22  Paul Brook  <paul@nowt.org>
2029
2030         Regenerate all configury files.
2031
2032 2003-07-09  Chun Huang  <compiler@sohu.com>
2033
2034         * intrinsics/string_intrinsic.c (string_scan): New function.
2035         (string_verify): New function.
2036
2037 2003-06-25  Paul Brook  <paul@nowt.org>
2038
2039         * io/unix.c (mem_alloc_r_at, mem_alloc_w_at): Advance logical_offset.
2040         (mem_seek): Don't bother setting physical_offset.
2041
2042 2003-06-20  Paul Brook  <paul@nowt.org>
2043
2044         * libgfor.h (stop_numeric): Declare.
2045         * runtime/pause.c: New file.
2046         * Makefile.am: Add it.
2047
2048 2003-06-08  Paul Brook  <paul@nowt.org>
2049
2050         * m4/cexp.m4 (cabs): Use correct typed version.
2051         (csqrt): New function.
2052
2053 2003-06-07  Canqun Yang  <canqun@yahoo.com.cn>
2054
2055         Spotted by Benjamin and Tobias:
2056         * io/list_read.c: Add Separator '\t'.
2057         (parse_real, read_real): Accept real values starting with an optional
2058         sign follows a decimal point.
2059
2060 2003-06-06  Steven Bosscher  <steven@gcc.gnu.org>
2061
2062         * Makefile.am: Don't put cmath objects in subdir.
2063         * configure.in: Rename MATHOBJ to MATH_OBJ.
2064
2065 2003-06-02  Kejia Zhao  <Kejia_zh@yahoo.com.cn>
2066
2067         * intrinsics/associated.c: New file.
2068         * Makefile.am: Add it. Regenerate Makefile.in.
2069         * libgfor.h: Define g95_array_void, G95_DESCRIPTOR_DATA, and
2070         G95_DESCRIPTOR_DTYPE.
2071
2072 2003-06-01  Canqun Yang  <canqun@yahoo.com.cn>
2073
2074         * io/write.c (calcuate_exp): Rewrite it to avoid overflow.
2075         (calculate_G_format): Rewrite it to eliminate an infinte loop and set
2076         the scale_factor to 0 for F editing.
2077
2078 2003-05-11  Tobias Schlter  <innenminister@gmx.de>
2079
2080         * libgfor.h: Only include stdint.h if it exists.
2081
2082 2003-05-07  Paul Brook  <paul@nowt.org>
2083
2084         * libgfor.h: Use stdint.h types.
2085         * intrinsics/ishift.c: Ditto.
2086         * runtime/memory.c (malloc_t): Reorder fields for better alignment.
2087
2088 2003-05-05  Steven Bosscher  <steven@gcc.gnu.org>
2089
2090         * libgfor.h (offsetof): Define if nobody else does.
2091         * runtime/memory.c (HEADER_SIZE): Use it.
2092
2093 2003-05-01  Tobias Schlter  <innenminister@gmx.de>
2094
2095         * configure.in: Require autoconf 2.54.
2096
2097 2003-04-28  Tobias Schlter  <innenminister@gmx.de>
2098         Paul Brook  <paul@nowt.org>
2099
2100         * intrinsics/reshape_generic.c: Copy the whole element, not just the
2101         first byte.
2102         * m4/transpose.m4: New file.
2103         * Makefile.am: Add them.
2104         Regenerate generated files.
2105
2106 2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
2107
2108         * io/format.c (parse_format_list): Allow 'X' without integer
2109         prefix.  This is an extension.  Interpretation is '1X'.
2110
2111 2003-04-18  Tobias Schlter  <Tobias.Schlueter@physik.uni-muenchen.de>
2112
2113         * io/format.c (parse_format_list): Allow '0P'.
2114
2115 2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
2116
2117         * Makefile.in: Re-regenerate for automake 1.7.3.
2118
2119 2003-04-18  Canqun Yang  <canqun@yahoo.com.cn>
2120
2121         Port implementation for CHARACTER SELECT from Andy's tree.
2122         * runtime/select.c: New file
2123         * Makefile.am: Add it.
2124         * Makefile.in: Regenerate.
2125
2126 2003-04-17  Xiaoqiang Zhang <zhangapache@yahoo.com>
2127
2128         * io/transfer.c (formatted_transfer): Modified
2129         * io/unix.c (move_pos_offset): New Function.
2130         * io/format.c (parse_format_list): Modified.
2131
2132 2003-04-15  Xiaoqiang Zhang <zhangapache@yahoo.com>
2133
2134         * io/write.c (write_float,write_real): New implemention of
2135         FMT_G and default float editing.
2136         (calculate_exp,calculate_G_format,output_float): New Function.
2137         (write_float,write_real,write_logical): Modified
2138         * libgfor.h (default_rtoa): Remove Declaration.
2139         * runtime/error.c (default_rtoa): Remove Function.
2140
2141 2003-04-15  Steven Bosscher  <steven@gcc.gnu.org>
2142
2143         Spotted by Yang:
2144         * io/write.c (extract_real): Add missing break statement.
2145
2146 2003-04-13  Steven Bosscher  <steven@gcc.gnu.org>
2147
2148         * cpu_time.c: Make sure we have a definition of HZ.  Don't
2149         rely on CLOCKS_PER_SEC, it is always 1000000, on any system.
2150
2151 2003-04-13  Steven Bosscher  <steven@gcc.gnu.org>
2152             Paul Brook  <paul@nowt.org>
2153
2154         * configure.in: Check for process time headers and GETTIMEOFDAY.
2155         * makefile.am: Add intrinsics/cpu_time.c.
2156         * acinclude.m4: New file.
2157         * intrinsics/cpu_time.c: New file.
2158         * m4/dotprodl.m4: Fix typo.
2159         Regenerate generated files.
2160
2161 2003-04-11  Xiaoqiang Zhang <zhangapache@yahoo.com>
2162
2163         * io/write.c (extract_real): Ouput floating point value.
2164         (write_float): New Function.
2165         (write_e, write_f, write_en, write_es): Modified
2166         * io/transfer.c (formatted_transfer): Modified.
2167         * libgfor.h (default_rtoa): Declaration.
2168         (rtoa): Declaration.
2169         * runtime/error.c (default_rtoa): New Function.
2170         (rtoa): New Function.
2171
2172 2003-04-05  Paul Brook  <paul@nowt.org>
2173
2174         * intrinsics/spread_generic.c: New file.
2175         * Makefile.am: Add it. Regenerate Makefile.in.
2176
2177 2003-03-29  Paul Brook  <paul@nowt.org>
2178
2179         * intrinsics/pack_generic.c: New file.
2180         * intrinsics/unpack_generic.c: New file.
2181         * Makefile.am: Add them. Regenerate Makefile.in.
2182
2183 2003-03-25  Paul Brook  <paul@nowt.org>
2184
2185         * intrinsics/eoshift0.c: New file.
2186         * intrinsics/eoshift2.c: New file.
2187         * m4/eoshift1.m4: New file.
2188         * m4/eoshift3.m4: New file.
2189         * Makefile.am: Add them.
2190         * in_unpack_generic.c: Initialize src.
2191         Regenerate generated files.
2192
2193 2003-03-14  Paul Brook  <paul@nowt.org>
2194
2195         * m4/shape.m4: Work properly with array temporaries.
2196         * m4/in_pack.m4: Skip redundant checks for array temporaries.
2197         * runtime/in_pack_generic.c: Ditto.
2198
2199 2003-03-12  Paul Brook  <paul@nowt.org>
2200
2201         * m4/shape.m4: Work properly with noncontiguous arrays.
2202
2203 2003-03-08  Paul Brook  <paul@nowt.org>
2204
2205         * m4/in_pack.m4: Correctly handle zero sized and assumed size arrays.
2206         * runtime/in_pack_generic.c: Ditto.
2207
2208 2003-02-08  Paul Brook  <paul@nowt.org>
2209
2210         * intrinsics/reshape_generic.c: Use runtime_error to report errors.
2211         * io/close.c (st_close): Return void.
2212         * io/open.c (st_open): Return void.
2213         * libgfor.h (g95_array_char): Declare.
2214         (internal_malloc_size): Ditto.
2215         (internal_pack*, internal_unpack*): Ditto.
2216         * m4/in_pack.m4: Allocate storage if neccessary.  Fix logic for packed
2217         arrays.
2218         * m4/in_unpack.m4: Include file fixes.
2219         * m4/reshape.m4: Increment the correct source pointer.
2220         * Makefile.am (maxloc): Fix typo.
2221         * runtime/in_pack_generic.c: Call optimized functions. Allocate
2222         storage if neccessary. Fix logic for packed arrays.
2223         * runtime/in_unpack_generic.c: Call optimized functions.
2224         * runtime/main.c: Use runtime_error to report errors.
2225         * memory.c (internal_malloc_size): Make non-static.
2226
2227 2003-02-02  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
2228
2229         * reshape_packed.c, lock.c: Add #include <string.h>.
2230         * libgfor.h, format.c, inquire.c, io.h, transfer.c, unix.c,
2231         environ.c, error.c, memory.c, string.c: Add const.
2232         * error.c (show_locus): Add void.
2233
2234 2003-02-21  Paul Brook  <paul@nowt.org>
2235
2236         * m4/in_pack.m4: Avoid returning const * parameter.
2237         * Makefile.am: Only regenerate files in maintainer mode.
2238
2239 2003-02-20  Paul Brook  <paul@nowt.org>
2240
2241         Add array repacking support functions.
2242         * m4/in_pack.m4, m4/in_unpack.m4: New files.
2243         * runtime/in_pack_generic.c, runtime/in_unpack_generic.c: New files.
2244         * Makefile.am: Build them.  Regenerate configury files.
2245         * generated/: New directory for generated files (need to move
2246         everything else there).
2247
2248 2003-02-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
2249
2250         * m4/cexp.m4: Fix typo.
2251
2252 2003-01-26  Paul Brook  <paul@nowt.org>
2253
2254         * intrinsics/: Add missing generated files.
2255
2256 2003-01-26  Paul Brook  <paul@nowt.org>
2257
2258         * Makefile.am: Put -I before the filename.
2259
2260 2003-01-24  Paul Brook  <paul@nowt.org>
2261
2262         * configure.in: Add AM_MAINTAINER_MODE.
2263
2264 2003-01-23  Paul Brook  <paul@nowt.org>
2265
2266         * configure.in, Makefile.am: Modify to work with unmodified autoconf
2267         and auotmake.
2268         Also regenerate other configury files.
2269
2270 2003-01-21  Paul Brook  <paul@nowt.org>
2271
2272         * io/read.c: Don't use stdint.h, it doesn't exist on cygwin.
2273
2274 2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
2275
2276         * io/read.c (read_f): Don't use alloca, but safe get_mem instead.
2277         Don't include "alloca.h".
2278
2279 2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
2280
2281         * intrinsics/string.c: Rename to intrinsics/string_intrinsics.c.
2282         * Makefile.am: Adjust file name.
2283         * Makefile.in: Regenerate.
2284         * gfortypes.h: Kill, include everything in...
2285         * libgfor.h: ...here.  Include config.h
2286         * fmain.c, intrinsics/ishftc.c, intrinsic/reshape_generic.c,
2287         intrinsics/reshape_i4.c, intrinsics/reshape_i8.c,
2288         intrinsics/reshape_packed.c, intrinsics/size.c,
2289         m4/reshape.m4, runtime/main.c, runtime/memory.c: Use macro
2290         for prefix for all functions instead of hardcoded.
2291
2292 2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
2293
2294         * io/lock.c (library_end): Propagate library return
2295         code.
2296
2297 2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
2298
2299         Port fixes from Andy's tree:
2300         * io/read.c (read_decimal): Reverse sense of overflow
2301         comparison during integer reads.
2302         * io/format.c (revert): Fix comment.
2303         (next_format): Fix format revision.
2304         * io/unix.c: Fix and simplify mmap version of stream
2305         functions.
2306
2307 2003-01-11  Paul Brook  <paul@nowt.org>
2308
2309         * configure, Makefile.in: Regenerate.
2310
2311 2003-01-11  Paul Brook  <paul@nowt.org>
2312
2313         * runtime/stop.c: Rewrite.
2314
2315 2003-01-08  Paul Brook  <paul@nowt.org>
2316
2317         * configure, Makefile.in: Regenerate.
2318
2319 2003-01-05  Paul Brook  <paul@nowt.org>
2320
2321         * (*.m4) Move to m4/.
2322         * intrinsics/string.c (_gfor_string_index): New Function.
2323
2324 2002-12-29  Paul Brook  <paul@nowt.org>
2325
2326         * intrinsics/reshape.*: New files.
2327         * gcc_config.patch: Update to new GCC configure system.
2328
2329 2002-10-10  Paul Brook  <paul@nowt.org>
2330
2331         * intrinsics/size.c: New file.
2332         * intrinsics/shape.m4: New file.
2333         * Makefile.am: Add above files.
2334
2335 2002-10-02  Paul Brook  <paul@nowt.org>
2336
2337         * fmain.c (main): Move here.
2338         * libgfor.c: From here.
2339         * libgfor.h (gfor_init, gfor_runtime_cleanup): Declare.
2340         * Makefile.am: Build libgforbegin.
2341         * gcc_config.patch: Remove stray -march=athlon.
2342         * dotprodl.m4: Fix use of L8_TO_L4 macro.
2343         * ifunction.m4: Move variable declarations to allow compilation with
2344         gcc < 3.0
2345         * specific.m4, specific4.m4: Fix typo typecode->type_code.
2346         * README: Document use of patch -p1.
2347
2348 2002-09-12  Paul Brook  <paul@nowt.org>
2349
2350         * math/*: Add complex math library functions.
2351         * intrinsics/specific(2).m4: Generate Specific intrinsic functions.
2352         * Makefile.am: Add details for above.
2353         * configure.in: Use AC_PROG_F95.  Test for the presence of csin.
2354
2355 2002-09-09  Paul Brook  <paul@nowt.org>
2356
2357         * libgfor.c (determine_endianness): Use an array rather than a struct.
2358         * intrinsics/dotprod*, matmul*: Implement DOT_PRODUCT and MATMUL.
2359
2360 2002-09-09  Steven Bosscher  <s.bosscher@student.tudelft.nl>
2361
2362         * libgfor.c: Add fatal signal handler.
2363         Romove superfluous abort() calls.
2364
2365 2002-09-07  Paul Brook <paul@nowt.org>
2366
2367         * Makefile.am, intrinsics: Major rewrite.
2368
2369 2002-09-02  Paul Brook <paul@nowt.org>
2370
2371         * Makefile.am: Added -I$(srcdir) to m4 rule.
2372
2373 2002-08-30  Paul Brook <paul@nowt.org>
2374
2375         * io/*: Integrated libgforio.
2376         * Makefile.am, configure.in: Make compatable with GCC. Build code for
2377         intrinsics in the intrisics directory.
2378         * intrinsics/intrinsics.m4: Move here. Strip directories from the
2379         filename. Add 'and' and 'all' intrinsics.
2380
2381 2002-08-17  Paul Brook <paul@nowt.org>
2382
2383         * ALL: First release as more than just a single file