OSDN Git Service

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