OSDN Git Service

* libgfortran.h (GFC_ARRAY_DESCRIPTOR): Replace 'type *base' by
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2005-07-07  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
2
3         * libgfortran.h (GFC_ARRAY_DESCRIPTOR): Replace 'type *base' by
4         'size_t offset'.
5         * intrinsics/cshift0.c, intrinsics/eoshift0.c,
6         intrinsics/eoshift2.c,intrinsics/pack_generic.c,
7         intrinsics/reshape_generic.c, intrinsics/spread_generic.c,
8         intrinsics/transpose_generic.c, intrinsics/unpack_generic,
9         m4/cshift1.m4, m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4,
10         m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/reshape.m4,
11         m4,transpose.m4: Set renamed field 'offset' to zero instead of
12         'base'.
13         * generated/all_l4.c, generated/all_l8.c,
14         generated/any_l4.c, generated/any_l8.c, generated/count_4_l4.c,
15         generated/count_4_l8.c, generated/count_8_l4.c,
16         generated/count_8_l8.c, generated/chift1_4.c,
17         generated/cshift1_8.c, generated/eoshift1_4.c,
18         generated/eoshift1_8.c, generated/eoshift3_4.c,
19         generated/eoshift3_8.c, generated/matmul_c4.c,
20         generated/matmul_c8.c, generated/matmul_i4.c, matmul_i8.c,
21         generated/matmul_l4.c, generated/matmul_l8.c,
22         generated/matmul_r4.c, generated/matmul_r8.c,
23         generated/maxloc0_4_i4.c, generated/maxloc0_4_i8.c,
24         generated/maxloc0_4_r4.c, generated/maxloc0_4_r8.c,
25         generated/maxloc0_8_i4.c, generated/maxloc0_8_i8.c,
26         generated/maxloc0_8_r4.c, generated/maxloc0_8_r8.c,
27         generated/maxloc1_4_i4.c, generated/maxloc1_4_i8.c,
28         generated/maxloc1_4_r4.c, generated/maxloc1_4_r8.c,
29         generated/maxloc1_8_i4.c, generated/maxloc1_8_i8.c,
30         generated/maxloc1_8_r4.c, generated/maxloc1_8_r8.c,
31         generated/maxval_i4.c, generated/maxval_i8.c,
32         generated/maxval_r4.c, generated/maxval_r8.c,
33         generated/minloc0_4_i4.c, generated/minloc0_4_i8.c,
34         generated/minloc0_4_r4.c, generated/minloc0_4_r8.c,
35         generated/minloc0_8_i4.c, generated/minloc0_8_i8.c,
36         generated/minloc0_8_r4.c, generated/minloc0_8_r8.c,
37         generated/minloc1_4_i4.c, generated/minloc1_4_i8.c,
38         generated/minloc1_4_r4.c, generated/minloc1_4_r8.c,
39         generated/minloc1_8_i4.c, generated/minloc1_8_i8.c,
40         generated/minloc1_8_r4.c, generated/minloc1_8_r8.c,
41         generated/minval_i4.c, generated/minval_i8.c,
42         generated/minval_r4.c, generated/minval_r8.c,
43         generated/product_c4.c, generated/product_c8.c,
44         generated/product_i4.c, generated/product_i8.c,
45         generated/product_r4.c, generated/product_r8.c,
46         generated/reshape_c4.c, generated/reshape_c8.c,
47         generated/reshape_i4.c, generated/reshape_i8.c,
48         generated/sum_c4.c, generated/sum_c8.c, generated/sum_i4.c,
49         generated/sum_i8.c, generated/sum_r4.c, generated/sum_r8.c,
50         generated/transpose_c4.c, generated/transpose_c8.c,
51         generated/transpose_i4.c, generated/transpose_i8.c: Regenerate:
52
53 2005-07-07  Thomas Koenig  <Thomas.Koenig@online.de>
54
55         PR libfortran/21594
56         * intrinsics/eoshift0.c:  If abs(shift) > len, fill the
57         the whole array with the boundary value, but don't overrun it.
58         * intrinsics/eoshift2.c:  Likewise.
59         * m4/eoshift1.m4:  Likewise.
60         * m4/eoshift3.m4:  Likewise.
61         * generated/eoshift1_4.c:  Regenerated.
62         * generated/eoshift1_8.c:  Regenerated.
63         * generated/eoshift3_4.c:  Regenerated.
64         * generated/eoshift3_8.c:  Regenerated.
65
66 2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>
67
68         PR fortran/16531
69         * io/transfer.c (formatted_transfer): Enable FMT_A on other types to
70         support Hollerith constants.
71
72 2005-07-01  Andreas Jaeger  <aj@suse.de>
73
74         * intrinsics/unpack_generic.c: Remove const from parameter.
75
76         * io/transfer.c (formatted_transfer): Remove unused variable.
77
78 2005-06-28  Thomas Koenig  <Thomas.Koenig@online.de>
79
80         PR libfortran/22142
81         * m4/eoshift1.m4:  Correct bstride (it needs to be multiplied
82         by size since it's a char pointer).
83         * m4/eoshift1_4.c:  Regenerated.
84         * m4/eoshift1_8.c:  Regenerated.
85
86 2005-06-28  Thomas Koenig  <Thomas.Koenig@online.de>
87
88         PR libfortran/22142
89         * m4/eoshift3.m4:  Correct bstride (it needs to be multiplied
90         by size since it's a char pointer).
91         * m4/eoshift3_4.c:  Regenerated.
92         * m4/eoshift3_8.c:  Regenerated.
93
94 2005-06-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
95
96         PR libfortran/22170
97         * io/transfer.c (formatted_transfer): Do not iterate on the
98         repeat count of a FMT_SLASH, since this is already done in
99         next_format().
100
101 2005-06-25  Thomas Koenig  <Thomas.Koenig@online.de>
102
103         PR libfortran/22144
104         * m4/cshift1.m4: Remove const from argument ret.
105         Populate return array descriptor if ret->data is NULL.
106         * m4/eoshift1.m4: Likewise.
107         * m4/eoshift3.m4: Likewise.
108         * generated/cshift1_4.c:  Regenerated.
109         * generated/cshift1_8.c:  Regenerated.
110         * generated/eoshift1_4.c:  Regenerated.
111         * generated/eoshift1_8.c:  Regenerated.
112         * generated/eoshift3_4.c:  Regenerated.
113         * generated/eoshift3_8.c:  Regenerated.
114
115 2005-06-24  Jerry DeLisle <jvdelisle@verizon.net>
116
117         PR libfortran/21915
118         * Makefile.am: Include intrinsics/hyper.c.
119         * c99_protos.h: Add prototypes for single precision versions of
120         acosh, asinh, and atanh for platforms that do not have these.
121         * config.h.in: Add #undef for wrappers.
122         * configure.ac: Add checks for single precision versions.
123         * aclocal.m4: Regenerated.
124         * Makefile.in: Regenerated.
125         * configure: Regenerated.
126         * intrinsics/hyper.c: New file, adds new wrapper functions.
127
128 2005-06-23  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
129
130         * intrinsics/c99_functions.c (log10l): New log10l function for
131         systems where this is not available.
132         * c99_protos.h: Prototype for log10l function.
133         * libgfortran.h: Use generated kinds.h to define GFC_INTEGER_*,
134         GFC_UINTEGER_*, GFC_LOGICAL_*, GFC_REAL_*, GFC_COMPLEX_*. Update
135         prototypes for gfc_itoa and xtoa.
136         * io/io.h: Update prototypes for set_integer and max_value.
137         * io/list_read.c (convert_integer): Use new
138         GFC_(INTEGER|REAL)_LARGEST type.
139         * io/read.c (set_integer): Likewise.
140         (max_value): Likewise.
141         (convert_real): Likewise.
142         (real_l): Likewise.
143         (next_char): Likewise.
144         (read_decimal): Likewise.
145         (read_radix): Likewise.
146         (read_f): Likewise.
147         * io/write.c (extract_int): Use new GFC_INTEGER_LARGEST type.
148         (extract_real): Use new GFC_REAL_LARGEST type.
149         (calculate_exp): Likewise.
150         (calculate_G_format): Likewise.
151         (output_float): Likewise. Use log10l for long double values.
152         Add comment for sprintf format. Use GFC_REAL_LARGEST_FORMAT.
153         (write_l): Use new GFC_INTEGER_LARGEST type.
154         (write_float): Use new GFC_REAL_LARGEST type.
155         (write_int): Remove useless special case for (len < 8).
156         (write_decimal): Use GFC_INTEGER_LARGEST.
157         (otoa): Use GFC_UINTEGER_LARGEST as argument.
158         (btoa): Use GFC_UINTEGER_LARGEST as argument.
159         * runtime/error.c (gfc_itoa): Use GFC_INTEGER_LARGEST as
160         argument.
161         (xtoa): Use GFC_UINTEGER_LARGEST as argument.
162         * Makefile.am: Use mk-kinds-h.sh to generate header kinds.h
163         with all Fortran kinds available.
164         * configure.ac: Check for strtold and log10l.
165         * Makefile.in: Regenerate.
166         * aclocal.m4: Regenerate.
167         * configure: Regenerate.
168         * config.h.in: Regenerate.
169         * mk-kinds-h.sh: Configuration script for available integer
170         and real kinds.
171
172
173 2005-06-18  Janne Blomqvist  <jblomqvi@cc.hut.fi>
174
175         * unix.c (stream_at_bof): Don't assume that all non-mmapped files
176         are non-seekable.
177         (stream_at_eof): Likewise.
178
179 2005-06-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
180
181         PR libfortran/19155
182         * io/read.c (convert_real): strtod can set errno to EINVAL on an
183         empty string, but we shouldn't have an error in that case.
184
185 2005-06-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
186
187         PR libfortran/19216
188         * io/list_read.c (eat_separator): No need to call next_record,
189         even in non-namelist_mode.
190
191 2005-06-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
192
193         * io/transfer.c (formatted_transfer): Fix typo in error message.
194
195 2005-06-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
196
197         PR libfortran/16436
198         * io/transfer.c (read_sf): Correct updating of bytes_left field.
199         (formatted_transfer): Correct updating of bytes_left field and
200         reformatting code (comments and whitespace).
201         * io/unix.c (move_pos_offset): "active" field should not be
202         changed here. Whitespace corrections.
203
204 2005-06-15  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
205
206         PR libfortran/21950
207         * intrinsics/c99_functions.c (scalbn): Provide fallback
208         implementation for scalbn.
209         * c99_protos.h: Prototype for scalbn.
210         * configure.ac: Add check for scalbn.
211         * configure: Regenerate.
212         * config.h.in: Regenerate.
213
214 2005-06-14  Thomas Koenig  <Thomas.Koenig@online.de>
215
216         * intrinsics/eoshift0.c:  Removed prototype for eoshift0.
217         * intrinsics/eoshift2.c:  Removed prototype for eoshift2.
218
219 2005-06-14  Tom Tromey  <tromey@redhat.com>
220
221         PR libgcj/19877:
222         * configure, aclocal.m4, Makefile.in: Rebuilt.
223
224 2005-06-12  Thomas Koenig  <Thomas.Koenig@online.de>
225
226         PR libfortran/21594
227         * intrinsics/eoshift0.c:  Add prototype for eoshift0.
228         * intrinsics/eoshift2.c:  Add prototype for eoshift2.
229
230 2005-06-12  Steven G. Kargl <kargls@comcast.net>
231             Thomas Koenig  <Thomas.Koenig@online.de>
232
233         PR libfortran/PR21797
234         * m4/cexp.m4 (csqrt`'q):  Add type qualifyer to
235         sqrt and fabs.
236         * generated/exp_c4.c:  Regenerated.
237
238 2005-06-12  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
239
240         PR libfortran/19155
241         * io/read.c (read_f): Take care of spaces after initial sign.
242
243 2005-06-11  Thomas Koenig  <Thomas.Koenig@onlinde.de>
244
245         PR libfortran/21333
246         * Makefile.am: Add in_pack_c4.c, in_pack_c8.c, in_unpack_c4.c
247         and in_unpack_c8.c.
248         * Makefile.in: Regenerate.
249         * libgfortran.h:  Declare internal_pack_c4, internal_pack_c8,
250         internal_unpack_c4 and internal_unpack_c8.
251         * m4/in_pack.m4: Use rtype_ccode insteald of rtype_kind
252         in function name.
253         Use sizeof (rtype_name) as size for memory allocation.
254         * m4/in_unpack.m4: Use rtype_ccode insteald of rtype_kind
255         in function name.
256         Use sizeof (rtype_name) for calculation of sizes for memcpy.
257         * runtime/in_pack_generic.c:  For real, integer and logical
258         call internal_pack_4 if size==4 and internal_pack_8 if
259         size==8.
260         For complex, call internal_pack_c4 if size==8 and
261         internal_pack_c8 if size==16.
262         * runtime/in_unpack_generic.c: For real, integer and logical
263         call internal_unpack_4 if size==4 and internal_unpack_8 if
264         size==8.
265         For complex, call internal_unpack_c4 if size==8 and
266         internal_unpack_c8 if size==16.
267         * generated/in_pack_i4.c:  Regenerated.
268         * generated/in_pack_i8.c:  Regenerated.
269         * generated/in_unpack_i4.c:  Regenerated.
270         * generated/in_unpack_i8.c:  Regenerated.
271         * generated/in_pack_c4.c:  New file.
272         * generated/in_pack_c8.c:  New file.
273         * generated/in_unpack_c4.c:  New file.
274         * generated/in_unpack_c8.c:  New file.
275
276 2005-06-09  Thomas Koenig  <Thomas.Koenig@online.de>
277
278         PR libfortran/21480
279         * m4/reshape.m4:  Use sizeof (rtype_name) for sizes to be passed
280         to reshape_packed.
281         * generated/reshape_c4.c:  Regenerated.
282         * generated/reshape_c8.c:  Regenerated.
283         * generated/reshape_i4.c:  Regenerated.
284         * generated/reshape_i8.c:  Regenerated.
285
286 2005-06-07  Thomas Koenig  <Thomas.Koenig@online.de>
287
288         PR libfortran/21926
289         * m4/matmul.m4:  Correct zeroing of result for non-packed
290         arrays with lowest stride is one.
291         * generated/matmul_c4.c:  Regenerated.
292         * generated/matmul_c8.c:  Regenerated.
293         * generated/matmul_i4.c:  Regenerated.
294         * generated/matmul_i8.c:  Regenerated.
295         * generated/matmul_r4.c:  Regenerated.
296         * generated/matmul_r8.c:  Regenerated.
297
298 2005-05-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
299
300         PR libfortran/20179
301         * io/unix.c (fd_close): Add test so that we don't close()
302         stdout and stderr.
303
304 2005-05-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
305
306         PR libfortran/20006
307         * io/format.c (parse_format_list): Set repeat count of $ format
308         node to 1.
309         * io/transfer.c (read_sf): Add g.seen_dollar to the test
310         concerning advancing I/O.
311         (data_transfer_init): Likewise.
312         (finalize_transfer): Likewise.
313
314 2005-05-27  Thomas Koenig  <Thomas.Koenig@online.de>
315
316         * runtime/in_pack_generic.c:  Adjust copyright years.
317         (in_pack_generic):  Change dimension of auxiliary arrays from
318         GFC_MAX_DIMENSION - 1 to GFC_MAX_DIMENSION.
319         * runtime/in_unpack_generic.c:  Adjust copyright years.
320         (in_unpack_generic):  Change dimension of auxiliary arrays from
321         GFC_MAX_DIMENSION - 1 to GFC_MAX_DIMENSION.
322
323 2005-05-26  Thomas Koenig  <Thomas.Koenig@online.de>
324
325         PR libfortran/17283
326         * intrinsics/unpack_generic.c:  Fix name of routine
327         on top.  Update copyright years.
328         (unpack1):  Remove const from return array descriptor.
329         rs:  New variable, for calculating return sizes.
330         Populate return array descriptor if ret->data is NULL.
331
332 2005-05-22  Peter Wainwright  <prw@ceiriog1.demon.co.uk>
333
334         PR libfortran/21376
335         * io/write.c (output_float): Rework logic to avoid call to log10
336         with argument equal to zero.
337
338 2005-05-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
339
340         * configure.ac: Check for trunc and truncf in libm.
341         * configure: Regenerate.
342         * config.h.in: Likewise.
343         * intrinsics/c99_functions.c (trunc, truncf): New functions.
344         * c99_protos.h (trunc, truncf): Declare them.
345
346 2005-05-18  Thomas Koenig  <Thomas.Koenig@online.de>
347
348         PR libfortran/21127
349         * Makefile.am:  Really commit.
350         * Makefile.in:  Really commit.
351
352 2005-05-18  Thomas Koenig  <Thomas.Koenig@online.de>
353
354         PR libfortran/21127
355         * Makefile.am:  Add generated/reshape_c4.c and
356         generated/reshape_c8.c.
357         * Makefile.in:  Regenerated.
358         * m4/iparm.m4:  Define rtype_ccode to be c4 or c8 for
359         complex types, 4 or 8 otherwise.
360         * m4/reshape.m4:  Use rtype_ccode instead of rtype_kind
361         in function name.
362         * generated/reshape_c4.c: New file.
363         * generated/reshape_c8.c: New file.
364
365 2005-05-16  Andreas Jaeger  <aj@suse.de>
366
367         * configure.ac: Add additional warning flags.
368         * configure: Regenerate.
369
370         * io/write.c (calculate_G_format): Remove unused parameter.
371         (output_float): Remove unused parameter.
372         (write_float): Change callers.
373         (nml_write_obj): Avoid signed warning.
374         Make variable const to support -Wwrite-strings.
375
376         * io/unix.c (fd_alloc, mmap_open, mmap_sfree, mem_sfree,
377         mem_truncate): Mark argument as unused.
378
379         * io/unit.c (get_unit): Mark argument as unused.
380         (init_units): Avoid warning about signed comparision.
381
382         * io/transfer.c (next_record_r): Remove unused parameter.
383         (next_record_w): Remove unused parameter.
384         (next_record): Change callers.
385         (iolength_transfer): Mark arguments as unused.
386
387         * io/open.c: Add initializer.
388
389         * io/list_read.c (read_character): Mark argument as unused.
390         (nml_match_name): Add const to make compile with -Wwrite-strings.
391
392         * io/format.c: Add initializer.
393
394 2005-05-15  Andreas Jaeger  <aj@suse.de>
395
396         * m4/eoshift1.m4: Initialize variables to avoid warnings.
397         * m4/eoshift3.m4: Initialize variables to avoid warnings.
398         * generated/eoshift1_4.c, generated/eoshift1_8.c,
399         generated/eoshift3_4.c, generated/eoshift3_8.c: Regenerated.
400
401         * intrinsics/spread_generic.c (spread): Initialize variables to
402         avoid warnings.
403
404         * intrinsics/eoshift0.c (eoshift0): Initialize variables to avoid
405         warnings.
406         * intrinsics/eoshift2.c (eoshift2): Initialize variables to avoid
407         warnings.
408
409         * io/list_read.c (nml_get_obj_data): Initialize variables to avoid
410         warnings.
411
412         * intrinsics/pack_generic.c (pack): Remove unneeded calculation.
413
414         * m4/matmull.m4 (matmul_): Remove unneeded calculations, fix
415         pointer cast to avoid warning.
416         * generated/matmul_l4.c: Regenerated.
417         * generated/matmul_l8.c: Regenerated.
418
419         * Makefile.am: Remove AM_CFLAGS here.
420         * configure.ac: Define AM_CFLAGS and AM_FCFLAGS so that warnings
421         are set.  Set additionally -Wstrict-prototypes for CFLAGS.
422         * Makefile.in: Regenerated.
423         * aclocal.m4: Regenerated.
424         * configure: Regenerated.
425
426         * intrinsics/system_clock.c (system_clock_4, system_clock_8): Add
427         missing returns, reformat a bit.
428
429         * io/write.c (nml_write_obj): Use %d again - and cast to int,
430         st_sprintf does not handle %ld.
431
432         * io/unit.c (is_internal_unit): Add void as parameter list.
433
434         * io/transfer.c: Move prototype declarations before the functions.
435
436         * runtime/normalize.c (almostone_r4, almostone_r8): Fix parameter
437         list.
438
439         * intrinsics/random.c (KISS_DEFAULT_SEED): Remove extra semicolon.
440
441         * io/transfer.c: Do not use empty initializers for global objects.
442         Add missing initializers.
443
444         * io/lock.c: Do not use empty initializers for global objects.
445
446         * io/close.c: Add missing initializers.
447
448         * runtime/environ.c: Add missing initializers. Do not use empty
449         initializers for global object.
450         (init_string): Mark argument as unused.
451
452         * runtime/main.c (cleanup): Fix parameter list.
453
454         * io/io.h: Fix parameter lists.
455
456         * m4/transpose.m4, m4/matmul.m4: Fix pointer cast to avoid
457         warning.
458
459         * generated/transpose_c4.c, generated/transpose_c8.c,
460         generated/transpose_i4.c, generated/transpose_i8.c,
461         generated/matmul_c4.c, generated/matmul_c8.c,
462         generated/matmul_i4.c, generated/matmul_i8.c,
463         generated/matmul_r4.c, generated/matmul_r8.c: Regenerated.
464
465         * io/write.c (nml_write_obj): Fix 64-bit problem.
466
467         * io/list_read.c (nml_get_obj_data): Add missing braces around
468         initializer to avoid warnings.
469
470         * intrinsics/etime.c (etime_sub): Remove unused variable.
471
472         * intrinsics/chdir.c, intrinsics/getlog.c, intrinsics/link.c,
473         intrinsics/symlnk.c, intrinsics/perror.c: Include <string.h> for
474         prototypes.
475
476         * runtime/string.c (compare0): Remove unused variable.
477         * io/unit.c (init_units): Remove unused variables.
478         * intrinsics/getcwd.c (getcwd_i4_sub): Remove unused variable.
479         * intrinsics/unlink.c (unlink_i4_sub): Remove unused variable.
480         * intrinsics/stat.c (stat_i4_sub, fstat_i8_sub, fstat_i4_sub,
481         stat_i8_sub): Remove unused variable.
482
483 2005-05-12  Thomas Koenig  <Thomas.Koenig@online.de>
484
485         PR libfortran/21324
486         * runtime/memory.c:  Don't define GFC_CLEAR_MEMORY (it's a
487         performance hog).
488         * io/open.c (new_unit): Zero freshly allocated memory for
489         unit structure.
490         * io/unit.c (init_units):  Zero freshly allocated memory for
491         STDIN, STDOUT and STDERR.
492         * io/unix.c (open_internal):  Zero freshly allocated memory
493         for unix_stream.
494         (fd_to_stream):  Likewise.
495
496 2005-05-11  Bud Davis  <bdavis@gfortran.org>
497
498         PR fortran/19478
499         * io/unix.c (fd_truncate): update positions when ftruncate
500         fails (like writing to /dev/null).
501
502 2005-05-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
503
504         PR libfortran/21471
505         * open.c (new_unit): Take care of the case where POSITION_APPEND
506         is specified (sseek to the end, and set u>-endfile).
507
508 2005-05-10  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
509
510         PR fortran/20178
511         * Makefile.am (gfor_specific_src): Add 'intrinsics/f2c_intrinsics.F90'
512         to dependencies.
513         * Makefile.in: Regenerate.
514         * intrinsics/f2c_specific.F90: New file.
515
516 2005-05-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
517
518         PR libfortran/20788
519         * io/unix.c (fd_to_stream): Add an avoid_mmap argument indicating
520         we don't we to mmap this stream. Use fd_open instead of mmap_open
521         in that case.
522         (open_external): Call fd_to_stream with avoid_mmap = 0.
523         (input_stream): Call fd_to_stream with avoid_mmap = 1.
524         (output_stream): Likewise.
525         (error_stream): Likewise.
526
527 2005-05-09  Mike Stump  <mrs@apple.com>
528
529         * configure: Regenerate.
530
531 2005-05-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
532
533         PR libfortran/19155
534         * io/read.c (read_f): Accept 'e', 'E', 'd' and 'D' as first
535         non-blank characters of a real number.
536
537 2005-05-04  Thomas Koenig  <Thomas.Koenig@online.de>
538
539         PR libfortran/21354
540         * m4/cshift1.m4: Change dimension of auxiliary arrays from
541         GFC_MAX_DIMENSION - 1 to GFC_MAX_DIMENSION.
542         * m4/eoshift1.m4: Likewise.
543         * m4/eoshift3.m4: Likewise.
544         * m4/ifunction.m4: Likewise.
545         * m4/in_pack.m4: Likewise.
546         * m4/in_unpack.m4: Likewise.
547         * intrinsics/cshift0.c: Likewise.
548         * intrinsics/eoshift0.c: Likewise.
549         * intrinsics/eoshift2.c: Likewise.
550         * intrinsics/random.c: Likewise.
551         * intrinsics/spread_generic.c: Likewise.
552         * intrinsics/stat.c: Likewise.
553         * generated/all_l4.c: Regenerated.
554         * generated/all_l8.c: Regenerated.
555         * generated/any_l4.c: Regenerated.
556         * generated/any_l8.c: Regenerated.
557         * generated/count_4_l4.c: Regenerated.
558         * generated/count_4_l8.c: Regenerated.
559         * generated/count_8_l4.c: Regenerated.
560         * generated/count_8_l8.c: Regenerated.
561         * generated/cshift1_4.c: Regenerated.
562         * generated/cshift1_8.c: Regenerated.
563         * generated/eoshift1_4.c: Regenerated.
564         * generated/eoshift1_8.c: Regenerated.
565         * generated/eoshift3_4.c: Regenerated.
566         * generated/eoshift3_8.c: Regenerated.
567         * generated/in_pack_i4.c: Regenerated.
568         * generated/in_pack_i8.c: Regenerated.
569         * generated/in_unpack_i4.c: Regenerated.
570         * generated/in_unpack_i8.c: Regenerated.
571         * generated/maxloc0_4_i4.c: Regenerated.
572         * generated/maxloc0_4_i8.c: Regenerated.
573         * generated/maxloc0_4_r4.c: Regenerated.
574         * generated/maxloc0_4_r8.c: Regenerated.
575         * generated/maxloc0_8_i4.c: Regenerated.
576         * generated/maxloc0_8_i8.c: Regenerated.
577         * generated/maxloc0_8_r4.c: Regenerated.
578         * generated/maxloc0_8_r8.c: Regenerated.
579         * generated/maxloc1_4_i4.c: Regenerated.
580         * generated/maxloc1_4_i8.c: Regenerated.
581         * generated/maxloc1_4_r4.c: Regenerated.
582         * generated/maxloc1_4_r8.c: Regenerated.
583         * generated/maxloc1_8_i4.c: Regenerated.
584         * generated/maxloc1_8_i8.c: Regenerated.
585         * generated/maxloc1_8_r4.c: Regenerated.
586         * generated/maxloc1_8_r8.c: Regenerated.
587         * generated/maxval_i4.c: Regenerated.
588         * generated/maxval_i8.c: Regenerated.
589         * generated/maxval_r4.c: Regenerated.
590         * generated/maxval_r8.c: Regenerated.
591         * generated/minloc0_4_i4.c: Regenerated.
592         * generated/minloc0_4_i8.c: Regenerated.
593         * generated/minloc0_4_r4.c: Regenerated.
594         * generated/minloc0_4_r8.c: Regenerated.
595         * generated/minloc0_8_i4.c: Regenerated.
596         * generated/minloc0_8_i8.c: Regenerated.
597         * generated/minloc0_8_r4.c: Regenerated.
598         * generated/minloc0_8_r8.c: Regenerated.
599         * generated/minloc1_4_i4.c: Regenerated.
600         * generated/minloc1_4_i8.c: Regenerated.
601         * generated/minloc1_4_r4.c: Regenerated.
602         * generated/minloc1_4_r8.c: Regenerated.
603         * generated/minloc1_8_i4.c: Regenerated.
604         * generated/minloc1_8_i8.c: Regenerated.
605         * generated/minloc1_8_r4.c: Regenerated.
606         * generated/minloc1_8_r8.c: Regenerated.
607         * generated/minval_i4.c: Regenerated.
608         * generated/minval_i8.c: Regenerated.
609         * generated/minval_r4.c: Regenerated.
610         * generated/minval_r8.c: Regenerated.
611         * generated/product_c4.c: Regenerated.
612         * generated/product_c8.c: Regenerated.
613         * generated/product_i4.c: Regenerated.
614         * generated/product_i8.c: Regenerated.
615         * generated/product_r4.c: Regenerated.
616         * generated/product_r8.c: Regenerated.
617         * generated/sum_c4.c: Regenerated.
618         * generated/sum_c8.c: Regenerated.
619         * generated/sum_i4.c: Regenerated.
620         * generated/sum_i8.c: Regenerated.
621         * generated/sum_r4.c: Regenerated.
622         * generated/sum_r8.c: Regenerated.
623
624 2005-04-30  Thomas Koenig  <Thomas.Koenig@online.de>
625
626         PR libfortran/18958
627         libgfortran.h:  Change typedef of index_type from size_t
628         to ssize_t.
629
630 2005-04-30  Paul Thomas  <pault@gcc.gnu.org>
631
632         PR libfortran/18857
633         * generated/matmul_r8.c: Remove incorrect assertions.
634         * generated/matmul_c4.c: Regenerate
635         * generated/matmul_c8.c: Regenerate
636         * generated/matmul_i4.c: Regenerate
637         * generated/matmul_i8.c: Regenerate
638         * generated/matmul_r4.c: Regenerate
639         * generated/matmul_r8.c: Regenerate
640
641 2005-04-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
642
643         * configure.ac: Check for ftruncate and chsize.
644         * io/unix.c (fd_truncate): Provide chsize as alternative to
645         ftruncate.
646         * config.h.in: Regenerate.
647         * configure: Regenerate.
648
649 2004-04-29  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
650
651         * intrinsics/rename.c: Add missing #includes.
652
653 2004-04-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
654
655         * AUTHORS, COPYING, INSTALL, NEWS, README: Remove.
656
657 2005-04-26  David Edelsohn  <edelsohn@gnu.org>
658
659         PR libfortran/20930
660         * io/rewind.c (st_rewind): Flush the stream when resetting the mode
661         from WRITING to READING.
662
663 2005-04-22  Paul Thomas  <pault@gcc.gnu.org>
664             Jerry DeLisle  <jvdelisle@verizon.net>
665
666         * io/write.c (nml_write_obj): Provide 1 more byte for ext_name.
667         * io/list_read.c (nml_get_obj_data): Put extra brackets in get_mem
668         call for ext_name.  These fix the bug reported by Jerry DeLisle to
669         the fortran list and are based on his suggested fix.
670
671 2005-04-22  Thomas Koenig  <Thomas.Koenig@online.de>
672
673         PR libfortran/20074
674         PR libfortran/20436
675         PR libfortran/21108
676         * m4/reshape.m4 (reshape_`'rtype_kind):  rs, rex:  New
677         variables, to be used in calculation of return array sizes.
678         Populate return array descriptor if ret->data is NULL.
679         Fix condition for early return (it used to test something
680         undefined if order was used).
681         Remove duplicate check wether pad is used.
682         * intrinsics/reshape_generic.c (reshape_generic): Likewise.
683         Fix a few places where the wrong variables were set.
684         * generated/reshape_i4.c: Regenerated.
685         * generated/reshape_i8.c: Regenerated.
686
687 2005-04-18  Paul  Thomas <pault@gcc.gnu.org>
688
689         * io/list_read.c (nml_touch_nodes, nml_read_obj,
690         nml_get_obj_data): Fix memory leaks in code for derived types.
691
692 2005-04-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
693
694         PR libfortran/20950
695         * io/inquire.c (inquire_via_unit): Check for the gfc_unit being
696         NULL when setting ioparm.sequential.
697
698 2005-04-17  Thomas Koenig  <Thomas.Koenig@online.de>
699
700         PR libfortran/21075
701         * m4/reshape.m4 (reshape_`'rtype_kind):  Change dimension
702         of auxiliary arrays from GFC_MAX_DIMENSIONS - 1 to
703         GFC_MAX_DIMENSIONS.
704         * intrinsics/reshape_generic.c (reshape_generic):  Likewise.
705         * generated/reshape_i4.c:  Regenerated.
706         * generated/reshape_i8.c:  Regenerated.
707
708 2005-04-17 Paul Thomas <pault@gcc.gnu.org>
709
710         * io/list_read.c (eat_separator): at_eol = 1 replaced
711         (zapped at some time?).
712
713 2005-04-17 Paul Thomas <pault@gcc.gnu.org>
714
715         PR libgfortran/12884
716         PR libgfortran/17285
717         PR libgfortran/18122
718         PR libgfortran/18210
719         PR libgfortran/18392
720         PR libgfortran/18591
721         PR libgfortran/18879
722         * io/io.h (nml_ls): Declare.
723         (namelist_info): Modify for arrays.
724         * io/list_read.c (namelist_read): Reduced to call to new functions.
725         (match_namelist_name): Simplified.
726         (nml_query): Handles stdin queries ? and =?. New function.
727         (nml_get_obj_data): Parses object name. New function.
728         (touch_nml_nodes): Marks objects for read. New function.
729         (untouch_nml_nodes): Resets objects. New function.
730         (parse_qualifier): Parses and checks qualifiers. New function
731         (nml_read_object): Reads and stores object data. New function.
732         (eat_separator): No new_record on '/' in namelist.
733         (finish_separator): No new_record on '/' in namelist.
734         (read_logical): Error return for namelist.
735         (read_integer): Error return for namelist.
736         (read_complex): Error return for namelist.
737         (read_real): Error return for namelist.
738         * io/lock.c (library_end): Free extended namelist_info types.
739         * io/transfer.c (st_set_nml_var): Modified for arrays.
740         (st_set_nml_var_dim): Dimension descriptors. New function.
741         * io/write.c (namelist_write): Reduced to call to new functions.
742         (nml_write_obj): Writes output for object. New function.
743         (write_integer): Suppress leading blanks for repeat counts.
744         (write_int): Suppress leading blanks for repeat counts.
745         (write_float): Suppress leading blanks for repeat counts.
746         (output_float): Suppress leading blanks for repeat counts.
747
748 2005-04-15  Thomas Koenig  <Thomas.Koenig@online.de>
749
750         PR libfortran/18495
751         * intrinsics/spread_generic.c (spread):  Remove const from
752         return array descriptor.
753         New variables: rrank (rank of return array),  rs (for
754         calculating the size of the return array), srank (rank
755         of the source array).
756         Generate runtime error if the dim= argument is larger than
757         the rank of the return array.
758         Generate runtime error if the needed rank of the return
759         array is larger than 7.
760         If ret->data is null, populate the return array descriptor
761         and initialize the variables for the actual operation.
762         Otherwise, set ret->dim[0].stride to one if it is zero.
763         Change second, independent use of variable dim to srank.
764
765 2005-04-12  Mike Stump  <mrs@apple.com>
766
767         * configure: Regenerate.
768
769 2005-04-13  Thomas Koenig  <Thomas.Koenig@online.de>
770
771         PR libfortran/19106
772         * m4/iforeach.c (name`'rtype_qual`_'atype_code):  Add TODO
773         that setting correct strides is a front end job.
774         (`m'name`'rtype_qual`_'atype_code):  Likewise.  If mask has
775         a lowest stride of 0, adjust to 1.
776         * m4/ifunction.c (name`'rtype_qual`_'atype_code):  Add TODO
777         that setting correct strides is a front end job.
778         (`m'name`'rtype_qual`_'atype_code):  Likewise.  If mask has
779         a lowest stride of 0, adjust to 1.
780         * maxloc0_4_i4.c: Regenerated
781         * maxloc0_4_i8.c: Regenerated
782         * maxloc0_4_r4.c: Regenerated
783         * maxloc0_4_r8.c: Regenerated
784         * maxloc0_8_i4.c: Regenerated
785         * maxloc0_8_i8.c: Regenerated
786         * maxloc0_8_r4.c: Regenerated
787         * maxloc0_8_r8.c: Regenerated
788         * maxloc1_4_i4.c: Regenerated
789         * maxloc1_4_i8.c: Regenerated
790         * maxloc1_4_r4.c: Regenerated
791         * maxloc1_4_r8.c: Regenerated
792         * maxloc1_8_i4.c: Regenerated
793         * maxloc1_8_i8.c: Regenerated
794         * maxloc1_8_r4.c: Regenerated
795         * maxloc1_8_r8.c: Regenerated
796         * maxval_i4.c: Regenerated
797         * maxval_i8.c: Regenerated
798         * maxval_r4.c: Regenerated
799         * maxval_r8.c: Regenerated
800         * minloc0_4_i4.c: Regenerated
801         * minloc0_4_i8.c: Regenerated
802         * minloc0_4_r4.c: Regenerated
803         * minloc0_4_r8.c: Regenerated
804         * minloc0_8_i4.c: Regenerated
805         * minloc0_8_i8.c: Regenerated
806         * minloc0_8_r4.c: Regenerated
807         * minloc0_8_r8.c: Regenerated
808         * minloc1_4_i4.c: Regenerated
809         * minloc1_4_i8.c: Regenerated
810         * minloc1_4_r4.c: Regenerated
811         * minloc1_4_r8.c: Regenerated
812         * minloc1_8_i4.c: Regenerated
813         * minloc1_8_i8.c: Regenerated
814         * minloc1_8_r4.c: Regenerated
815         * minloc1_8_r8.c: Regenerated
816         * minval_i4.c: Regenerated
817         * minval_i8.c: Regenerated
818         * minval_r4.c: Regenerated
819         * minval_r8.c: Regenerated
820         * product_c4.c: Regenerated
821         * product_c8.c: Regenerated
822         * product_i4.c: Regenerated
823         * product_i8.c: Regenerated
824         * product_r4.c: Regenerated
825         * product_r8.c: Regenerated
826         * sum_c4.c: Regenerated
827         * sum_c8.c: Regenerated
828         * sum_i4.c: Regenerated
829         * sum_i8.c: Regenerated
830         * sum_r4.c: Regenerated
831         * sum_r8.c: Regenerated
832
833 2005-04-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
834
835         PR libfortran/20788
836         * runtime/environ.c (init_unsigned_integer): Function for
837         environment variables we want to be positive.
838         (init_integer): Function to allow negative environment
839         variables (e.g. for GFORTRAN_STDIN_UNIT).
840
841 2005-04-10  Thomas Koenig <Thomas.Koenig@online.de>
842
843         PR libfortran/17992
844         PR libfortran/19568
845         PR libfortran/19595
846         PR libfortran/20005
847         PR libfortran/20092
848         PR libfortran/20131
849         PR libfortran/20661
850         PR libfortran/20744
851         * io/transfer.c (top level): eor_condition: New static variable.
852         (read_sf): Remove unnecessary zeroing of buffer (there is enough
853         information in its length).
854         Return a string of length 0 (to be padded by caller) if EOR was
855         seen previously.
856         Remove erroneous special casing of EOR for standard input.
857         Set eor_condition for non-advancing I/O if an end of line was
858         detected.
859         Increment ioparm.size if necessary.
860         (formatted_transfer):  Skip the function if there is an EOR condition.
861         (data_transfer_init):  Initialize eor_condition to zero (false).
862         (next_record_r):  Clear sf_seen_eor if a \n has been seen already.
863         (finalize_transfer):  If there is an EOR condition, raise the error.
864
865 2005-04-09  Bud Davis  <bdavis@gfortran.org>
866             Steven G. Kargl <kargls@comcast.net>
867
868         PR fortran/19872
869         * io/transfer.c (data_transfer_init): truncate an existing
870         file on the first write.
871
872 2005-04-09  Thomas Koenig  <Thomas.Koenig@online.de>
873
874         PR libfortran/19106
875         PR libfortran/19014
876         * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): ditto.
877         If retarray->data is NULL (i.e. the front end does not
878         know the rank and dimenson of the array), fill in its
879         properties and allocate memory.
880         Change the assertions about rank and dimension of retarray into
881         runtime errors and only check them for retarray->data != NULL.
882         Do the same for correcting the stride from 0 to 1 in retarray.
883         (`m'name`'rtype_qual`_'atype_code): Likewise.
884         * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Likewise.
885         Change assertion about rank of array to runtime error.
886         (`m'name`'rtype_qual`_'atype_code): Likewise.
887         * generated/all_l4.c: Regenerated.
888         * generated/all_l8.c: Regenerated.
889         * generated/any_l4.c: Regenerated.
890         * generated/any_l8.c: Regenerated.
891         * generated/count_4_l4.c: Regenerated.
892         * generated/count_4_l8.c: Regenerated.
893         * generated/count_8_l4.c: Regenerated.
894         * generated/count_8_l8.c: Regenerated.
895         * generated/maxloc0_4_i4.c: Regenerated.
896         * generated/maxloc0_4_i8.c: Regenerated.
897         * generated/maxloc0_4_r4.c: Regenerated.
898         * generated/maxloc0_4_r8.c: Regenerated.
899         * generated/maxloc0_8_i4.c: Regenerated.
900         * generated/maxloc0_8_i8.c: Regenerated.
901         * generated/maxloc0_8_r4.c: Regenerated.
902         * generated/maxloc0_8_r8.c: Regenerated.
903         * generated/maxloc1_4_i4.c: Regenerated.
904         * generated/maxloc1_4_i8.c: Regenerated.
905         * generated/maxloc1_4_r4.c: Regenerated.
906         * generated/maxloc1_4_r8.c: Regenerated.
907         * generated/maxloc1_8_i4.c: Regenerated.
908         * generated/maxloc1_8_i8.c: Regenerated.
909         * generated/maxloc1_8_r4.c: Regenerated.
910         * generated/maxloc1_8_r8.c: Regenerated.
911         * generated/maxval_i4.c: Regenerated.
912         * generated/maxval_i8.c: Regenerated.
913         * generated/maxval_r4.c: Regenerated.
914         * generated/maxval_r8.c: Regenerated.
915         * generated/minloc0_4_i4.c: Regenerated.
916         * generated/minloc0_4_i8.c: Regenerated.
917         * generated/minloc0_4_r4.c: Regenerated.
918         * generated/minloc0_4_r8.c: Regenerated.
919         * generated/minloc0_8_i4.c: Regenerated.
920         * generated/minloc0_8_i8.c: Regenerated.
921         * generated/minloc0_8_r4.c: Regenerated.
922         * generated/minloc0_8_r8.c: Regenerated.
923         * generated/minloc1_4_i4.c: Regenerated.
924         * generated/minloc1_4_i8.c: Regenerated.
925         * generated/minloc1_4_r4.c: Regenerated.
926         * generated/minloc1_4_r8.c: Regenerated.
927         * generated/minloc1_8_i4.c: Regenerated.
928         * generated/minloc1_8_i8.c: Regenerated.
929         * generated/minloc1_8_r4.c: Regenerated.
930         * generated/minloc1_8_r8.c: Regenerated.
931         * generated/minval_i4.c: Regenerated.
932         * generated/minval_i8.c: Regenerated.
933         * generated/minval_r4.c: Regenerated.
934         * generated/minval_r8.c: Regenerated.
935         * generated/product_c4.c: Regenerated.
936         * generated/product_c8.c: Regenerated.
937         * generated/product_i4.c: Regenerated.
938         * generated/product_i8.c: Regenerated.
939         * generated/product_r4.c: Regenerated.
940         * generated/product_r8.c: Regenerated.
941         * generated/sum_c4.c: Regenerated.
942         * generated/sum_c8.c: Regenerated.
943         * generated/sum_i4.c: Regenerated.
944         * generated/sum_i8.c: Regenerated.
945         * generated/sum_r4.c: Regenerated.
946         * generated/sum_r8.c: Regenerated.
947
948 2005-04-09  Thomas Koenig <Thomas.Koenig@online.de>
949
950         PR libfortran/20163
951         * runtime/string.c (compare0): Use fstrlen() to
952         strip trailing blanks from option string.
953
954 2005-04-09  Andrew Pinski  <pinskia@physics.uc.edu>
955
956         PR fortran/13257
957         * format.c (parse_format_list): Allow an optional comma
958         between descriptors.
959
960 2005-04-08  Eric Botcazou  <ebotcazou@libertysurf.fr>
961
962         * io/backspace.c (unformatted_backspace): Do not dereference
963         the pointer to the stream.
964
965 2005-04-07  Andrew Pinski  <pinskia@physics.uc.edu>
966
967         PR libfortran/20766
968         * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
969         "-Wl,-single_module".
970         * configure: Regenerate.
971         * Makefile.am (libgfortran_la_LDFLAGS): Add extra_ldflags_libgfortran.
972         * Makefile.in: Regenerate.
973
974 2005-04-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
975
976         PR libfortran/20755
977         * write.c (write_float): A G edit descriptor may locally change
978         the scale factor, but it needs to be restored afterwards.
979
980 2005-04-03  Dale Ranta  <dir@lanl.gov>
981             Francois-Xavier Coudert  <coudert@clipper.ens.fr>
982
983         PR libfortran/20068
984         PR libfortran/20125
985         PR libfortran/20156
986         PR libfortran/20471
987         * io/backspace.c (unformatted_backspace): Fix error in arithmetic.
988         (st_backspace): When in WRITING mode, we flush and falling back
989         into READING mode. In all cases, correctly position the stream.
990
991 2005-03-31  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
992
993         PR libfortran/20660
994         * io/inquire.c (inquire_via_unit): Non-opened units should still be
995         reported by an INQUIRE statement as existing.
996         * io/transfer.c (data_transfer_init): Never accept negative units.
997
998 2005-03-29  Dale Ranta  <dir@lanl.gov>
999             Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1000
1001         PR libfortran/20163
1002         * io/open.c (st_open): call library_end() before returning even if
1003         an error arises.
1004
1005 2005-03-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1006
1007         PR libfortran/19678
1008         * list_read.c (next_char, eat_separator, finish_separator, read_real)
1009         (namelist_read): Add support for '\r' as well as '\n' as EOL
1010         character.
1011
1012         PR libfortran/19679
1013         * list_read.c (read_sf): Add a '\r' in a test to support DOS
1014         line-endings when line length is exceeded.
1015
1016 2005-03-25  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1017
1018         PR libfortran/15332
1019         * io/format.c (parse_format_list): format node for colon edit
1020         descriptor needs a repeat counter set to 1.
1021
1022 2005-02-24  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1023
1024         * config.h.in: Regenerate.
1025
1026 2005-02-23  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1027
1028         PR libfortran/18025
1029         * write.c (output_float): Handling the "F0.d" format similarly as
1030         commercial compilers.
1031
1032 2005-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1033
1034         * Makefile.am: Added new files.
1035         * Makefile.in: Regenerate.
1036         * aclocal.m4: Regenerate.
1037         * configure.ac: add checks for signal.h headers file, as well as
1038         following functions: chdir, strerror, getlogin, gethostname, kill,
1039         link, symlink, perror, sleep, time.
1040         * configure: Regenerate.
1041         * intrinsics/chdir.c, intrinsics/gerror.c, intrinsics/getlog.c,
1042         intrinsics/hostnm.c, intrinsics/ierrno.c, intrinsics/kill.c,
1043         intrinsics/link.c, intrinsics/perror.c, intrinsics/rename.c,
1044         intrinsics/sleep.c, intrinsics/symlnk.c, intrinsics/time.c: Newly
1045         implementend g77 intrinsics.
1046
1047 2005-03-21  Zack Weinberg  <zack@codesourcery.com>
1048
1049         * configure.ac: Do not invoke TL_AC_GCC_VERSION.
1050         In all substitutions, leave gcc_version to be expanded by the Makefile.
1051         * aclocal.m4, configure: Regenerate.
1052         * Makefile.am: Set gcc_version.
1053         * Makefile.in: Regenerate.
1054
1055 2005-03-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1056
1057         PR libfortran/20257
1058         * open.c (new_unit): set record length to max_offset rather than
1059           using a hard-coded limit (which was too low).
1060
1061 2005-03-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1062
1063         PR libfortran/20480
1064         * write.c (output_float): special check when writing 0.0 with
1065           EN and ES formats.
1066
1067 2005-03-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1068
1069         PR libfortran/20124
1070         * write.c (output_float): Adds a nzero_real variable to store
1071         the number of leading zeros whatever the format width is. Corrects
1072         the rounding of numbers less than 10^(-width). Fixes typo in an
1073         error message. Updates copyright years
1074
1075 2005-02-27  Toon Moene  <toon@moene.indiv.nluug.nl>
1076
1077         * runtime/environ.c: Update copyright years.
1078
1079 2005-02-27  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
1080
1081         * io/write.c: Update copyright years.
1082
1083 2005-02-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1084
1085         PR libfortran/20101
1086         * io/write.c (output_float): Added special check for value 0.0 in
1087         PE format.
1088
1089 2004-02-27  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
1090
1091         * io/write.c (output_float): Fix typo in condition.
1092
1093 2005-02-25  Peter O'Gorman  <peter@pogma.com>
1094             Toon Moene  <toon@moene.indiv.nluug.nl>
1095
1096         PR libgfortran/17748
1097         * runtime/environ.c: Remove references to environ.
1098         (show_variables): remove GFORTRAN_UNBUFFERED_* and
1099         GFORTRAN_NAME_* because they require environ.
1100         (pattern_scan): Remove function.
1101
1102 2004-02-22  Paul Thomas <paulthomas2@wannado.fr>
1103             Bud Davis  <bdavis@gfortran.org>
1104
1105         * io/list_read.c (read_real): Handle separators properly
1106         in list directed read.
1107
1108 2004-02-21  Bud Davis  <bdavis@gfortran.org>
1109
1110         PR fortran/20086
1111         * io/transfer.c (write_constant_string): accept an 'h' as
1112         the start of a hollerith format string.
1113
1114 2005-02-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
1115
1116         PR libfortran/19302
1117         * intrinsics/c99_functions.c (nextafterf): Special-case infinite
1118         numbers.
1119
1120 2005-02-21  Steven G. Kargl  <kargls@comcast.net>
1121
1122         * io/write.c (output_float):  Typo in error meesage.
1123
1124 2005-02-20  Steven G. Kargl  <kargls@comcast.net>
1125
1126         PR 20085
1127         * intrinsic/args.c (iargc): Off by 1.
1128
1129 2005-02-19  Steven G. Kargl  <kargls@comcast.net>
1130
1131       *  intrinsic/date_and_time.c: Fix conformance problems.
1132
1133 2005-02-01  Paul Thomas <paulthomas2@wanadoo.fr>
1134
1135         PR libgfortran/19363
1136         PR libgfortran/19691
1137         * libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.
1138
1139 2005-01-30  Bud Davis  <bdavis@gfortran.org>
1140
1141         PR fortran/19647
1142         * io/inquire.c (inquire_via_unit): Use correct variable for
1143         pad.
1144
1145 2005-01-29  Thomas Koenig  <Thomas.Koenig@online.de>
1146
1147         PR libfortran/19595
1148         * io/transfer.c (data_transfer_init): eor requires advance="NO".
1149
1150 2005-01-25  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
1151
1152         PR libfortran/19524
1153         * io/read.c (read_f): Don't free uninitialized pointer.
1154
1155 2005-01-23  James A. Morrison  <phython@gcc.gnu.org>
1156         Paul Brook  <paul@codesourcery.com>
1157
1158         PR fortran/19294
1159         * Makefile.am: Add transpose_c4.c and transpose_c8.c.
1160         * intrinsics/cshift0.c: Use separate optimized loops for complex types.
1161         * m4/transpose.m4: Include type letter in function name.
1162         * Makefile.in: Regenerate.
1163         * generated/transpose_*.c: Regenerate.
1164
1165 2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>
1166
1167         PR libfortran/19451
1168         * io/transfer.c (finalize_transfer):  Don't do anything if
1169         there is an error condition.
1170
1171 2005-01-22  David Edelsohn  <edelsohn@gnu.org>
1172
1173         PR libgfortran/19052
1174         * libgfortran.h (options_t): Add stderr_unit.
1175         * io/io.h (error_stream): Declare.
1176         * io/open.c (new_unit): Do not terminate abnormally if opening
1177         file preconnected to stdin, stdout, or stderr.
1178         * io/unit.c (init_units): Initialize stderr_unit.
1179         * io/unix.c (error_stream): New function.
1180         * runtime/environ.c (GFORTRAN_STDERR_UNIT): New environment variable.
1181
1182 2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>
1183
1184         PR libfortran/18982
1185         * io/unix.c (regular_file):  No need to change flags->action
1186         if an error occurs.  Document this.
1187         No need to call stat() for STATUS_OLD, open() will
1188         fail anyway.
1189         For ACTION_UNSPECIFIED, try open for read-write, then for
1190         read-only if open fails with EACCES, then for write-only
1191         if that fails with EACCES again.
1192         * io/unix.c (open_external): Document changed behavior of
1193         regular_file.
1194
1195 2005-01-22  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
1196
1197         PR fortran/19194
1198         * io/io.h (st_parameter): Use 'GFC_INTEGER_4' instead of 'int',
1199         use CHARACTER macro for definition of string valued paramters.
1200
1201 2005-01-22  Bud Davis  <bdavis9659@comcast.net>
1202
1203         PR fortran/19314
1204         * io/inquire.c(inquire_via_unit): implement POSITION=.
1205         * io/transfer.c(next_record): update position for
1206         INQUIRE.
1207         * io/rewind.c(st_rewind): update position for
1208         INQUIRE.
1209
1210 2005-01-16  Bud Davis  <bdavis9659@comcast.net>
1211
1212         PR fortran/18778
1213         * io/transfer.c (us_read): no bytes available is not a
1214         runtime error.
1215
1216 2005-01-15  Bud Davis  <bdavis9659@comcast.net>
1217
1218         PR fortran/18983
1219         * io/transfer.c (st_write_done): only truncate when it
1220         is required.
1221
1222 2005-01-12  Toon Moene  <toon@moene.indiv.nluug.nl>
1223
1224         PR libfortran/19280
1225         c99_protos.h: License changed to GPL+exception.
1226         libgfortran.h: Ditto.
1227         intrinsics/abort.c: Ditto.
1228         intrinsics/args.c: Ditto.
1229         intrinsics/associated.c: Ditto.
1230         intrinsics/bessel.c: Ditto.
1231         intrinsics/c99_functions.c: Ditto.
1232         intrinsics/cpu_time.c: Ditto.
1233         intrinsics/cshift0.c: Ditto.
1234         intrinsics/date_and_time.c: Ditto.
1235         intrinsics/env.c: Ditto.
1236         intrinsics/eoshift0.c: Ditto.
1237         intrinsics/eoshift2.c: Ditto.
1238         intrinsics/erf.c: Ditto.
1239         intrinsics/etime.c: Ditto.
1240         intrinsics/exit.c: Ditto.
1241         intrinsics/flush.c: Ditto.
1242         intrinsics/fnum.c: Ditto.
1243         intrinsics/getXid.c: Ditto.
1244         intrinsics/getcwd.c: Ditto.
1245         intrinsics/ishftc.c: Ditto.
1246         intrinsics/mvbits.c: Ditto.
1247         intrinsics/pack_generic.c: Ditto.
1248         intrinsics/rand.c: Ditto.
1249         intrinsics/random.c: Ditto.
1250         intrinsics/reshape_generic.c: Ditto.
1251         intrinsics/reshape_packed.c: Ditto.
1252         intrinsics/size.c: Ditto.
1253         intrinsics/spread_generic.c: Ditto.
1254         intrinsics/stat.c: Ditto.
1255         intrinsics/string_intrinsics.c: Ditto.
1256         intrinsics/system.c: Ditto.
1257         intrinsics/system_clock.c: Ditto.
1258         intrinsics/transpose_generic.c: Ditto.
1259         intrinsics/umask.c: Ditto.
1260         intrinsics/unlink.c: Ditto.
1261         intrinsics/unpack_generic.c: Ditto.
1262         io/backspace.c: Ditto.
1263         io/close.c: Ditto.
1264         io/endfile.c: Ditto.
1265         io/format.c: Ditto.
1266         io/inquire.c: Ditto.
1267         io/io.h: Ditto.
1268         io/list_read.c: Ditto.
1269         io/lock.c: Ditto.
1270         io/open.c: Ditto.
1271         io/read.c: Ditto.
1272         io/rewind.c: Ditto.
1273         io/transfer.c: Ditto.
1274         io/unit.c: Ditto.
1275         io/unix.c: Ditto.
1276         io/write.c: Ditto.
1277         m4/all.m4: Ditto.
1278         m4/any.m4: Ditto.
1279         m4/cexp.m4: Ditto.
1280         m4/chyp.m4: Ditto.
1281         m4/count.m4: Ditto.
1282         m4/cshift1.m4: Ditto.
1283         m4/ctrig.m4: Ditto.
1284         m4/dotprod.m4: Ditto.
1285         m4/dotprodc.m4: Ditto.
1286         m4/dotprodl.m4: Ditto.
1287         m4/eoshift1.m4: Ditto.
1288         m4/eoshift3.m4: Ditto.
1289         m4/exponent.m4: Ditto.
1290         m4/fraction.m4: Ditto.
1291         m4/head.m4: Ditto.
1292         m4/iforeach.m4: Ditto.
1293         m4/ifunction.m4: Ditto.
1294         m4/in_pack.m4: Ditto.
1295         m4/in_unpack.m4: Ditto.
1296         m4/iparm.m4: Ditto.
1297         m4/matmul.m4: Ditto.
1298         m4/matmull.m4: Ditto.
1299         m4/maxloc0.m4: Ditto.
1300         m4/maxloc1.m4: Ditto.
1301         m4/maxval.m4: Ditto.
1302         m4/minloc0.m4: Ditto.
1303         m4/minloc1.m4: Ditto.
1304         m4/minval.m4: Ditto.
1305         m4/mtype.m4: Ditto.
1306         m4/nearest.m4: Ditto.
1307         m4/pow.m4: Ditto.
1308         m4/product.m4: Ditto.
1309         m4/reshape.m4: Ditto.
1310         m4/set_exponent.m4: Ditto.
1311         m4/shape.m4: Ditto.
1312         m4/specific.m4: Ditto.
1313         m4/specific2.m4: Ditto.
1314         m4/sum.m4: Ditto.
1315         m4/transpose.m4: Ditto.
1316         m4/types.m4: Ditto.
1317         runtime/environ.c: Ditto.
1318         runtime/error.c: Ditto.
1319         runtime/in_pack_generic.c: Ditto.
1320         runtime/in_unpack_generic.c: Ditto.
1321         runtime/main.c: Ditto.
1322         runtime/memory.c: Ditto.
1323         runtime/normalize.c: Ditto.
1324         runtime/pause.c: Ditto.
1325         runtime/select.c: Ditto.
1326         runtime/stop.c: Ditto.
1327         runtime/string.c: Ditto.
1328         generated/_abs_c4.f90: Regenerated.
1329         generated/_abs_c8.f90: Regenerated.
1330         generated/_abs_i4.f90: Regenerated.
1331         generated/_abs_i8.f90: Regenerated.
1332         generated/_abs_r4.f90: Regenerated.
1333         generated/_abs_r8.f90: Regenerated.
1334         generated/_acos_r4.f90: Regenerated.
1335         generated/_acos_r8.f90: Regenerated.
1336         generated/_aint_r4.f90: Regenerated.
1337         generated/_aint_r8.f90: Regenerated.
1338         generated/_anint_r4.f90: Regenerated.
1339         generated/_anint_r8.f90: Regenerated.
1340         generated/_asin_r4.f90: Regenerated.
1341         generated/_asin_r8.f90: Regenerated.
1342         generated/_atan2_r4.f90: Regenerated.
1343         generated/_atan2_r8.f90: Regenerated.
1344         generated/_atan_r4.f90: Regenerated.
1345         generated/_atan_r8.f90: Regenerated.
1346         generated/_conjg_c4.f90: Regenerated.
1347         generated/_conjg_c8.f90: Regenerated.
1348         generated/_cos_c4.f90: Regenerated.
1349         generated/_cos_c8.f90: Regenerated.
1350         generated/_cos_r4.f90: Regenerated.
1351         generated/_cos_r8.f90: Regenerated.
1352         generated/_cosh_r4.f90: Regenerated.
1353         generated/_cosh_r8.f90: Regenerated.
1354         generated/_dim_i4.f90: Regenerated.
1355         generated/_dim_i8.f90: Regenerated.
1356         generated/_dim_r4.f90: Regenerated.
1357         generated/_dim_r8.f90: Regenerated.
1358         generated/_exp_c4.f90: Regenerated.
1359         generated/_exp_c8.f90: Regenerated.
1360         generated/_exp_r4.f90: Regenerated.
1361         generated/_exp_r8.f90: Regenerated.
1362         generated/_log10_r4.f90: Regenerated.
1363         generated/_log10_r8.f90: Regenerated.
1364         generated/_log_c4.f90: Regenerated.
1365         generated/_log_c8.f90: Regenerated.
1366         generated/_log_r4.f90: Regenerated.
1367         generated/_log_r8.f90: Regenerated.
1368         generated/_mod_i4.f90: Regenerated.
1369         generated/_mod_i8.f90: Regenerated.
1370         generated/_mod_r4.f90: Regenerated.
1371         generated/_mod_r8.f90: Regenerated.
1372         generated/_sign_i4.f90: Regenerated.
1373         generated/_sign_i8.f90: Regenerated.
1374         generated/_sign_r4.f90: Regenerated.
1375         generated/_sign_r8.f90: Regenerated.
1376         generated/_sin_c4.f90: Regenerated.
1377         generated/_sin_c8.f90: Regenerated.
1378         generated/_sin_r4.f90: Regenerated.
1379         generated/_sin_r8.f90: Regenerated.
1380         generated/_sinh_r4.f90: Regenerated.
1381         generated/_sinh_r8.f90: Regenerated.
1382         generated/_sqrt_c4.f90: Regenerated.
1383         generated/_sqrt_c8.f90: Regenerated.
1384         generated/_sqrt_r4.f90: Regenerated.
1385         generated/_sqrt_r8.f90: Regenerated.
1386         generated/_tan_r4.f90: Regenerated.
1387         generated/_tan_r8.f90: Regenerated.
1388         generated/_tanh_r4.f90: Regenerated.
1389         generated/_tanh_r8.f90: Regenerated.
1390         generated/all_l4.c: Regenerated.
1391         generated/all_l8.c: Regenerated.
1392         generated/any_l4.c: Regenerated.
1393         generated/any_l8.c: Regenerated.
1394         generated/count_4_l4.c: Regenerated.
1395         generated/count_4_l8.c: Regenerated.
1396         generated/count_8_l4.c: Regenerated.
1397         generated/count_8_l8.c: Regenerated.
1398         generated/cshift1_4.c: Regenerated.
1399         generated/cshift1_8.c: Regenerated.
1400         generated/dotprod_c4.c: Regenerated.
1401         generated/dotprod_c8.c: Regenerated.
1402         generated/dotprod_i4.c: Regenerated.
1403         generated/dotprod_i8.c: Regenerated.
1404         generated/dotprod_l4.c: Regenerated.
1405         generated/dotprod_l8.c: Regenerated.
1406         generated/dotprod_r4.c: Regenerated.
1407         generated/dotprod_r8.c: Regenerated.
1408         generated/eoshift1_4.c: Regenerated.
1409         generated/eoshift1_8.c: Regenerated.
1410         generated/eoshift3_4.c: Regenerated.
1411         generated/eoshift3_8.c: Regenerated.
1412         generated/exp_c4.c: Regenerated.
1413         generated/exp_c8.c: Regenerated.
1414         generated/exponent_r4.c: Regenerated.
1415         generated/exponent_r8.c: Regenerated.
1416         generated/fraction_r4.c: Regenerated.
1417         generated/fraction_r8.c: Regenerated.
1418         generated/hyp_c4.c: Regenerated.
1419         generated/hyp_c8.c: Regenerated.
1420         generated/in_pack_i4.c: Regenerated.
1421         generated/in_pack_i8.c: Regenerated.
1422         generated/in_unpack_i4.c: Regenerated.
1423         generated/in_unpack_i8.c: Regenerated.
1424         generated/matmul_c4.c: Regenerated.
1425         generated/matmul_c8.c: Regenerated.
1426         generated/matmul_i4.c: Regenerated.
1427         generated/matmul_i8.c: Regenerated.
1428         generated/matmul_l4.c: Regenerated.
1429         generated/matmul_l8.c: Regenerated.
1430         generated/matmul_r4.c: Regenerated.
1431         generated/matmul_r8.c: Regenerated.
1432         generated/maxloc0_4_i4.c: Regenerated.
1433         generated/maxloc0_4_i8.c: Regenerated.
1434         generated/maxloc0_4_r4.c: Regenerated.
1435         generated/maxloc0_4_r8.c: Regenerated.
1436         generated/maxloc0_8_i4.c: Regenerated.
1437         generated/maxloc0_8_i8.c: Regenerated.
1438         generated/maxloc0_8_r4.c: Regenerated.
1439         generated/maxloc0_8_r8.c: Regenerated.
1440         generated/maxloc1_4_i4.c: Regenerated.
1441         generated/maxloc1_4_i8.c: Regenerated.
1442         generated/maxloc1_4_r4.c: Regenerated.
1443         generated/maxloc1_4_r8.c: Regenerated.
1444         generated/maxloc1_8_i4.c: Regenerated.
1445         generated/maxloc1_8_i8.c: Regenerated.
1446         generated/maxloc1_8_r4.c: Regenerated.
1447         generated/maxloc1_8_r8.c: Regenerated.
1448         generated/maxval_i4.c: Regenerated.
1449         generated/maxval_i8.c: Regenerated.
1450         generated/maxval_r4.c: Regenerated.
1451         generated/maxval_r8.c: Regenerated.
1452         generated/minloc0_4_i4.c: Regenerated.
1453         generated/minloc0_4_i8.c: Regenerated.
1454         generated/minloc0_4_r4.c: Regenerated.
1455         generated/minloc0_4_r8.c: Regenerated.
1456         generated/minloc0_8_i4.c: Regenerated.
1457         generated/minloc0_8_i8.c: Regenerated.
1458         generated/minloc0_8_r4.c: Regenerated.
1459         generated/minloc0_8_r8.c: Regenerated.
1460         generated/minloc1_4_i4.c: Regenerated.
1461         generated/minloc1_4_i8.c: Regenerated.
1462         generated/minloc1_4_r4.c: Regenerated.
1463         generated/minloc1_4_r8.c: Regenerated.
1464         generated/minloc1_8_i4.c: Regenerated.
1465         generated/minloc1_8_i8.c: Regenerated.
1466         generated/minloc1_8_r4.c: Regenerated.
1467         generated/minloc1_8_r8.c: Regenerated.
1468         generated/minval_i4.c: Regenerated.
1469         generated/minval_i8.c: Regenerated.
1470         generated/minval_r4.c: Regenerated.
1471         generated/minval_r8.c: Regenerated.
1472         generated/nearest_r4.c: Regenerated.
1473         generated/nearest_r8.c: Regenerated.
1474         generated/pow_c4_i4.c: Regenerated.
1475         generated/pow_c4_i8.c: Regenerated.
1476         generated/pow_c8_i4.c: Regenerated.
1477         generated/pow_c8_i8.c: Regenerated.
1478         generated/pow_i4_i4.c: Regenerated.
1479         generated/pow_i4_i8.c: Regenerated.
1480         generated/pow_i8_i4.c: Regenerated.
1481         generated/pow_i8_i8.c: Regenerated.
1482         generated/pow_r4_i4.c: Regenerated.
1483         generated/pow_r4_i8.c: Regenerated.
1484         generated/pow_r8_i4.c: Regenerated.
1485         generated/pow_r8_i8.c: Regenerated.
1486         generated/product_c4.c: Regenerated.
1487         generated/product_c8.c: Regenerated.
1488         generated/product_i4.c: Regenerated.
1489         generated/product_i8.c: Regenerated.
1490         generated/product_r4.c: Regenerated.
1491         generated/product_r8.c: Regenerated.
1492         generated/reshape_i4.c: Regenerated.
1493         generated/reshape_i8.c: Regenerated.
1494         generated/set_exponent_r4.c: Regenerated.
1495         generated/set_exponent_r8.c: Regenerated.
1496         generated/shape_i4.c: Regenerated.
1497         generated/shape_i8.c: Regenerated.
1498         generated/sum_c4.c: Regenerated.
1499         generated/sum_c8.c: Regenerated.
1500         generated/sum_i4.c: Regenerated.
1501         generated/sum_i8.c: Regenerated.
1502         generated/sum_r4.c: Regenerated.
1503         generated/sum_r8.c: Regenerated.
1504         generated/transpose_i4.c: Regenerated.
1505         generated/transpose_i8.c: Regenerated.
1506         generated/trig_c4.c: Regenerated.
1507         generated/trig_c8.c: Regenerated.
1508
1509 2005-01-07  Bud Davis  <bdavis9659@comcast.net>
1510
1511         PR fortran/18398
1512         * transfer.c (next_record_r): always skip the
1513         eol search if it was found during sf_read.
1514
1515 2004-12-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1516
1517         * libgfortran/libgfortran.h (GFC_UINTEGER_1, GFC_UINTEGER_2):
1518         Define.
1519         * intrinsics/ishftc.c: Update copyright years.
1520         (ishftc8): Change 'shift' and 'size' to GFC_INTEGER_4.
1521         * intrinsics/mvbits.c: Correct non-ASCII character in my name.
1522         Add implementations for GFC_INTEGER_1 and GFC_INTEGER_2.
1523
1524 2004-12-23  Bud Davis  <bdavis9659@comcast.net>
1525
1526         PR fortran/19071
1527         * io/tranfer.c (formatted_transfer): moved check for
1528         format reversion inside the processing loop.
1529
1530 2004-12-19  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
1531
1532         PR libfortran/19074
1533         * libgfortran.h (itoa): Rename to gfc_itoa.
1534         * io/write.c (itoa): Same.
1535         * runtime/environ.c (itoa): Same.
1536         * runtime/error.c (itoa): Same.
1537
1538 2004-12-15  Bud Davis  <bdavis9659@comcast.net>
1539             Steven G. Kargl  <kargls@comcast.net>
1540
1541         PR fortran/17597
1542         * io/list_read.c (read_real): do not push back a comma when
1543         it delimits a real value without a decimal point
1544
1545 2004-12-14  Steve Ellcey  <sje@cup.hp.com>
1546
1547         * libgfortran/io/transfer.c (us_read): Use memcpy/memset
1548         instead of assignment to fill unaligned buffer.
1549         (us_write): Ditto.
1550         (next_record_w): Ditto.
1551
1552 2004-12-14  Steven G. Kargl  <kargls@comcast.net>
1553
1554         PR libfortran/18966
1555         * gfortran.h: typedef GFC_INTEGER_1 and GFC_INTEGER_2
1556         * intrinsics/cshift0.c (cshift0_1,cshift0_2): New functions.
1557         * intrinsics/eoshift0.c (eoshift0_1,eoshift0_2): New functions.
1558         * intrinsics/eoshift2.c (eoshift2_1,eoshift2_2): New functions.
1559
1560 2004-12-13  David Edelsohn  <edelsohn@gnu.org>
1561
1562         * io/transfer.c (read_sf): Change bitwise "and" to logical "and".
1563
1564 2004-12-12  Richard Henderson  <rth@redhat.com>
1565
1566         * intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
1567         intrinsics/pack_generic.c, intrinsics/reshape_generic.c,
1568         intrinsics/spread_generic.c, intrinsics/transpose_generic.c,
1569         intrinsics/unpack_generic.c, m4/cshift1.m4, m4/dotprod.m4,
1570         m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4, m4/eoshift3.m4,
1571         m4/iforeach.m4, m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4,
1572         m4/reshape.m4, m4/shape.m4, m4/transpose.m4: Use standard prefix
1573         instead of "__".
1574         * generated/*: Rebuild.
1575
1576 2004-12-12  Richard Henderson  <rth@redhat.com>
1577
1578         * acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY): New.
1579         (LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT): New.
1580         (LIBGFOR_CHECK_ATTRIBUTE_ALIAS): New.
1581         * configure.ac: Use them.
1582         * configure, config.h.in, aclocal.m4: Rebuild.
1583         * libgfortran.h (prefix): Remove.
1584         (PREFIX, IPREFIX): New.
1585         (sym_rename, sym_rename1, sym_rename2): New.
1586         (internal_proto, export_proto, export_proto_np): New.
1587         (iexport_proto, iexport): New.
1588         (iexport_data_proto, iexport_data): New.
1589         * intrinsics/abort.c, intrinsics/args.c, intrinsics/associated.c,
1590         intrinsics/cpu_time.c, intrinsics/cshift0.c,
1591         intrinsics/date_and_time.c, intrinsics/env.c, intrinsics/eoshift0.c,
1592         intrinsics/eoshift2.c, intrinsics/etime.c, intrinsics/exit.c,
1593         intrinsics/flush.c, intrinsics/fnum.c, intrinsics/getXid.c,
1594         intrinsics/getcwd.c, intrinsics/ishftc.c, intrinsics/mvbits.c,
1595         intrinsics/pack_generic.c, intrinsics/rand.c, intrinsics/random.c,
1596         intrinsics/reshape_generic.c, intrinsics/size.c,
1597         intrinsics/spread_generic.c, intrinsics/stat.c,
1598         intrinsics/string_intrinsics.c, intrinsics/system.c,
1599         intrinsics/system_clock.c, intrinsics/transpose_generic.c,
1600         intrinsics/umask.c, intrinsics/unlink.c, intrinsics/unpack_generic.c,
1601         io/backspace.c, io/close.c, io/endfile.c, io/inquire.c, io/io.h,
1602         io/open.c, io/rewind.c, io/transfer.c, libgfortran.h, m4/cshift1.m4,
1603         m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4,
1604         m4/eoshift3.m4, m4/exponent.m4, m4/fraction.m4, m4/iforeach.m4,
1605         m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/nearest.m4,
1606         m4/pow.m4, m4/reshape.m4, m4/set_exponent.m4, m4/shape.m4,
1607         m4/transpose.m4, runtime/environ.c, runtime/error.c,
1608         runtime/in_pack_generic.c, runtime/in_unpack_generic.c,
1609         runtime/main.c, runtime/memory.c, runtime/pause.c, runtime/select.c,
1610         runtime/stop.c: Use them to mark symbols internal or external.
1611         * generated/*: Rebuild.
1612
1613 2004-12-09  David Edelsohn  <edelsohn@gnu.org>
1614
1615         PR bootstrap/18895
1616         Revert 2004-12-07 change.
1617         * Makefile.am (AM_MAKEFLAGS): Delete.
1618         * Makefile.in: Regenerate.
1619
1620 2004-12-07  Steve Ellcey  <sje@cup.hp.com>
1621
1622         * libgfortran/Makefile.am (AM_MAKEFLAGS): New.
1623         * libgfortran/Makefile.in: Regenerate
1624
1625 2004-12-07  Steve Ellcey  <sje@cup.hp.com>
1626
1627         * io/io.h (open_external): Change prototype.
1628         * io/unix.c (regular_file): Change prototype and set flags->action if
1629         needed.
1630         (open_external): Ditto.
1631         * io/open.c (new_unit): Let open_external set flags->action.
1632
1633 2004-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
1634
1635         * configure.ac: Check for ieeefp.h.  Check for fabsf in libm.
1636         * configure: Regenerate.
1637         * config.h.in: Likewise.
1638         * c99_protos.h: New file.
1639         * libgfortran.h: Include c99_protos.h and conditionally ieeefp.h.
1640         * intrinsics/c99_functions.c (fabsf): New function.
1641
1642 2004-12-06  Richard Henderson  <rth@redhat.com>
1643
1644         * intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
1645         intrinsics/pack_generic.c, intrinsics/string_intrinsics.c,
1646         intrinsics/transpose_generic.c, m4/ifunction.m4, m4/matmul.m4,
1647         m4/matmull.m4, m4/transpose.m4: Use internal_malloc_size instead
1648         of internal_malloc.
1649         * generated/*: Rebuild.
1650
1651 2004-12-06  Richard Henderson  <rth@redhat.com>
1652
1653         * intrinsics/c99_functions.c, intrinsics/eoshift0.c,
1654         intrinsics/eoshift2.c, intrinsics/exit.c, intrinsics/flush.c,
1655         intrinsics/ishftc.c, intrinsics/mvbits.c, intrinsics/pack_generic.c,
1656         intrinsics/random.c, intrinsics/reshape_generic.c, intrinsics/size.c,
1657         intrinsics/spread_generic.c, intrinsics/stat.c,
1658         intrinsics/string_intrinsics.c, intrinsics/system_clock.c,
1659         intrinsics/transpose_generic.c, intrinsics/unlink.c,
1660         intrinsics/unpack_generic.c, io/backspace.c, io/format.c,
1661         io/list_read.c, io/lock.c, io/open.c, io/transfer.c, io/unix.c,
1662         io/write.c, runtime/environ.c, runtime/error.c,
1663         runtime/in_pack_generic.c, runtime/in_unpack_generic.c, runtime/main.c,
1664         runtime/memory.c, runtime/pause.c, runtime/stop.c,
1665         runtime/string.c: Whitespace fixes.
1666
1667 2004-12-06  Richard Henderson  <rth@redhat.com>
1668
1669         * Makefile.am: Generate all m4 output under $(srcdir).
1670         * Makefile.in: Regenerate.
1671
1672 2004-12-02  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1673
1674         PR fortran/18710
1675         * io/transfer.c (unformatted_read, unformatted_write): width of
1676         a COMPLEX is twice its kind.
1677
1678 2004-12-02  Richard Sandiford  <rsandifo@redhat.com>
1679
1680         * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
1681         * configure, aclocal.m4, Makefile.in: Regenerate.
1682
1683 2004-12-02  Bud Davis  <bdavis9659@comcast.net>
1684
1685         PR libfortran/18284
1686         * io/unix.c (fd_alloc_w_at): Update file_length when extending.
1687         * io/backspace.c (formatted_backspace): Reset endfile after backspace.
1688
1689 2004-12-02  Bud Davis  <bdavis9659@comcast.net>
1690
1691         * io/inquire.c (inquire_via_unit): do not allow a direct access
1692         file to be opened for sequential I/O.
1693
1694 2004-12-02  Steven G. Kargl  <kargls@comcast.net>
1695         Paul Brook  <paul@codesourcery.com>
1696
1697         * intrinsics/flush.c: New file.
1698         * intrinsics/fnum.c: ditto
1699         * intrinsics/stat.c: ditto
1700         * io/io.h (unit_to_fd): Add prototype.
1701         * io/unix.c (unit_to_fd): New function.
1702         * configure.ac: Add test for members of struct stat.  Check for
1703         sys/types.h and sys/stat.h
1704         * Makefile.am: Add intrinsics/{flush.c,fnum.c,stat.c}
1705         * configure.in: Regenerate.
1706         * config.h.in: Regenerate.
1707         * Makefile.in: Regenerate.
1708
1709 2004-12-01  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
1710
1711         * Makefile.am (AM_CPPFLAGS): Use -iquote instead of -I.
1712
1713 2004-11-28  Bud Davis  <bdavis9659@comcast.net>
1714
1715         * io/unix.c (mmap_alloc_w_a): check for a write to a location
1716         less than the mapped area.
1717
1718 2004-11-27  Bud Davis  <bdavis9659@comcast.net>
1719
1720         PR fortran/18364
1721         *  io/endfile.c (st_endfile): flush the stream before truncating.
1722
1723 2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
1724
1725         * configure: Regenerate for libtool change.
1726
1727 2004-11-22  Steven Bosscher  <stevenb@suse.de>
1728
1729         PR libfortran/15960
1730         * configure.ac: Check for finite in libm.
1731         * libgfortran.h: Define isfinite macro if not defined.
1732         * intrinsics/c99_functions.c: Use defined(fpclassify) instead of
1733         HAVE_FPCLASSIFY.
1734         * io/write.c (write_float): Use isfinite instead of finite.
1735         * configure, config.h.in: Rebuilt.
1736
1737 2004-11-20  Roger Sayle  <roger@eyesopen.com>
1738
1739         * io/write.c (write_float, list_formatted_write): Fix indentation.
1740
1741 2004-11-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
1742
1743         PR target/16135
1744         * acinclude.m4 (LIBGFOR_TARGET_ILP32): New check.
1745         * configure.ac: Include LIBGFOR_TARGET_ILP32.
1746         * configure: Regenerate.
1747         * config.h.in: Likewise.
1748         * libgfortran.h: Provide default definitions for C99 types
1749         on ILP32 targets that don't have them.
1750
1751         PR target/17999
1752         * configure.ac: Check for snprintf.
1753         * configure: Regenerate.
1754         * config.h.in: Likewise.
1755         * intrinsics/date_and_time.c (date_and_time): Do not
1756         use snprinf if it is not available.
1757         * io/write.c (output_float): Likewise.
1758
1759 2004-11-20  Steven G. Kargl  <kargls@comcast.net>
1760
1761         * Makefile.am: Add intrinsics/{umask.c,unlink.c,exit.c}
1762         * Makefile.in: Regenerated
1763         * intrinsics/umask.c: New file
1764         * intrinsics/unlink.c: ditto
1765         * intrinsics/exit.c: ditto
1766
1767 2004-11-18  Victor Leikehman  <lei@il.ibm.com>
1768
1769         * m4/matmul.m4: Loops reordered to improve cache behavior.
1770         * generated/matmul_??.c: Regenerated.
1771
1772 2004-11-10  Paul Brook  <paul@codesourcery.com>
1773
1774         PR fortran/18218
1775         * configure.ac: Check for strtof.
1776         * configure: Regenerate.
1777         * config.h.in: Regenerate.
1778         * io/read.c (convert_real): Use strtof if available.
1779         (convert_precision_real): Remove.
1780         (read_f): Avoid poor exponentiation algorithm.
1781
1782 2004-11-05  Andreas Schwab  <schwab@suse.de>
1783
1784         * configure.ac: Use AC_PROG_FC, FC and FCFLAGS instead of
1785         AC_PROG_F77, F77 and FFLAGS.
1786         * Makefile.am (selected_int_kind.inc, selected_real_kind.inc): Use
1787         FCCOMPILE instead of F77COMPILE.
1788         * configure, Makefile.in: Regenerate.
1789
1790 2004-11-05  Kelley Cook  <kcook@gcc.gnu.org>
1791
1792         * acinclude.m4: Properly quote AC_CACHE_CHECK.
1793         * Makefile.am: Add in ACLOCAL_AMFLAGS.
1794         * aclocal.m4, configure, Makefile.in: Regenerate.
1795
1796 2004-10-30  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
1797
1798         * config.h.in: Regenerate.
1799         * configure: Regenerate.
1800         * configure.ac (AC_CHECK_FUNCS): Add mkstemp.
1801         * io/unix.c (S_IRGRP): Define if undefined.
1802         (S_IWGRP): Same.
1803         (S_IROTH): Same.
1804         (S_IWOTH): Same.
1805         (tempfile): Use mktemp if mkstemp missing, fix typos.
1806
1807 2004-10-30  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
1808
1809         *  intrinsics/system.c ("libgfortran.h"): Move after system headers.
1810
1811 2004-10-30  Canqun Yang  <canqun@nudt.edu.cn>
1812
1813         * intrinsics/rand.c (irand): Handle NULL argument.
1814
1815 2004-10-07  Paul Brook  <paul@codesourcery.com>
1816
1817         * io/transfer.c (finalize_transfer): Free internal streams.
1818         * io/unix.c (mem_close): Free stream object.
1819
1820 2004-10-07  Paul Brook  <paul@codesourcery.com>
1821
1822         * intrinsics/string_intrinsics.c (string_verify): Fix off by one
1823         error.
1824
1825 2004-10-06  Paul Brook  <paul@codesourcery.com>
1826
1827         PR libfortran/17709
1828         * io/transfer.c (data_transfer_init): Reset sf_seen_eor.
1829
1830 2004-10-04  Andrew Pinski  <pinskia@physics.uc.edu>
1831
1832         * intrinsics/mvbits.c: Commit the file.
1833
1834 2004-10-04  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1835
1836         PR fortran/17283
1837         * intrinsics/pack_generic.c (__pack): Allocate memory for return array
1838         if not done by caller.
1839         (__pack_s): New function.
1840         * runtime/memory.c (internal_malloc, internal_malloc64): Allow
1841         allocating zero memory.
1842
1843         PR fortran/17631
1844         * Makefile.am (gfor_helper_src): Add intrinsics/mvbits.h.
1845         * Makefile.in: Regenerate.
1846         * intrinsics/mvbits.h: New file.
1847
1848         PR fortran/17776
1849         * intrinsics/system.c: New file.
1850         * Makefile.am: Add dependency for the new file.
1851         * Makefile.in: Regenerate.
1852
1853 2004-10-04  Paul Brook  <paul@codesourcery.com>
1854         Bud Davis  <bdavis9659@comcast.net>
1855
1856         PR fortran/17706
1857         PR fortran/16434
1858         * io/format.c (parse_format_list): Set repeat count for S, SP, SS,
1859         BN and BZ formats.
1860         * io/write.c (output_float): Don't output minus zero.
1861
1862 2004-10-03  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
1863
1864         * intrinsics/abort.c ("libgfortran.h"): Move.
1865         * intrinsics/date_and_time.c ("libgfortran.h"): Same.
1866         * intrinsics/write.c ("libgfortran.h"): Same.
1867
1868 2004-09-26  Tobias Schlueter  <tobis.schlueter@physik.uni-muenchen.de>
1869
1870         PR libfortran/16137
1871         * config.h.in (HAVE_POWF): Undefine.
1872         * configure.ac: Check for 'powf' in library.
1873         * configure: Regenerate.
1874         * intrinsics/c99_functions.c (powf): New function.
1875
1876 2004-09-24  Tobias Schlueter  <tobis.schlueter@physik.uni-muenchen.de>
1877
1878         * intrinsics/etime.c (etime_): New function.
1879
1880 2004-09-21  Steven G. Kargl  <kargls@comcast.net>
1881
1882         * libgfortran.h: define gfc_alloca()
1883         * intrinsics/env.c (getenv, get_environment_variable_i4): Use it.
1884
1885 2004-09-21  Bud Davis  <bdavis9659@comcast.net>
1886
1887         PR fortran/17286
1888         * io/list_read.c (namelist_read): ignore spaces after
1889         the '=' for namelist reads.
1890
1891 2004-09-15  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
1892
1893         * config.h.in: Regenerate.
1894         * configure: Regenerate.
1895         * configure.ac (AC_CHECK_HEADERS): Check for sys/mman.h.
1896         * unix.c: Include stdio.h.
1897         (HAVE_SYS_MMAN_H): Check.
1898         (PROT_READ, PROT_WRITE): Provide default definitions.
1899
1900 2004-09-15  Steven G. Kargl  <kargls@comcast.net>
1901
1902         * intrincics/getcwd.c: New file.
1903         * Makefile.am: Add getcwd.c.
1904         * Makefile.in: Regenerated.
1905
1906 2004-09-15  Steven G. Kargl  <kargls@comcast.net>
1907         Paul Brook  <paul@codesourcery.com>
1908
1909         * intrinsics/env.c (getenv, get_environmental_variable): Remove
1910         trailing white space.  Use alloca.  Honour trim_name.
1911
1912 2004-09-13  Bud Davis  <bdavis9659@comcast.net>
1913
1914         PR fortran/17090
1915
1916         * io/list_read.c (list_formatted_read): Handle trailing spaces
1917         at end of line.
1918
1919 2004-09-06  Steven G. Kargl  <kargls@comcast.net>
1920
1921         * io/write.c (output_float): Typo in comment.  Remove debugging
1922         printf.  Fix format for FP of form 1e10.
1923
1924 2004-09-03  Richard Henderson  <rth@redhat.com>
1925
1926         * intrinsics/cshift0.c (DEF_COPY_LOOP, copy_loop_int, copy_loop_long,
1927         copy_loop_double, copy_loop_ldouble): New.
1928         (__cshift0): Make shift type ssize_t.  Use % operator instead of
1929         div.  Use specialized versions of copy loop depending on the shape.
1930
1931 2004-09-02  Paul Brook  <paul@codesourcery.com>
1932
1933         * io/format.c (parse_format_list): Set repeat count for P descriptors.
1934         * write.c (output_float): Fix condition.  Correctly handle nonzero
1935         scale factor.
1936
1937 2004-09-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
1938
1939         * mk-sik-inc.sh: Use a temporary string instead of 'echo -n'.
1940         * mk-srk-inc.sh: Likewise.
1941
1942 2004-09-01  Paul Brook  <paul@codesourcery.com>
1943
1944         * runtime/error.c (generate_error): Set both iostat and
1945         library_return.
1946
1947 2004-08-31  Paul Brook  <paul@codesourcery.com>
1948
1949         PR libfortran/16805
1950         * io/list_read.c (next_char): Don't signal EOF for internal files.
1951         * io/unix.c (mem_alloc_r_at): Don't return NULL for incomplete reads.
1952
1953 2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1954
1955         * io/unit.c: Separate copyright years by ','.
1956         (compare, insert_unit, delete_unit, is_internal_unit, close_units):
1957         Remove blank line in beginning of function.
1958         (get_unit): Simplify code.
1959
1960 2004-08-31  Paul Brook  <paul@codesourcery.com>
1961
1962         * io/unit.c (get_unit): Remove superfluous if.
1963
1964 2004-08-31  Paul Brook  <paul@codesourcery.com>
1965
1966         * io/transfer.c (read_sf): Rename uinty to readlen.  Detect EOF.
1967         (finalize_transfer): Move setjmp after namlist IO.
1968         * io/unix.c (mem_alloc_r_at): Calculate remaining length correctly.
1969
1970 2004-08-31  Paul Brook  <paul@codesourcery.com>
1971
1972         * list_read.c (eat_separator): Set at_eo when a '/' is seen.
1973
1974 2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
1975
1976         * libgfortran.h: Replace 'gfc_strlen_type' by
1977         'gfc_charlen_type'. Update comment accordingly.
1978         * intrinsics/args.c, intrinsics/env.c, io/io.h, io/transfer.c:
1979         Replace all occurences of 'gfc_strlen_type' by 'gfc_charlen_type'.
1980
1981 2004-08-31  Paul Brook  <paul@codesourcery.com>
1982
1983         * libgfortran.h: Add comments.
1984
1985 2004-08-30  Richard Henderson  <rth@redhat.com>
1986
1987         * Makefile.am (gfor_helper_src): Split selected_kind.f90.
1988         (gfor_built_src): Add selected_int_kind.inc selected_real_kind.inc.
1989         (selected_int_kind.inc selected_real_kind.inc): New rules.
1990         * Makefile.in: Regenerate.
1991         * mk-sik-inc.sh, mk-srk-inc.sh: New files.
1992         * intrinsics/selected_int_kind.f90: Split from selected_kind.f90,
1993         include table of detected kinds.
1994         * intrinsics/selected_real_kind.f90: Similarly.
1995
1996 2004-08-29  Steven G. Kargl  <kargls@comcast.net>
1997         Paul Brook  <paul@codesourcery.com>
1998
1999         * intrinsics/bessel.c: New file.
2000         * intrinsics/erf.c: New file.
2001         * Makefie.am: Add intrinsics/bessel.c and intrinsics/erf.c.
2002         * configure.ac: Test for C99 Bessel and Error functions.
2003         * Makefile.in: Regenerate.
2004         * config.h.in: Regenerate.
2005         * configure: Regenerate.
2006
2007 2004-08-29  Steven G. Kargl  <kargls@comcast.net>
2008         Paul Brook  <paul@codesourcery.com>
2009
2010         * Makefile.am: Add intrinsics/getXid.c.
2011         * configure.ac: Add tests for get{g,p,u}id.
2012         * config.h.in: Regenerate.
2013         * Makefile.in: Regenerate.
2014         * configure: Regenerate.
2015
2016 2004-08-28  Paul Brook  <paul@codesourcery.com>
2017
2018         PR libfortran/17195
2019         * libgfortran.h (rtoa): Remove prototype.
2020         * runtime/error.c (rtoa): Remove.
2021         * io/write.c (calculate_G_format): Don't add blanks if E format is
2022         used.  Add correct number of blanks when exponent width is specified.
2023         (output_float): Rewrite.
2024
2025 2004-08-27  Paul Brook  <paul@codesourcery.com>
2026
2027         * io/rewind.c (st_rewind): Reset unit to read mode.
2028
2029 2004-08-27  Bud Davis  <bdavis9659@comcast.net>
2030
2031         PR fortran/16597
2032         * io/io.h: created typedef for unit_mode.
2033         * io/io.h (gfc_unit): added mode to unit structure.
2034         * io/transfer.c (data_transfer_init): flush if a write then
2035         read is done on a unit (direct access files).
2036         * io/rewind.c (st_rewind): Used unit mode instead of global.
2037
2038 2004-08-24  Bud Davis  <bdavis9659@comcast.net>
2039
2040         PR fortran/17143
2041         * runtime/error.c (itoa): keep from overflowing during
2042         mod operation by using unsigned variable.
2043
2044 2004-08-24  Bud Davis  <bdavis9659@comcast.net>
2045
2046         PR fortran/17164
2047         * runtime/string_intrinsics.c (string_index):check for
2048         substring longer than string.
2049
2050 2004-08-24  David Edelsohn  <edelsohn@gnu.org>
2051
2052         * Makefile.am (libgfortran_la_LDFLAGS): Add -lm.
2053         * Makefile.in: Rebuilt.
2054
2055 2004-08-23  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
2056
2057         * io/io.h, io/list_read.c, io/open.c, io/transfer.c, io/write.c:
2058         Fix formatting issues, update copyright years.
2059
2060 2004-08-21  Bud Davis  <bdavis9659@comcast.net>
2061
2062         PR 16908
2063         * io/transfer.c (next_record_w): Do not blank pad.
2064         * io/transfer.c (next_record): Take into account partial records.
2065
2066 2004-08-18  Victor Leikehman  <lei@il.ibm.com>
2067
2068         PR fortran/13278
2069         * io/transfer.c (st_set_nml_var)
2070         * io/write.c (namelist_write): Allow var_name and var_name_len to be
2071         null. For strings, use string_length field instead of len.
2072         * io/io.h (struct namelist_type): New field string_length.
2073         (st_set_nml_var_char): New argument string_length.
2074
2075 2004-08-13  Bud Davis  <bdavis9659@comcast.net>
2076
2077         PR gfortran/16935
2078         * io/open.c (st_open): use flags instead of the unit structure.
2079
2080 2004-08-10  Victor Leikehman  <lei@il.ibm.com>
2081
2082         * io/list_read.c (namelist_read): Convert variable names
2083         to lower case, so that mixed-case names are recognized.
2084         Don't read beyond terminating slash.
2085
2086 2004-08-09  Richard Henderson  <rth@redhat.com>
2087             Roger Sayle  <roger@eyesopen.com>
2088
2089         * intrinsics/c99_functions.c (nextafterf): New implementation that
2090         works correctly with denormalized numbers.
2091
2092 2004-08-09  Victor Leikehman  <lei@il.ibm.com>
2093
2094         * m4/matmul.m4, m4/matmull.m4, intrinsics/eoshift0.c,
2095         intrinsics/eoshift2.c, intrinsics/transpose_generic.c:
2096         Allocate space if return value has NULL in its data field.
2097         * generated/*.c: Regenerate.
2098
2099 2004-08-06  Janne Blomqvist  <jblomqvi@cc.hut.fi>
2100
2101         * intrinsics/env.c: New file.
2102         * Makefile.am: Add env.c to build.
2103         * Makefile.in: Regenerate.
2104
2105 2004-08-05  Victor Leikehman  <lei@il.ibm.com>
2106
2107         PR libgfortran/16704
2108         * io/read.c (read_radix): Understand letters f and F as hex digits.
2109
2110 2004-08-04  Victor Leikehman  <lei@il.ibm.com>
2111
2112         * libgfortran.h (array_t, size0) New declarations.
2113         * m4/ifunction.m4, m4/transpose.m4, intrinsics/cshift0.c: Allocate
2114         space if return value descriptor has NULL in its data field,
2115         and initialize bounds and stride.
2116         * intrinsics/size.c (array_t, size0): Declarations moved to
2117         libgfortran.h.
2118         * generated/*.c: Regenerate.
2119
2120 2004-08-03  Roger Sayle  <roger@eyesopen.com>
2121
2122         PR libgfortran/16137
2123         * configure.ac: Add tests for acosf, asinf, atan2f, atanf, ceilf,
2124         copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
2125         scalbnf, sinf, sinhf, sqrtf, tanf and tanhf in libm.
2126         * config.h.in: Regenerate.
2127         * configure: Regenerate.
2128
2129         * instrinsics/c99_functions.c (acosf, asinf, atan2f, atanf, ceilf,
2130         copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
2131         nextafterf, scalbnf, sinf, sinhf, sqrtf, tanf, tanhf): New stub
2132         implementations for targets that don't support C99 float functions.
2133
2134 2004-08-01  Roger Sayle  <roger@eyesopen.com>
2135
2136         * io/write.c (write_float): Use the slightly more portable isnan
2137         in preference to isinf.
2138
2139 2004-07-18  Bud Davis  <bdavis9659@comcast.net>
2140
2141         * configure.ac: Add check for LFS support.
2142         * configure: Regenerate
2143
2144 2004-07-11  Paul Brook  <paul@codesourcery.com>
2145
2146         PR fortran/16303
2147         * m4/cexp.m4 (carg): Return -pi to pi.
2148         * generated/exp_c?.c: Regenerate.
2149
2150 2004-07-08  Andreas Krebbel  <krebbel1@de.ibm.com>
2151
2152         PR fortran/16291
2153         * libgfortran/io/write.c: (write_float): Added length check.
2154         Remove pointless memset calls.
2155
2156 2004-07-04  Bud Davis  <bdavis9659@comcast.net>
2157             Paul Brook  <paul@codesourcery.com>
2158
2159         PR fortran/15472
2160         * io/transfer.c(us_write): set recl for seq unform writes to max size.
2161         * io/transfer.c(data_transfer_init): handle un-opened seq unform unit.
2162         * io/unix.c(fd_alloc_w_at): handle requests at start, fd_flush at
2163         right time.
2164         * io/unix.c(is_seekable): set based upon the file/device, not the
2165         method being used to access it (fd or mmap).
2166         * io/unix.c(fd_flush): don't set file_size if !seekable.
2167         * io/unix.c(fd_truncate: ditto.
2168
2169 2004-07-04  Janne Blomqvist  <jblomqvi@cc.hut.fi>
2170         Paul Brook  <paul@codesourcery.com>
2171
2172         PR fortran/15280
2173         PR fortran/15665
2174         * libgfortran.h (gfc_strlen_type): Define.
2175         * intrinsics/args.c (getarg): Rename ...
2176         (getarg_i4): ... to this.
2177         (getarg_i8, get_command_argument_i4, get_command_argument_i8,
2178         get_command_i4, get_command_i8): New functions.
2179
2180 2004-07-04  Matthias Klose  <doko@debian.org>
2181
2182         * libtool-version: New.
2183         * Makefile.am (libgfortran_la_LDFLAGS): Use -version-info for soname.
2184         * Makefile.in: Regenerate.
2185         * configure.ac: Remove libtool_VERSION macro
2186         * configure: Regenerate
2187
2188 2004-06-30  Steve Kargl  <sgk@troutmask.apl.washington.edu>
2189             Steven Bosscher  <stevenb@suse.de>
2190
2191         * intrinsics/rand.c (rand): Wrap the irand() call from the previous
2192         commit in prefix.
2193
2194 2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
2195         Paul Brook  <paul@codesourcery.com>
2196
2197         * runtime/normalize.c (normalize_r4_i4, normalize_r8_i8): Fix
2198         comments.
2199         * intrinsics/rand.c (rand): Call irand() in call to normalize_r4_i4.
2200
2201 2004-06-27  Bud Davis  <bdavis9659@comcast.net>
2202
2203         PR gfortran/12839
2204         * io/write.c (write_float): check signbit for Infinity.
2205
2206 2004-06-26  Bud Davis  <bdavis9659@comcast.net>
2207
2208         PR gfortran/16196
2209         * unix.c(regular_file): create file if it does not exist.
2210
2211 2004-06-24  Andrew Pinski  <apinski@apple.com>
2212
2213         * configure.ac: Remove check for libmx.
2214         * configure: Regenerate.
2215
2216 2004-06-22  Janne Blomqvist  <jblomqvi@cc.hut.fi>
2217
2218         PR fortran/15750
2219         * inquire.c (st_inquire): Add comment
2220         * io.h (st_parameter): Add iolength.
2221         (st_iolength, st_iolength_done): Declare.
2222         * transfer.c (iolength_transfer, iolength_transfer_init,
2223         st_iolength, st_iolength_done): New functions.
2224
2225 2004-06-21  Steven G. Kargl  <kargls@comcast.net>
2226
2227         * etime.c (etime_sub): Remove array rank check;
2228         Add check for sufficient space.
2229
2230 2004-06-19  Bud Davis  <bdavis9659@comcast.net>
2231
2232         PR gfortran/16080
2233         * io/list_read.c(set_value): fixed spelling.
2234
2235 2004-06-19  Bud Davis  <bdavis9659@comcast.net>
2236
2237         PR gfortran/16080
2238         * io/list_read.c(set_value): don't copy if the string is null.
2239
2240 2004-06-14  Bud Davis  <bdavis9659@comcast.net>
2241
2242         PR gfortran/15292
2243         * intrinsics/c99_functions.c: Use fpclassify if it exists.
2244
2245 2004-06-13  Paul Brook  <paul@codesourcery.com>
2246
2247         * Makefile.am (gfor_helper_src): Add runtime/normalize.f90.
2248         * configure.ac: Add checks for nextafter and nextafterf.
2249         * Makefile.in, config.h.in, configure: Regenerate.
2250         * libgfortran.h (normalize_r4_i4, normalize_r8_i8): Declare.
2251         * intrinsics/rand.c (rand): Use normalize_r4_i4.
2252         * intrinsics/random.c (random_r4): Use normalize_r4_i4.
2253         (random_r8): Use normalize_r8_i8.
2254         * runtime/normalize.c: New file.
2255
2256 2004-06-13  Steven G. Kargl  <kargls@comcast.net>
2257             Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
2258
2259         * random.c: Fix several spelling and formatting mistakes in
2260         comments.
2261         (random_r8): Fix loop to make random numbers range in [0,1(.
2262
2263
2264 2004-06-13  Steven G. Kargl  <kargls@comcast.net>
2265
2266         * random.c (random_r4): Burn a random number.
2267         (random_r8): fix infinite loop.
2268
2269 2004-06-12  Bud Davis  <bdavis9659@comcast.net>
2270       Steve Kargl  <sgk@troutmask.apl.washington.edu>
2271
2272         PR gfortran/15292
2273         * intrinsics/c99_functions.c: New file.
2274         * Makefile.am: Add new file.
2275         * configure.ac: Added test for round/roundf.
2276         * Makefile.in: Regenerate.
2277         * configure: Regenerate.
2278         * configure.h.in: Regenerate.
2279
2280 2004-06-12  Steven G. Kargl  <kargls@comcast.net>
2281
2282         * Makefile.am: Add rand.c and etime.c
2283         * Makefile.in: Regenerated.
2284         * aclocal.in: Regenerated.
2285         * cpu_time.c (second_sub, second): New functions.
2286         * rand.c (irand, rand, srand): New file.
2287         * etime.c (etime_sub, etime): New file.
2288
2289 2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
2290             Steven Bosscher  <stevenb@suse.de>
2291
2292         PR fortran/14923
2293         * intrinsics/date_and_time.c: New file.
2294         * Makefile.am (gfor_helper_src): Add intrinsics/date_and_time.c.
2295         * Makefile.in, aclocal.m4: Regenerate.
2296         * libgfortran.h: Prototype date_and_time().
2297
2298 2004-06-12  Bud Davis  <bdavis9659@comcast.net>
2299
2300         PR fortran/15665
2301         * intrinsics/args.c: Implement GETARG and IARGC.
2302         * Makefile.am: Add it.
2303         * Makefile.in: Regenerate.
2304
2305 2004-06-12  Bud Davis  <bdavis9659@comcast.net>
2306
2307         PR gfortran/12839
2308         * io/write.c(write_float): Format inf and nan IAW F2003.
2309
2310 2004-06-09  Bud Davis  <bdavis9659@comcaste.net>
2311
2312         PR gfortran/14897
2313         * io/transfer.c (formatted_transfer): position is unique
2314          for T and TL edit descriptors.
2315         (data_transfer_init): set record length to size of internal
2316          file.
2317
2318 2004-06-09  Bud Davis  <bdavis9659@comcast.net>
2319
2320         PR gfortran/15755
2321         * io/backspace.c(st_backspace): call correct routine for
2322         formatted and un-formatted units.
2323
2324 2004-05-30  Andreas Jaeger  <aj@suse.de>, Steven Bosscher <stevenb@suse.de>
2325
2326         PR gfortran/11800
2327         * Makefile.am (AM_CPPFLAGS): Renamed from INCLUDES.
2328         (lib_LTLIBRARIES): Rename to ...
2329         (toolexeclib_LTLIBRARIES): this for multilib support.
2330         * configure.in: Rename to ...
2331         * configure.ac: this.  Update to modern autoconf style, enable
2332         multilibs, support --enable-version-specific-runtime-libs.
2333         * Makefile.in: Regenerated.
2334         * configure: Regenerated.
2335         * aclocal.m4: Regenerated.
2336
2337 2004-05-30  Steven G. Kargl  <kargls@comcast.net>
2338
2339         * libgfortran.h (random_seed): Update prototype.
2340         * intrinsics/random.c: Disable old implementation and add new one.
2341
2342 2004-05-30  Andreas Jaeger  <aj@suse.de>
2343
2344         * intrinsics/random.c: Include unistd.h for close and read
2345         prototypes, remove unneeded inclusion of assert.h.
2346
2347         * intrinsics/abort.c: Include stdlib.h for abort prototype, remove
2348         unneeded inclusion of assert.h.
2349
2350 2004-05-27  Tobias Schlueter  <tobias.shclueter@physik.uni-muenchen.de>
2351
2352         PR fortran/15234
2353         * intrinsics/associated.c: Remove enum.
2354         (associated): Replace TRUE/FALSE by 1/0.
2355
2356 2004-05-23  Steven G. Kargl  <kargls@comcast.net>
2357
2358         * random.c (random_seed): Use correct variable.
2359
2360 2004-05-22  Steven G. Kargl  <kargls@comcast.net>
2361
2362         * intrinsics/system_clock: New file.
2363         * Makefile.am: Add intrinsics/system_clock.c.
2364         * Makefile.in: Regenerate.
2365
2366 2004-05-21  Roger Sayle  <roger@eyesopen.com>
2367
2368         * io/format.c (parse_format_list): Allow the comma after a string
2369         literal to be optional.
2370
2371 2004-05-18  Paul Brook  <paul@codesourcery.com>
2372         Feng Wang  <fengwang@nudt.edu.cn>
2373
2374         * Makefile.am (i_pow_c): Set it. Add build rule.
2375         (gfor_built_src): Use it.
2376         (m4_files): add m4/pow.m4.
2377         * Makefile.in: Regenerate.
2378         * m4/pow.m4: New file.
2379         * generated/pow_*.c: Regenerate.
2380
2381 2004-05-18  Paul Brook  <paul@codesourcery.com>
2382
2383         * Makefile.am: Remove references to types.m4.
2384         * m4/iparm.m4: Merge with types.m4.
2385         * m4/types.m4: Remove.
2386         * m4/cshift1.m4, m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4,
2387         m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4, m4/ifunction.m4,
2388         m4/in_pack.m4, m4/in_unpack.m4, m4/iparm.m4, m4/matmul.m4,
2389         m4/matmull.m4, m4/maxloc0.m4, m4/maxloc1.m4, m4/maxval.m4,
2390         m4/minloc0.m4, m4/minloc1.m4, m4/minval.m4, m4/reshape.m4,
2391         m4/shape.m4, m4/specific.m4, m4/specific2.m4, m4/transpose.m4):
2392         Update to use new iparm.m4.
2393         * generated/*.c: Regenerate.
2394
2395 2004-05-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
2396
2397         PR fortran/15235
2398         * gfortran.h (offset_t): Rename to ...
2399         (gfc_offset): ... this.
2400         * io/backspace.c (formatted_backspace, unformatted_backspace),
2401         io/io.h (stream, gfc_unit, global_t, file_length, file_position),
2402         transfer.c (us_read, us_write, next_record_r, next_record_w),
2403         io/unit.c (init_units), unix.c (unix_stream, fd_alloc,
2404         fd_alloc_r_at, fd_alloc_w_at, fd_seek, mmap_alloc,
2405         mmap_alloc_r_at, mmap_alloc_w_at, mmap_seek, mem_alloc_r_at,
2406         mem_alloc_w_at, mem_seek, file_length, file_position): Replace all
2407         occurences of offset_t by gfc_offset.
2408
2409 2004-05-16  Paul Brook  <paul@codesourcery.com>
2410
2411         * io/format.c (write_real): Don't include padding in format.
2412
2413 2004-05-16  Paul Brook  <paul@codesourcery.com>
2414
2415         * io/format.c (format_lex): Make c an int.
2416
2417 2004-05-16  Janne Blomqvist  <jblomqvi@cc.hut.fi>
2418         Paul Brook  <paul@codesourcery.com>
2419
2420         * io/write.c (write_logical): Don't print extra blank.
2421         (write_integer): Base field width on kind.
2422         (list_formatted_write): Output initial blank.
2423
2424 2004-05-16  Janne Blomqvist  <jblomqvi@cc.hut.fi>
2425
2426         * io/io.h (flush): Add prototype.
2427         * io/transfer.c (finalize_transfer): Flush partial records.
2428         * io/unix.c (flush): New function.
2429
2430 2004-05-15  Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
2431
2432         PR fortran/15234
2433         * io/io.h (unit_t): Rename to ...
2434         (gfc_unit) ... this.
2435         (unit_root, current_unit, find_file, find_unit, get_unit): Now
2436         of type gfc_unit.
2437         (delete_file, insert_unit, close_unit): Argument now of type
2438         gfc_unit.
2439         * backspace.c (st_backspace), close.c (st_close), endfile.c
2440         (st_endfile), inquire.c (inquire_via_unit, st_inquire), open.c
2441         (test_endfile, edit_modes, new_unit, already_open, st_open),
2442         rewind.c (st_rewind), transfer.c (current_unit), unit.c
2443         (internal_unit, unit_cache, rotate_left, rotate_right, insert,
2444         insert_unit, delete_root, delete_treap, delete_unit, find_unit,
2445         get_unit, init_units, close_unit), unix.c (find_file0,
2446         find_file, delete_file): Replace all occurences of unit_t by
2447         gfc_unit.
2448
2449 2004-05-15  Bud Davis  <bdavis9659@comcast.net>
2450
2451         PR fortran/15311
2452         * io/write.c (write_a): right justify A edit output.
2453
2454 2004-05-14  Bud Davis  <bdavis9659@comcast.net>
2455
2456         PR fortran/15149
2457         * libgfortan.h,intrinsics/random.c: Made random_seed visible.
2458         * runtime/main.c(init): Call random_seed as part of MAIN init.
2459
2460 2004-05-13  Tobias Schlter  <tobias.schlueter@physik.uni-muenchen.de>
2461
2462         * io/format.c: (parse_format_list): No comma is required after
2463         P descriptor.
2464
2465 2004-05-13  Bud Davis  <bdavis9659@comcast.net>
2466
2467         PR fortran/15204
2468         * io/intrinsic/string_intrinsics.c (adjustr): rework logic.
2469
2470 2004-05-06  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2471             Steven Bosscher  <stevenb@suse.de>
2472
2473         PR libfortran/15234
2474         * libgfortran.h: Include <inttypes.h> if available.
2475
2476 2004-05-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2477
2478         * io/unix.c (MAP_FAILED): Define if missing.
2479         (mmap_alloc): Cast MAP_FAILED to char *.
2480         (mmap_open): Likewise.
2481
2482 2004-04-26  Bud Davis  <bdavis9659@comcast.net>
2483
2484         * generated/_abs_i8.f90: New file.
2485         * generated/_abs_c4.f90: New file.
2486         * generated/_abs_c8.f90: New file.
2487         * Makefile.am: Add them.
2488         * Makefile.in: Regenerate.
2489 `
2490 2004-04-26  Bud Davis  <bdavis9659@comcast.net>
2491
2492         PR fortran/14056
2493         * generated/_abs_i4.f90: New file.
2494         * Makefile.am: Add it.
2495         * Makefile.in: Regenerate.
2496
2497 2004-04-25  Bud Davis  <bdavis9659@comcast.net>
2498
2499         PR fortran/14942
2500         * io/list_read.c(list_formatted_read): finish consuming the
2501         spaces and seperators at eoln to get ready for next item.
2502
2503 2004-04-23  Bud Davis  <bdavis9659@comcast.net>
2504
2505         PR fortran/15113
2506         * io/read.c(read_a): Handle field width > destination and no field width.
2507
2508 2004-04-22  Bud Davis  <bdavis9659@comcast.net>
2509
2510         PR fortran/14906
2511         * io/format.c (format_item): gracefully handle a ')'
2512         when it is the first character encountered in the string.
2513
2514 2004-04-11  Bud Davis  <bdavis9659@comcast.net>
2515
2516         PR fortran/14904
2517         * io/transfer.c (next_record): Update last_record when
2518         more than one record is written to a direct access file
2519         with one write statement.
2520
2521 2004-04-11  Bud Davis  <bdavis9659@comcast.net>
2522
2523         PR fortran/14901
2524         * io/transfer.c (next_record_w) : No '\n' if internal.
2525         * io/unix.c (empty_internal_buffer) : Init to spaces, not '\n'.
2526
2527 2004-04-11  Bud Davis  <bdavis9659@comcast.net>
2528
2529         * io.h (ioparm): Interface from FE is 32 bit, irregardless of offset_t.
2530         Will need to change this later to support direct access files > 2gb.
2531
2532 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
2533
2534         PR gfortran/14762
2535         * io/transfer.c (next_record_r) : Skip to next record.
2536
2537 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
2538
2539         PR gfortran/14836
2540         * io/transfer.c (next_record): Update last_record for DIRECT
2541
2542 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
2543
2544         PR gfortran/14837
2545         * io/unix.c (find_file0): Use fd field of struct
2546
2547 2004-04-03  Bud Davis  <bdavis9659@comcast.net>
2548
2549         PR 14831
2550         * io/inquire.c (inquire_via_unit): Changed return string for
2551         BLANK=NULL. Use correct variable for ACTION.
2552
2553 2004-04-01  Bud Davis  <bdavis9659@comcast.net>
2554
2555         PR 14746
2556         * io/read.c (read_f): Allow a decimal without a leading digit.
2557         * io/write.c (output_float): remove a leading '0' to keep from
2558         overflowing the field (F edit descriptor).
2559
2560 2004-04-01  Bud Davis  <bdavis9659@comcast.net>
2561
2562         PR gfortran/14565
2563         * io/open.c (new_unit),
2564         * io/io.h : new_unit is now visible
2565         * io/transfer.c (data_transfer_init): open unit if no OPEN statement.
2566         * io/transfer.c (data_transfer_init): remove compile warnings.
2567         * io/rewind.c (st_rewind): ftruncate if writing.
2568
2569 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
2570
2571         * write.c (write_l): Use extract_int for 'L' edit descriptor.
2572
2573 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
2574
2575         PR 13919
2576         * io/io.h (global_t):
2577         * io/list_read.c (next_char,list_formatted_read,ist_formatted_read):
2578           Move eof_jmp to a global structure.
2579         * io/transfer.c(finalize_transfer) : Set up eof_jump for callers.
2580
2581 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
2582
2583         * m4/cexp.m4 (csqrt): Actually use the passed value.
2584         * generated/exp_c?.c: Regenerate.
2585
2586 2004-03-24  Bud Davis  <bdavis9659@comcast.net>
2587
2588         PR 12921
2589         * io.h, transfer.c, open.c : recl_in changed from ptr to variable.
2590         * open.c (new_unit): Moved test for positioned direct access error.
2591         (init_units): Corrected calculation of max records.
2592
2593 2004-02-06  Feng Wang  <fengwang@nudt.edu.cn>
2594
2595         * Makefile.am: Add m4/dotprodc.m4. And fix spelling.
2596         * Makefile.in: Regenerate.
2597         * m4/dotprodc.m4: New file. Implement complex dot_product.
2598         * m4/dotprod.m4: Delete the complex implementation.
2599         * generated/dotprod_*: Update.
2600
2601 2004-02-07  Bud Davis  <bdavis9659@comcast.net>
2602
2603         * transfer.c (write_constant_string): Do not delete H's in hollerith
2604         formats.
2605
2606 2004-01-05  Andrew Pinski  <apinski@apple.com>
2607
2608         * configure.in: Check for csin in -lmx also.
2609         * configure: Regenerate.
2610
2611 2004-01-01  Paul Brook  <paul@codesourcery.com>
2612
2613         * io/list_read.c (find_nml_node): Make static.
2614         (match_namelist_name): Ditto.
2615         * io/read.c (convert_precision_real): Make static, fix spelling.
2616         * io/transfer.c (extract_real): Remove unused prototype.
2617         (st_set_nml_var): Make static.
2618         * io/write.c (extract_real): Make static.
2619
2620 2003-12-12  Huang Chun <chunhuang73@hotmal.com>
2621
2622         * intrinsics/string_intrinsics.c (string_index): Fix logics thinko.
2623
2624 2003-12-05  Melvin Hadasht  <melvin.hadasht@free.fr>
2625
2626         * io/transfer.c (data_transfer_init): Give a runtime error for list
2627         formatted reads and writes from/to files opened for unformatted IO.
2628
2629 2003-11-30  Paul Brook  <paul@nowt.org>
2630
2631         * runtime/memory.c (push_context): Remove.
2632         (pop_context): Remove.
2633         * libgfortran.h: Remove prototypes.
2634
2635 2003-11-27  Paul Brook  <paul@nowt.org>
2636
2637         * runtime/memory.c (deallocate): Nullify pointer after freeing.
2638
2639 2003-11-27  Paul Brook  <paul@nowt.org>
2640
2641         * intrinsics/string_intrinsics.c: Use new memory allocation interface.
2642         * libgfortran.h: Ditto.
2643         * m4/in_pack.m4: Ditto.
2644         * runtime/in_pack_generic.c: Ditto.
2645         * runtime/memory.c: Ditto.
2646
2647 2003-11-26  Richard Henderson  <rth@redhat.com>
2648
2649         * m4/exponent.m4, m4/fraction.m4: New.
2650         * m4/nearest.m4, m4/set_exponent.m4: New.
2651         * generated/*: Update.
2652         * Makefile.am: Add them.
2653         (AM_CFLAGS): New.  Use -std=gnu99.
2654         * Makefile.in: Regenerate.
2655
2656 2003-11-08  Paul Brook  <paul@nowt.org>
2657
2658         PR fortran/12704
2659         * m4/maxloc0.m4: Use default value of 1. Handle zero sized arrays.
2660         * m4/maxloc1.m4: Ditto.
2661         * m4/minloc0.m4: Ditto.
2662         * m4/minloc1.m4: Ditto.
2663         * m4/ifunction.m4: Set return value for zero sized arrays.
2664         * m4/iforeach.m4: Ditto.
2665         * m4/all.m4, m4/any.m4, m4/count.m4, m4/maxloc1.m4, m4/minloc1.m4,
2666         m4/mxaval.m4, m4/minval.m4, m4/product.m4, m4/sum.m4: Ditto.
2667         * generated/*: Update.
2668
2669 2003-10-30  Toon Moene  <toon@moene.indiv.nluug.nl>
2670
2671         PR fortran/12702
2672         * io/list_read.c (eat_spaces): Treat tab as space.
2673
2674 2003-10-30  Lars Segerlund  <Lars.Segerlund@comsys.se>
2675
2676         * intrinsics/random.c: Add reference to paper containing algorithm.
2677         (random_seed): Extra error checking and proper handling of arrays.
2678         (arandom_r4, arandom_r8): Implement.
2679
2680 2003-10-29  Toon Moene  <toon@moene.indiv.nluug.nl>
2681
2682         PR fortran/12703
2683         * runtime/memory.c (allocate_size): Allow allocation
2684         of zero-sized objects.
2685
2686 2003-10-29  Toon Moene  <toon@moene.indiv.nluug.nl>
2687
2688         PR fortran/12701
2689         * open.c (new_unit): Open without a file name opens
2690         a file with name fort.<unit>.
2691
2692 2003-10-12  Feng Wang  <wf_cs@yahoo.com>
2693
2694         * intrinsics/cshift0.c: New file.
2695         * m4/cshift1.m4: New file
2696         * generated/cshift*.c: New files.
2697         * Makefile.am: Add them.
2698         * Makefile.in: Regenerate.
2699
2700 2003-10-12  XiaoQiang Zhang  <zhangapache@yahoo.com>
2701
2702         * io/list_read.c (read_character): Remove unwanted call to free_saved.
2703
2704 2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
2705
2706         * intrinsics/string_intrinsics.c (string_trim): New function.
2707         (string_repeat): New function.
2708
2709 2003-10-11  Paul Brook  <paul@nowt.org>
2710
2711         * intrinsics/dprod_r8.f90: New file.
2712         * Makefile.am (gfor_specific_src): Add it.
2713         (gfor_built_specific_src): Rename from gfor_build_specific_c.
2714         Add new intrinsics.
2715         (gfor_specific2_src): Rename from gfor_built_specific2_c.
2716         Add new intrinsics.
2717         * Makefile.in: Regenerate.
2718         * generated/_aint_*.f90: New files.
2719         * generated/_anint*.f90: New files.
2720         * generated/_atan2*.f90: New files.
2721         * generated/_mod*.f90: New files.
2722
2723 2003-09-20  Kejia Zhao  <kejia_zh@yahoo.com.cn>
2724
2725         * intrinsics/selected_kind.f90: New file.
2726         * Makefile.am: Add it.
2727         * Makefile.in: regenerate.
2728
2729 2003-09-19  Lars Segerlund  <Lars.Segerlund@comsys.se>
2730         Paul Brook  <paul@nowt.org>
2731
2732         * intrinsics/random.c: New file.
2733         * Makefile.am (gfor_hemper_src): Add it.
2734         (gfor_specific_c): Fix typo.
2735
2736 2003-09-19  Paul Brook  <paul@nowt.org>
2737
2738         * All: rename g95->gfc.
2739
2740 2003-09-18  XiaoQiang Zhang  <zhangapache@yahoo.com>
2741
2742         * io/write.c (output_float): Fix bug of FMT_E, Add comments.
2743
2744 2003-09-09  XiaoQiang Zhang  <zhangapache@yahoo.com>
2745
2746         * io/write.c (write_float): Dectection of positive infinite number,
2747         Not a Number(NaN) and negative infinite number.
2748         (ioutput_float): Bug fix for FMT_E and FMT_D processing to
2749         output a very_very small number ( < 0.1e-100 ).
2750
2751 2003-09-07  XiaoQiang Zhang  <zhangapache@yahoo.com>
2752
2753         * libgfortran.h (xtoa, itoa): Parameter modified.
2754         * io/io.h (namelist_info): Declaration to support namelist I/O
2755         (st_parameter): Add namelist related component
2756         (ionml, empty_internal_buffer, st_set_nml_var_int,
2757         st_set_nml_var_float, st_set_nml_var_char, st_set_nml_var_complex,
2758         st_set_nml_var_log): Declaration
2759         (set_integer, set_integer): Parameter changed
2760         * io/format.c (free_nodes): Fix annoying bug of lefting "deallocated"
2761          fnodes
2762         (parse_format_list): Fix bug about FMT_SLASH
2763         * io/list_read.c (push_char): Totally clear old saved_string, zeroize
2764         newly allocated saved_string
2765         (next_char): Add detection of End_Of_Line support
2766         (convert_integer): Now can process 64 bits interger
2767         (read_real): Bug fixed
2768         (init_at_eol, find_nml_node, match_namelist_name): Add new functions
2769         (match_namelist_name): New implemention
2770         * io/lock.c (ionml): New global variable
2771         (library_end): Free memory in ionml
2772         * io/open.c (st_open): Variable initializtion
2773         * io/read.c (max_value): 64 bits interger support
2774         (convert_precsion_real): New procedure to replace "strtod" with more
2775          features
2776         (read_f, read_radix): Input bug fix
2777         * io/transfer.c: (sf_seen_eor): New static variable
2778         (read_sf): Zeroize base buffer; fix bugs: single read statement can
2779         not get input in mutli line when read from stdin
2780         (formatted_transfer): Fix bug of FMT_O, FMT_B, FMT_Z for INTEGER type
2781          request
2782         (data_transfer_init): Clear internal buffer for Internel File I/O.
2783         Internal File now worked. Detect some error condition for namelist.
2784         Some minor bug fix
2785         (next_record_w): Internal file and Namelist I/O support.
2786         (st_set_nml_var, st_set_nml_var_float, st_set_nml_var_char,
2787         st_set_nml_var_complex, st_set_nml_var_log): Implemention.
2788         * io/unit.c (implicit_unit): Deletion
2789         (get_unit): Now cannot open a unit implicitly.
2790         * io/unix.c (mmap_alloc): Fix fatal error in calculating the length of
2791         mapped buffer.
2792         (mem_alloc_r_at): Internal file I/O support added
2793         (empty_internal_buffer): New function
2794         * io/write.c (extract_int): Support 64 bits interger processing
2795         (output_float): Varibale initialization
2796         (write_float): Infinite real number detection.
2797         (write_int): 64 bits integer I/O support
2798         (write_decimal): New function to output decimal number
2799         (otoa, btoa): Better implemention and 64 bits interger support
2800         (namelist_write): New function
2801         * runtime/error.c (itoa, xtoa): Better implemention and 64 bits
2802         interger support
2803
2804 2003-08-15  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
2805
2806         * libgfortran.h (os_error, runtime_error,internal_error, sys_exit,
2807         get_mem ): Add attribute.
2808         * intrinsics/spread_generic.c (__spread): Fix spelling.
2809         * io/inquire.c (inquire_via_filename): Add const.
2810         * io/io.h (sys_exit): Add attribute.
2811         * io/io.h (move_pos_offset): Add move_pos_offset.
2812         * io/io.h (compare_file_filename, inquire_sequential, inquire_direct,
2813         inquire_formatted, inquire_unformatted, inquire_read, inquire_write,
2814         inquire_readwrite, convert_real, write_a, write_b, write_d, write_e,
2815         write_en, write_es, write_f, write_i, write_l, write_o, write_x,
2816         write_z): Add const.
2817         * io/read.c (convert_real): Add const.
2818         * io/transfer.c (type_name): Add const.
2819         * io/unix.c (unpack_filename, compare_file_filename,inquire_sequential,
2820         inquire_direct, inquire_formatted, inquire_unformatted, inquire_access,
2821         inquire_read, inquire_write, inquire_readwrite): Add const.
2822         * io/write.c (output_float): Remove unused variable.
2823         * io/write.c (write_a, extract_int, extract_real, output_float,
2824         write_float, write_int, write_i, write_b, write_o, write_z, write_d,
2825         write_e, write_f, write_en, write_es, write_logical, write_integer,
2826         write_character, write_real, write_complex): Add const.
2827         * runtime/error.c (rtoa): Remove unused variable.
2828         * runtime/select.c (select_string): Add const.
2829         * runtime/stop.c (stop_string): Add const.
2830
2831 2003-08-10  Paul Brook  <paul@nowt.org>
2832
2833         * Makefile.am (gfor_helper_src): Add intrinsics/abort.c.
2834         (FFLAGS): Add -fno-underscoring.
2835         * Makefile.in: Regenerate.
2836         * intrinsics/abort.c: New file.
2837
2838 2003-08-10  Erik Schnetter  <schnetter@uni-tuebingen.de>
2839
2840         * fmain.c (main): Do not call init and cleanup; call set_args instead.
2841         * libgfortran.h (init, cleanup): Remove declarations.
2842         (set_args): Add declaration.
2843         * runtime/main.c (init, cleanup): Make them static, and give them
2844         the constructor and destructor attributes.
2845         (set_args): New function.
2846
2847 2003-08-10  Paul Brook  <paul@nowt.org>
2848
2849         * intrinsics/strinf_intrinsics.c (compare_string): Return value based
2850         on which string is longest.
2851
2852 2003-08-10  Paul Brook  <paul@nowt.org>
2853
2854         * Makefile.am (EXTRA_DIST): Remove old files.
2855         * Makefile.in: Regenerate.
2856
2857 2003-07-26  Paul Brook  <paul@nowt.org>
2858
2859         Rename library to libgfortran.
2860         * libgfortran.h: Change prefix to _libgfortran_.
2861
2862 2003-07-24  Paul Brook  <paul@nowt.org>
2863
2864         * configure.in: Don't pull in system libtool.  Use toplevel
2865         auxiliary files.
2866
2867 2003-07-22  Paul Brook  <paul@nowt.org>
2868
2869         Regenerate all configury files.
2870
2871 2003-07-09  Chun Huang  <compiler@sohu.com>
2872
2873         * intrinsics/string_intrinsic.c (string_scan): New function.
2874         (string_verify): New function.
2875
2876 2003-06-25  Paul Brook  <paul@nowt.org>
2877
2878         * io/unix.c (mem_alloc_r_at, mem_alloc_w_at): Advance logical_offset.
2879         (mem_seek): Don't bother setting physical_offset.
2880
2881 2003-06-20  Paul Brook  <paul@nowt.org>
2882
2883         * libgfor.h (stop_numeric): Declare.
2884         * runtime/pause.c: New file.
2885         * Makefile.am: Add it.
2886
2887 2003-06-08  Paul Brook  <paul@nowt.org>
2888
2889         * m4/cexp.m4 (cabs): Use correct typed version.
2890         (csqrt): New function.
2891
2892 2003-06-07  Canqun Yang  <canqun@yahoo.com.cn>
2893
2894         Spotted by Benjamin and Tobias:
2895         * io/list_read.c: Add Separator '\t'.
2896         (parse_real, read_real): Accept real values starting with an optional
2897         sign follows a decimal point.
2898
2899 2003-06-06  Steven Bosscher  <steven@gcc.gnu.org>
2900
2901         * Makefile.am: Don't put cmath objects in subdir.
2902         * configure.in: Rename MATHOBJ to MATH_OBJ.
2903
2904 2003-06-02  Kejia Zhao  <Kejia_zh@yahoo.com.cn>
2905
2906         * intrinsics/associated.c: New file.
2907         * Makefile.am: Add it. Regenerate Makefile.in.
2908         * libgfor.h: Define g95_array_void, G95_DESCRIPTOR_DATA, and
2909         G95_DESCRIPTOR_DTYPE.
2910
2911 2003-06-01  Canqun Yang  <canqun@yahoo.com.cn>
2912
2913         * io/write.c (calcuate_exp): Rewrite it to avoid overflow.
2914         (calculate_G_format): Rewrite it to eliminate an infinte loop and set
2915         the scale_factor to 0 for F editing.
2916
2917 2003-05-11  Tobias Schlter  <innenminister@gmx.de>
2918
2919         * libgfor.h: Only include stdint.h if it exists.
2920
2921 2003-05-07  Paul Brook  <paul@nowt.org>
2922
2923         * libgfor.h: Use stdint.h types.
2924         * intrinsics/ishift.c: Ditto.
2925         * runtime/memory.c (malloc_t): Reorder fields for better alignment.
2926
2927 2003-05-05  Steven Bosscher  <steven@gcc.gnu.org>
2928
2929         * libgfor.h (offsetof): Define if nobody else does.
2930         * runtime/memory.c (HEADER_SIZE): Use it.
2931
2932 2003-05-01  Tobias Schlter  <innenminister@gmx.de>
2933
2934         * configure.in: Require autoconf 2.54.
2935
2936 2003-04-28  Tobias Schlter  <innenminister@gmx.de>
2937         Paul Brook  <paul@nowt.org>
2938
2939         * intrinsics/reshape_generic.c: Copy the whole element, not just the
2940         first byte.
2941         * m4/transpose.m4: New file.
2942         * Makefile.am: Add them.
2943         Regenerate generated files.
2944
2945 2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
2946
2947         * io/format.c (parse_format_list): Allow 'X' without integer
2948         prefix.  This is an extension.  Interpretation is '1X'.
2949
2950 2003-04-18  Tobias Schlter  <Tobias.Schlueter@physik.uni-muenchen.de>
2951
2952         * io/format.c (parse_format_list): Allow '0P'.
2953
2954 2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
2955
2956         * Makefile.in: Re-regenerate for automake 1.7.3.
2957
2958 2003-04-18  Canqun Yang  <canqun@yahoo.com.cn>
2959
2960         Port implementation for CHARACTER SELECT from Andy's tree.
2961         * runtime/select.c: New file
2962         * Makefile.am: Add it.
2963         * Makefile.in: Regenerate.
2964
2965 2003-04-17  Xiaoqiang Zhang <zhangapache@yahoo.com>
2966
2967         * io/transfer.c (formatted_transfer): Modified
2968         * io/unix.c (move_pos_offset): New Function.
2969         * io/format.c (parse_format_list): Modified.
2970
2971 2003-04-15  Xiaoqiang Zhang <zhangapache@yahoo.com>
2972
2973         * io/write.c (write_float,write_real): New implemention of
2974         FMT_G and default float editing.
2975         (calculate_exp,calculate_G_format,output_float): New Function.
2976         (write_float,write_real,write_logical): Modified
2977         * libgfor.h (default_rtoa): Remove Declaration.
2978         * runtime/error.c (default_rtoa): Remove Function.
2979
2980 2003-04-15  Steven Bosscher  <steven@gcc.gnu.org>
2981
2982         Spotted by Yang:
2983         * io/write.c (extract_real): Add missing break statement.
2984
2985 2003-04-13  Steven Bosscher  <steven@gcc.gnu.org>
2986
2987         * cpu_time.c: Make sure we have a definition of HZ.  Don't
2988         rely on CLOCKS_PER_SEC, it is always 1000000, on any system.
2989
2990 2003-04-13  Steven Bosscher  <steven@gcc.gnu.org>
2991             Paul Brook  <paul@nowt.org>
2992
2993         * configure.in: Check for process time headers and GETTIMEOFDAY.
2994         * makefile.am: Add intrinsics/cpu_time.c.
2995         * acinclude.m4: New file.
2996         * intrinsics/cpu_time.c: New file.
2997         * m4/dotprodl.m4: Fix typo.
2998         Regenerate generated files.
2999
3000 2003-04-11  Xiaoqiang Zhang <zhangapache@yahoo.com>
3001
3002         * io/write.c (extract_real): Ouput floating point value.
3003         (write_float): New Function.
3004         (write_e, write_f, write_en, write_es): Modified
3005         * io/transfer.c (formatted_transfer): Modified.
3006         * libgfor.h (default_rtoa): Declaration.
3007         (rtoa): Declaration.
3008         * runtime/error.c (default_rtoa): New Function.
3009         (rtoa): New Function.
3010
3011 2003-04-05  Paul Brook  <paul@nowt.org>
3012
3013         * intrinsics/spread_generic.c: New file.
3014         * Makefile.am: Add it. Regenerate Makefile.in.
3015
3016 2003-03-29  Paul Brook  <paul@nowt.org>
3017
3018         * intrinsics/pack_generic.c: New file.
3019         * intrinsics/unpack_generic.c: New file.
3020         * Makefile.am: Add them. Regenerate Makefile.in.
3021
3022 2003-03-25  Paul Brook  <paul@nowt.org>
3023
3024         * intrinsics/eoshift0.c: New file.
3025         * intrinsics/eoshift2.c: New file.
3026         * m4/eoshift1.m4: New file.
3027         * m4/eoshift3.m4: New file.
3028         * Makefile.am: Add them.
3029         * in_unpack_generic.c: Initialize src.
3030         Regenerate generated files.
3031
3032 2003-03-14  Paul Brook  <paul@nowt.org>
3033
3034         * m4/shape.m4: Work properly with array temporaries.
3035         * m4/in_pack.m4: Skip redundant checks for array temporaries.
3036         * runtime/in_pack_generic.c: Ditto.
3037
3038 2003-03-12  Paul Brook  <paul@nowt.org>
3039
3040         * m4/shape.m4: Work properly with noncontiguous arrays.
3041
3042 2003-03-08  Paul Brook  <paul@nowt.org>
3043
3044         * m4/in_pack.m4: Correctly handle zero sized and assumed size arrays.
3045         * runtime/in_pack_generic.c: Ditto.
3046
3047 2003-02-08  Paul Brook  <paul@nowt.org>
3048
3049         * intrinsics/reshape_generic.c: Use runtime_error to report errors.
3050         * io/close.c (st_close): Return void.
3051         * io/open.c (st_open): Return void.
3052         * libgfor.h (g95_array_char): Declare.
3053         (internal_malloc_size): Ditto.
3054         (internal_pack*, internal_unpack*): Ditto.
3055         * m4/in_pack.m4: Allocate storage if neccessary.  Fix logic for packed
3056         arrays.
3057         * m4/in_unpack.m4: Include file fixes.
3058         * m4/reshape.m4: Increment the correct source pointer.
3059         * Makefile.am (maxloc): Fix typo.
3060         * runtime/in_pack_generic.c: Call optimized functions. Allocate
3061         storage if neccessary. Fix logic for packed arrays.
3062         * runtime/in_unpack_generic.c: Call optimized functions.
3063         * runtime/main.c: Use runtime_error to report errors.
3064         * memory.c (internal_malloc_size): Make non-static.
3065
3066 2003-02-02  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
3067
3068         * reshape_packed.c, lock.c: Add #include <string.h>.
3069         * libgfor.h, format.c, inquire.c, io.h, transfer.c, unix.c,
3070         environ.c, error.c, memory.c, string.c: Add const.
3071         * error.c (show_locus): Add void.
3072
3073 2003-02-21  Paul Brook  <paul@nowt.org>
3074
3075         * m4/in_pack.m4: Avoid returning const * parameter.
3076         * Makefile.am: Only regenerate files in maintainer mode.
3077
3078 2003-02-20  Paul Brook  <paul@nowt.org>
3079
3080         Add array repacking support functions.
3081         * m4/in_pack.m4, m4/in_unpack.m4: New files.
3082         * runtime/in_pack_generic.c, runtime/in_unpack_generic.c: New files.
3083         * Makefile.am: Build them.  Regenerate configury files.
3084         * generated/: New directory for generated files (need to move
3085         everything else there).
3086
3087 2003-02-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
3088
3089         * m4/cexp.m4: Fix typo.
3090
3091 2003-01-26  Paul Brook  <paul@nowt.org>
3092
3093         * intrinsics/: Add missing generated files.
3094
3095 2003-01-26  Paul Brook  <paul@nowt.org>
3096
3097         * Makefile.am: Put -I before the filename.
3098
3099 2003-01-24  Paul Brook  <paul@nowt.org>
3100
3101         * configure.in: Add AM_MAINTAINER_MODE.
3102
3103 2003-01-23  Paul Brook  <paul@nowt.org>
3104
3105         * configure.in, Makefile.am: Modify to work with unmodified autoconf
3106         and auotmake.
3107         Also regenerate other configury files.
3108
3109 2003-01-21  Paul Brook  <paul@nowt.org>
3110
3111         * io/read.c: Don't use stdint.h, it doesn't exist on cygwin.
3112
3113 2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
3114
3115         * io/read.c (read_f): Don't use alloca, but safe get_mem instead.
3116         Don't include "alloca.h".
3117
3118 2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
3119
3120         * intrinsics/string.c: Rename to intrinsics/string_intrinsics.c.
3121         * Makefile.am: Adjust file name.
3122         * Makefile.in: Regenerate.
3123         * gfortypes.h: Kill, include everything in...
3124         * libgfor.h: ...here.  Include config.h
3125         * fmain.c, intrinsics/ishftc.c, intrinsic/reshape_generic.c,
3126         intrinsics/reshape_i4.c, intrinsics/reshape_i8.c,
3127         intrinsics/reshape_packed.c, intrinsics/size.c,
3128         m4/reshape.m4, runtime/main.c, runtime/memory.c: Use macro
3129         for prefix for all functions instead of hardcoded.
3130
3131 2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
3132
3133         * io/lock.c (library_end): Propagate library return
3134         code.
3135
3136 2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
3137
3138         Port fixes from Andy's tree:
3139         * io/read.c (read_decimal): Reverse sense of overflow
3140         comparison during integer reads.
3141         * io/format.c (revert): Fix comment.
3142         (next_format): Fix format revision.
3143         * io/unix.c: Fix and simplify mmap version of stream
3144         functions.
3145
3146 2003-01-11  Paul Brook  <paul@nowt.org>
3147
3148         * configure, Makefile.in: Regenerate.
3149
3150 2003-01-11  Paul Brook  <paul@nowt.org>
3151
3152         * runtime/stop.c: Rewrite.
3153
3154 2003-01-08  Paul Brook  <paul@nowt.org>
3155
3156         * configure, Makefile.in: Regenerate.
3157
3158 2003-01-05  Paul Brook  <paul@nowt.org>
3159
3160         * (*.m4) Move to m4/.
3161         * intrinsics/string.c (_gfor_string_index): New Function.
3162
3163 2002-12-29  Paul Brook  <paul@nowt.org>
3164
3165         * intrinsics/reshape.*: New files.
3166         * gcc_config.patch: Update to new GCC configure system.
3167
3168 2002-10-10  Paul Brook  <paul@nowt.org>
3169
3170         * intrinsics/size.c: New file.
3171         * intrinsics/shape.m4: New file.
3172         * Makefile.am: Add above files.
3173
3174 2002-10-02  Paul Brook  <paul@nowt.org>
3175
3176         * fmain.c (main): Move here.
3177         * libgfor.c: From here.
3178         * libgfor.h (gfor_init, gfor_runtime_cleanup): Declare.
3179         * Makefile.am: Build libgforbegin.
3180         * gcc_config.patch: Remove stray -march=athlon.
3181         * dotprodl.m4: Fix use of L8_TO_L4 macro.
3182         * ifunction.m4: Move variable declarations to allow compilation with
3183         gcc < 3.0
3184         * specific.m4, specific4.m4: Fix typo typecode->type_code.
3185         * README: Document use of patch -p1.
3186
3187 2002-09-12  Paul Brook  <paul@nowt.org>
3188
3189         * math/*: Add complex math library functions.
3190         * intrinsics/specific(2).m4: Generate Specific intrinsic functions.
3191         * Makefile.am: Add details for above.
3192         * configure.in: Use AC_PROG_F95.  Test for the presence of csin.
3193
3194 2002-09-09  Paul Brook  <paul@nowt.org>
3195
3196         * libgfor.c (determine_endianness): Use an array rather than a struct.
3197         * intrinsics/dotprod*, matmul*: Implement DOT_PRODUCT and MATMUL.
3198
3199 2002-09-09  Steven Bosscher  <s.bosscher@student.tudelft.nl>
3200
3201         * libgfor.c: Add fatal signal handler.
3202         Romove superfluous abort() calls.
3203
3204 2002-09-07  Paul Brook <paul@nowt.org>
3205
3206         * Makefile.am, intrinsics: Major rewrite.
3207
3208 2002-09-02  Paul Brook <paul@nowt.org>
3209
3210         * Makefile.am: Added -I$(srcdir) to m4 rule.
3211
3212 2002-08-30  Paul Brook <paul@nowt.org>
3213
3214         * io/*: Integrated libgforio.
3215         * Makefile.am, configure.in: Make compatable with GCC. Build code for
3216         intrinsics in the intrisics directory.
3217         * intrinsics/intrinsics.m4: Move here. Strip directories from the
3218         filename. Add 'and' and 'all' intrinsics.
3219
3220 2002-08-17  Paul Brook <paul@nowt.org>
3221
3222         * ALL: First release as more than just a single file