OSDN Git Service

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