OSDN Git Service

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