OSDN Git Service

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