OSDN Git Service

2008-03-23 H.J. Lu <hongjiu.lu@intel.com>
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2008-03-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2
3         PR libfortran/35632
4         * io/transfer.c (data_transfer_init):  Fix whitespace.
5         (next_record_w): Truncate the file only if the stream
6         position is short of the file end.
7
8 2008-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
9
10         * intrinsics/pack_generic.c:  Fix typo.
11
12 2008-03-21  Janne Blomqvist  <jb@gcc.gnu.org>
13
14         * gfortran.map: Move erfc_scaled symbols to new symbol node
15         GFORTRAN_1.1, thereby fixing ABI bug introduced in r132846.
16
17 2008-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>
18
19         PR libfortran/32972
20         * runtime/in_pack_generic.c (internal_pack):  Call correct
21         function, pack_i16, for GFC_INTEGER_16.
22
23 2008-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>
24
25         PR libfortran/32972
26         * Makefile.am:  Add new variable, i_pack_c, containing
27         pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, pack_i16.c,
28         pack_r4.c, pack_r8.c, pack_r10.c, pack_r16.c, pack_c4.c,
29         pack_c8.c, pack_c10.c, pack_c16.c.
30         Add m4/pack.m4 to m4_files.
31         Add i_pack_c to gfor_built_src.
32         Add rule to generate i_pack_c from m4/pack.m4.
33         * Makefile.in:  Regenerated.
34         * libgfortran.h: Add prototypes for pack_i1, pack_i2, pack_i4,
35         pack_i8, pack_i16, pack_r4, pack_r8, pack_c4, pack_c8,
36         pack_c10, pack_c16.
37         * intrinsics/pack_generic.c:  Add calls to specific
38         pack functions.
39         * m4/pack.m4:  New file.
40         * generated/pack_i1.c:  New file.
41         * generated/pack_i2.c:  New file.
42         * generated/pack_i4.c:  New file.
43         * generated/pack_i8.c:  New file.
44         * generated/pack_i16.c:  New file.
45         * generated/pack_r4.c:  New file.
46         * generated/pack_r8.c:  New file.
47         * generated/pack_r10.c:  New file.
48         * generated/pack_r16.c:  New file.
49         * generated/pack_c4.c:  New file.
50         * generated/pack_c8.c:  New file.
51         * generated/pack_c10.c:  New file.
52         * generated/pack_c16.c:  New file.
53
54 2008-03-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
55
56         PR libfortran/35627
57         * io/list_read.c (free_line): Clear the line buffer enable flag and
58         reset the index into line_buffer, aka item_count.
59         (next_char): Cleanup whitespace.
60         (read_logical): Use unget_char to assure that the first character of the
61         bad logical is saved in case it is part of an object name. Remove the
62         clearing of index and flag that is now in free_line.
63         (read_real): Likewise.
64
65 2008-03-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
66
67         PR libfortran/32972
68         * runtime/in_pack_generic.c (internal_pack):  Fix typo in
69         last commit.
70
71 2008-03-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
72
73         PR libfortran/32972
74         * Makefile.am (in_pack_c): Add in_pack_i1.c, in_pack_i2.c,
75         in_pack_r4.c, in_pack_r8.c, in_pack_r10.c and in_pack_r16.c.
76         (in_unpack_c): Add in_unpack_i1.c, in_unpack_i2.c,
77         in_unpack_r4.c, in_unpack_r8.c, in_unpack_r10.c and
78         in_unpack_r16.c.
79         * Makefile.in: Regenerate.
80         * libgfortran.h:  Add prototypes for internal_pack_1,
81         internal_pack_2, internal_pack_16, internal_pack_r4,
82         internal_pack_r8, internal_pack_r10, internal_pack_r16,
83         internal_pack_c10 and internal_pack_c16.  Add prototypes for
84         internal_unpack_1, internal_unpack_2, internal_unpack_16,
85         internal_unpack_r4, internal_unpack_r8, internal_unpack_r10,
86         internal_unpack_r16, internal_unpack_c10 and
87         internal_unpack_c16.
88         * runtime/in_pack_generic.c (internal_pack): Use sizeof instead
89         of hardwired sizes.
90         Add calls to internal_pack_1, internal_pack_2,
91         internal_pack_16, internal_pack_r4, internal_pack_r8,
92         internal_pack_r10, internal_pack_r16, internal_pack_c10 and
93         internal_pack_c16.
94         * runtime/in_unpack_generic.c (internal_unpack):  Use sizeof
95         instead of hardwired sizes.
96         Add calls to internal_unpack_1, internal_unpack_2,
97         internal_unpack_16, internal_unpack_r4, internal_unpack_r8,
98         internal_unpack_r10, internal_unpack_r16, internal_unpack_c10
99         and internal_unpack_c16.
100         * generated/in_pack_r4.c:  New file.
101         * generated/in_pack_i2.c:  New file.
102         * generated/in_unpack_i1.c:  New file.
103         * generated/in_pack_r10.c:  New file.
104         * generated/in_unpack_r4.c:  New file.
105         * generated/in_unpack_i2.c:  New file.
106         * generated/in_unpack_r16.c:  New file.
107         * generated/in_pack_r8.c:  New file.
108         * generated/in_unpack_r10.c:  New file.
109         * generated/in_unpack_r8.c:  New file.
110         * generated/in_pack_r16.c:  New file.
111         * generated/in_pack_i1.c:  New file.
112
113 2008-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
114
115         PR libfortran/35617
116         * io/list_read.c (eat_separator): If next character after eatline is '!'
117         then eatline again. 
118
119 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
120
121         * aclocal.m4: Regenerate.
122         * configure: Likewise.
123         * Makefile.in: Likewise.
124
125 2008-03-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
126
127         PR libfortran/35524
128         * intrinsics/erfc_scaled_inc.c: Only define the long double
129         variant of erfc_scaled if expl is available.
130
131 2008-03-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
132
133         PR libfortran/32812
134         * intrinsics/random.c (scramble_seed, unscramble_seed): New
135         functions.
136         (random_seed_i4): Scramble the seed the user gives us before
137         storing it, and unscramble it when we return it back later.
138
139 2008-03-05  Hans-Peter Nilsson  <hp@axis.com>
140
141         PR libfortran/35293
142         * io/unix.c (fd_truncate): Fold s->special_file case into
143         success case of ftruncate/chsize call instead of the failure case.
144         Make failure case actually return failure.  Properly update stream
145         pointers on failure.  Call runtime_error for targets without
146         neither ftruncate nor chsize where such a call would be needed.
147
148 2008-03-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
149
150         PR fortran/33197
151         * intrinsics/erfc_scaled_inc.c: New file.
152         * intrinsics/erfc_scaled.c: New file.
153         * gfortran.map (GFORTRAN_1.0): Add _gfortran_erfc_scaled_r*.
154         * Makefile.am: Add intrinsics/erfc_scaled.c.
155         * config.h.in: Regenerate.
156         * configure: Regenerate.
157         * Makefile.in: Regenerate.
158
159 2008-03-01  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
160
161         PR libfortran/35355
162         * intrinsics/time_1.h (__time_1): Fix calculation of user_usec
163         for mingw.
164
165 2008-03-01  Janne Blomqvist  <jb@gcc.gnu.org>
166
167         PR libfortran/35063
168         * io/unit.c (destroy_unit_mutex): Call __gthread_mutex_destroy
169         instead of macro kludge.
170         
171 2008-02-25  Janne Blomqvist  <jb@gcc.gnu.org>
172
173         PR fortran/29549
174         * Makefile.am: Add -fcx-fortran-rules to AM_CFLAGS for all of
175         libgfortran.
176         * Makefile.in: Regenerated.
177
178 2008-02-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
179
180         * m4/ifunction_logical.m4: Add casts to get rid of warnings.
181         * generated/all_l1.c: Regenerate.
182         * generated/all_l2.c: Regenerate.
183         * generated/all_l4.c: Regenerate.
184         * generated/all_l8.c: Regenerate.
185         * generated/all_l16.c: Regenerate.
186         * generated/any_l1.c: Regenerate.
187         * generated/any_l2.c: Regenerate.
188         * generated/any_l4.c: Regenerate.
189         * generated/any_l8.c: Regenerate.
190         * generated/any_l16.c: Regenerate.
191         * generated/count_1_l.c: Regenerate.
192         * generated/count_2_l.c: Regenerate.
193         * generated/count_4_l.c: Regenerate.
194         * generated/count_8_l.c: Regenerate.
195         * generated/count_16_l.c: Regenerate.
196
197 2008-02-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
198
199         PR libfortran/32841
200         * acinclude.m4: Don't use HAVE_MATH_H.
201         * configure: Regenerate.
202
203 2008-02-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
204
205         PR libfortran/35132
206         * io/transfer.c (next_record_w): Truncate after the last record for
207         STREAM I/O.
208
209         PR libfortran/34954
210         * io/transfer.c (data_transfer_init): Initialize dtp->rec if writing.
211
212         PR libfortran/34974
213         * io/transfer.c (formatted_transfer_scalar): Flush the buffer if skips
214         is less than zero. (next_record_w): Use sseek to position the file to
215         the max position reached.
216
217 2008-02-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
218
219         PR libfortran/35036
220         * write_float.def (output_float):  Add error checks for zero digits
221         after decimal point in E and D format specifiers.
222         
223 2008-02-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
224
225         PR libfortran/35063
226         * io/unit.c (destroy_unit_mutex): New function that uses
227         __gthread_mutex_destroy_function or pthread_mutex_destroy after
228         unlocking and before free_mem for final closure of I/O unit.
229         (delete_root): Use new function.
230         (free_internal_unit): Likewise.
231         (close_unit_1): Likewise.
232
233 2008-02-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
234
235         PR libfortran/35001
236         * m4/shape.m4:  Return 0 for extents <= 0.
237         * generated/shape_i4.c:  Regenerated.
238         * generated/shape_i8.c:  Regenerated.
239         * generated/shape_i16.c:  Regenerated.
240
241 2008-01-27  Thomas Koenig  <tkoenig@gcc.gnu.org>
242
243         PR libfortran/34980
244         * m4/shape.m4:  If return array is empty, return early.
245         * generated/shape_i4.c:  Regenerated.
246         * generated/shape_i8.c:  Regenerated.
247         * generated/shape_i16.c:  Regenerated.
248
249 2008-01-26  Thomas Koenig  <tkoenig@gcc.gnu.org>
250
251         PR libfofortran/34887
252         * io/transfer.c (next_record_w): Always move to the farthest
253         position when completing the record (also when we are
254         processing a slash edit descriptor).
255
256 2008-01-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
257
258         PR libfortran/34876
259         * io/transfer.c (write_buf): Handle case of zero sized array.
260         (transfer_array): Set data pointer to NULL and size to zero.  Then
261         make a data transfer and return.
262         
263 2008-01-24  David Edelsohn  <edelsohn@gnu.org>
264
265         * configure: Regenerate.
266
267 2008-01-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
268
269         PR libfortran/34795
270         * io/inquire.c (inquire_via_unit): If a unit is opened, return values
271         according to the open action for DIRECT, FORMATTED, and UNFORMATTED.
272         (inquire_via_filename): Return "UNKNOWN" for SEQUENTIAL, DIRECT,
273         FORAMATTED, and UNFORMATTED inquiries.
274         * io/unix.c (inquire_sequential): Return "UNKNOWN" when appropriate
275         for files that are not opened. (inquire_direct): Same.
276         (inquire_formatted): Same.
277         
278 2008-01-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
279
280         PR libfortran/34782
281         * io/transfer.c (formatted_transfer_scalar): Set max_pos to the greater
282         of the current max_pos or the newly calculated position.
283
284 2008-01-18  Tobias Burnus  <burnus@net-b.de>
285
286         * io/write.c (write_real): Increase default precision
287         for REAL(16) by one.
288
289 2008-01-16  Steven Bosscher  <steven@gcc.gnu.org>
290
291         PR libfortran/34669
292         * mk-kinds-h.sh: Compile with -S to avoid calling the assembler,
293         to avoid piping the -fdump-parse-tree output to the assembler
294         when configuring with -pipe.
295         * mk-sik-inc.sh: Likewise.
296         * mk-srk-inc.sh: Likewise.
297
298 2008-01-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
299
300         PR libfortran/34671
301         * gfortran.am: Added _gfortran_all_l1, _gfortran_all_l2,
302         _gfortran_any_l1, _gfortran_any_l2, -28,15 _gfortran_count_1_l,
303         _gfortran_count_16_l, _gfortran_count_2_l, _gfortran_count_4_l and
304         _gfortran_count_8_l Removed _gfortran_count_16_l16,
305         _gfortran_count_16_l4, _gfortran_count_16_l8,
306         _gfortran_count_4_l16, _gfortran_count_4_l4, _gfortran_count_4_l8,
307         _gfortran_count_8_l16, _gfortran_count_8_l4 and
308         _gfortran_count_8_l8.
309         * Makefile.am: Added generated/any_l1.c and generated/any_l2.c to
310         i_any_c.  Added generated/all_l1. and generated/all_l2.c to
311         i_all_c.  Removed generated/count_4_l4.c, generated/count_8_l4.c,
312         generated/count_16_l4.c, generated/count_4_l8.c,
313         generated/count_8_l8.c, generated/count_16_l8.c,
314         generated/count_4_l16.c, generated/count_8_l16.c, and
315         generated/count_16_l16.c from i_count_c.  Added count_1_l.c,
316         count_2_l.c, count_4_l.c, count_8_l.c and count_16_l.c to
317         i_count_c.  I_M4_DEPS2 depends on ifunction_logical.m4, for
318         any of the files generated from all.m4, any.m4 and count.m4.
319         * Makefile.in:  Regenerated.
320         * m4/ifunction_logical.m4:  New file.  Use
321         GFC_LOGICAL_1 pointer for access to source arrays.
322         * m4/any.m4:  Include ifunction_logical.m4 instead of
323         ifunction.m4.  Don't check atype_name.
324         * m4/all.m4:  Likewise.
325         * m4/count.m4:  Likewise.
326         * generated/any_l1.c:  New file.
327         * generated/any_l2.c:  New file.
328         * generated/all_l1.c:  New file.
329         * generated/count_1_l.c:  New file.
330         * generated/count_2_l.c:  New file.
331         * generated/count_4_l.c:  New file.
332         * generated/count_8_l.c:  New file.
333         * generated/count_16_l.c:  New file.
334         * generated/any_l4.c:  Regenerated.
335         * generated/any_l8.c:  Regenerated.
336         * generated/any_l16.c:  Regenerated.
337         * generated/all_l4.c: Regenerated.
338         * generated/all_l8.c: Regenerated.
339         * generated/all_l16.c: Regenerated.
340         * generated/count_4_l4.c:  Removed.
341         * generated/count_4_l8.c:  Removed.
342         * generated/count_4_l16.c:  Removed.
343         * generated/count_8_l4.c:  Removed.
344         * generated/count_8_l8.c:  Removed.
345         * generated/count_8_l16.c:  Removed.
346         * generated/count_16_l4.c:  Removed.
347         * generated/count_16_l8.c:  Removed.
348         * generated/count_16_l16.c:  Removed.
349
350 2008-01-13  Thomas Koenig  <tkoenig@gcc.gnu.org>
351
352         PR libfortran/34746
353         * m4/iforeach.m4 (name`'rtype_qual`_'atype_code):  Use %ld
354         in printf format for all bounds checking; cast all
355         integer-like arguments to runtime_error() to long int.
356         (`m'name`'rtype_qual`_'atype_code):  Likewise.
357         (`s'name`'rtype_qual`_'atype_code):  Likewise.
358         * m4/ifunction.m4 (name`'rtype_qual`_'atype_code):  Likewise.
359         (`m'name`'rtype_qual`_'atype_code):  Likewise.
360         (`s'name`'rtype_qual`_'atype_code):  Likewise.
361         * generated/all_l16.c: Regenerated.
362         * generated/all_l4.c: Regenerated.
363         * generated/all_l8.c: Regenerated.
364         * generated/any_l16.c: Regenerated.
365         * generated/any_l4.c: Regenerated.
366         * generated/any_l8.c: Regenerated.
367         * generated/count_16_l16.c: Regenerated.
368         * generated/count_16_l4.c: Regenerated.
369         * generated/count_16_l8.c: Regenerated.
370         * generated/count_4_l16.c: Regenerated.
371         * generated/count_4_l4.c: Regenerated.
372         * generated/count_4_l8.c: Regenerated.
373         * generated/count_8_l16.c: Regenerated.
374         * generated/count_8_l4.c: Regenerated.
375         * generated/count_8_l8.c: Regenerated.
376         * generated/maxloc0_16_i1.c: Regenerated.
377         * generated/maxloc0_16_i16.c: Regenerated.
378         * generated/maxloc0_16_i2.c: Regenerated.
379         * generated/maxloc0_16_i4.c: Regenerated.
380         * generated/maxloc0_16_i8.c: Regenerated.
381         * generated/maxloc0_16_r10.c: Regenerated.
382         * generated/maxloc0_16_r16.c: Regenerated.
383         * generated/maxloc0_16_r4.c: Regenerated.
384         * generated/maxloc0_16_r8.c: Regenerated.
385         * generated/maxloc0_4_i1.c: Regenerated.
386         * generated/maxloc0_4_i16.c: Regenerated.
387         * generated/maxloc0_4_i2.c: Regenerated.
388         * generated/maxloc0_4_i4.c: Regenerated.
389         * generated/maxloc0_4_i8.c: Regenerated.
390         * generated/maxloc0_4_r10.c: Regenerated.
391         * generated/maxloc0_4_r16.c: Regenerated.
392         * generated/maxloc0_4_r4.c: Regenerated.
393         * generated/maxloc0_4_r8.c: Regenerated.
394         * generated/maxloc0_8_i1.c: Regenerated.
395         * generated/maxloc0_8_i16.c: Regenerated.
396         * generated/maxloc0_8_i2.c: Regenerated.
397         * generated/maxloc0_8_i4.c: Regenerated.
398         * generated/maxloc0_8_i8.c: Regenerated.
399         * generated/maxloc0_8_r10.c: Regenerated.
400         * generated/maxloc0_8_r16.c: Regenerated.
401         * generated/maxloc0_8_r4.c: Regenerated.
402         * generated/maxloc0_8_r8.c: Regenerated.
403         * generated/maxloc1_16_i1.c: Regenerated.
404         * generated/maxloc1_16_i16.c: Regenerated.
405         * generated/maxloc1_16_i2.c: Regenerated.
406         * generated/maxloc1_16_i4.c: Regenerated.
407         * generated/maxloc1_16_i8.c: Regenerated.
408         * generated/maxloc1_16_r10.c: Regenerated.
409         * generated/maxloc1_16_r16.c: Regenerated.
410         * generated/maxloc1_16_r4.c: Regenerated.
411         * generated/maxloc1_16_r8.c: Regenerated.
412         * generated/maxloc1_4_i1.c: Regenerated.
413         * generated/maxloc1_4_i16.c: Regenerated.
414         * generated/maxloc1_4_i2.c: Regenerated.
415         * generated/maxloc1_4_i4.c: Regenerated.
416         * generated/maxloc1_4_i8.c: Regenerated.
417         * generated/maxloc1_4_r10.c: Regenerated.
418         * generated/maxloc1_4_r16.c: Regenerated.
419         * generated/maxloc1_4_r4.c: Regenerated.
420         * generated/maxloc1_4_r8.c: Regenerated.
421         * generated/maxloc1_8_i1.c: Regenerated.
422         * generated/maxloc1_8_i16.c: Regenerated.
423         * generated/maxloc1_8_i2.c: Regenerated.
424         * generated/maxloc1_8_i4.c: Regenerated.
425         * generated/maxloc1_8_i8.c: Regenerated.
426         * generated/maxloc1_8_r10.c: Regenerated.
427         * generated/maxloc1_8_r16.c: Regenerated.
428         * generated/maxloc1_8_r4.c: Regenerated.
429         * generated/maxloc1_8_r8.c: Regenerated.
430         * generated/maxval_i1.c: Regenerated.
431         * generated/maxval_i16.c: Regenerated.
432         * generated/maxval_i2.c: Regenerated.
433         * generated/maxval_i4.c: Regenerated.
434         * generated/maxval_i8.c: Regenerated.
435         * generated/maxval_r10.c: Regenerated.
436         * generated/maxval_r16.c: Regenerated.
437         * generated/maxval_r4.c: Regenerated.
438         * generated/maxval_r8.c: Regenerated.
439         * generated/minloc0_16_i1.c: Regenerated.
440         * generated/minloc0_16_i16.c: Regenerated.
441         * generated/minloc0_16_i2.c: Regenerated.
442         * generated/minloc0_16_i4.c: Regenerated.
443         * generated/minloc0_16_i8.c: Regenerated.
444         * generated/minloc0_16_r10.c: Regenerated.
445         * generated/minloc0_16_r16.c: Regenerated.
446         * generated/minloc0_16_r4.c: Regenerated.
447         * generated/minloc0_16_r8.c: Regenerated.
448         * generated/minloc0_4_i1.c: Regenerated.
449         * generated/minloc0_4_i16.c: Regenerated.
450         * generated/minloc0_4_i2.c: Regenerated.
451         * generated/minloc0_4_i4.c: Regenerated.
452         * generated/minloc0_4_i8.c: Regenerated.
453         * generated/minloc0_4_r10.c: Regenerated.
454         * generated/minloc0_4_r16.c: Regenerated.
455         * generated/minloc0_4_r4.c: Regenerated.
456         * generated/minloc0_4_r8.c: Regenerated.
457         * generated/minloc0_8_i1.c: Regenerated.
458         * generated/minloc0_8_i16.c: Regenerated.
459         * generated/minloc0_8_i2.c: Regenerated.
460         * generated/minloc0_8_i4.c: Regenerated.
461         * generated/minloc0_8_i8.c: Regenerated.
462         * generated/minloc0_8_r10.c: Regenerated.
463         * generated/minloc0_8_r16.c: Regenerated.
464         * generated/minloc0_8_r4.c: Regenerated.
465         * generated/minloc0_8_r8.c: Regenerated.
466         * generated/minloc1_16_i1.c: Regenerated.
467         * generated/minloc1_16_i16.c: Regenerated.
468         * generated/minloc1_16_i2.c: Regenerated.
469         * generated/minloc1_16_i4.c: Regenerated.
470         * generated/minloc1_16_i8.c: Regenerated.
471         * generated/minloc1_16_r10.c: Regenerated.
472         * generated/minloc1_16_r16.c: Regenerated.
473         * generated/minloc1_16_r4.c: Regenerated.
474         * generated/minloc1_16_r8.c: Regenerated.
475         * generated/minloc1_4_i1.c: Regenerated.
476         * generated/minloc1_4_i16.c: Regenerated.
477         * generated/minloc1_4_i2.c: Regenerated.
478         * generated/minloc1_4_i4.c: Regenerated.
479         * generated/minloc1_4_i8.c: Regenerated.
480         * generated/minloc1_4_r10.c: Regenerated.
481         * generated/minloc1_4_r16.c: Regenerated.
482         * generated/minloc1_4_r4.c: Regenerated.
483         * generated/minloc1_4_r8.c: Regenerated.
484         * generated/minloc1_8_i1.c: Regenerated.
485         * generated/minloc1_8_i16.c: Regenerated.
486         * generated/minloc1_8_i2.c: Regenerated.
487         * generated/minloc1_8_i4.c: Regenerated.
488         * generated/minloc1_8_i8.c: Regenerated.
489         * generated/minloc1_8_r10.c: Regenerated.
490         * generated/minloc1_8_r16.c: Regenerated.
491         * generated/minloc1_8_r4.c: Regenerated.
492         * generated/minloc1_8_r8.c: Regenerated.
493         * generated/minval_i1.c: Regenerated.
494         * generated/minval_i16.c: Regenerated.
495         * generated/minval_i2.c: Regenerated.
496         * generated/minval_i4.c: Regenerated.
497         * generated/minval_i8.c: Regenerated.
498         * generated/minval_r10.c: Regenerated.
499         * generated/minval_r16.c: Regenerated.
500         * generated/minval_r4.c: Regenerated.
501         * generated/minval_r8.c: Regenerated.
502         * generated/product_c10.c: Regenerated.
503         * generated/product_c16.c: Regenerated.
504         * generated/product_c4.c: Regenerated.
505         * generated/product_c8.c: Regenerated.
506         * generated/product_i1.c: Regenerated.
507         * generated/product_i16.c: Regenerated.
508         * generated/product_i2.c: Regenerated.
509         * generated/product_i4.c: Regenerated.
510         * generated/product_i8.c: Regenerated.
511         * generated/product_r10.c: Regenerated.
512         * generated/product_r16.c: Regenerated.
513         * generated/product_r4.c: Regenerated.
514         * generated/product_r8.c: Regenerated.
515         * generated/sum_c10.c: Regenerated.
516         * generated/sum_c16.c: Regenerated.
517         * generated/sum_c4.c: Regenerated.
518         * generated/sum_c8.c: Regenerated.
519         * generated/sum_i1.c: Regenerated.
520         * generated/sum_i16.c: Regenerated.
521         * generated/sum_i2.c: Regenerated.
522         * generated/sum_i4.c: Regenerated.
523         * generated/sum_i8.c: Regenerated.
524         * generated/sum_r10.c: Regenerated.
525         * generated/sum_r16.c: Regenerated.
526         * generated/sum_r4.c: Regenerated.
527         * generated/sum_r8.c: Regenerated.
528
529 2008-01-11  Thomas Koenig  <tkoenig@gcc.gnu.org>
530
531         PR libfortran/34670
532         * m4/iparm.m4 (upcase):  New macro (copied from the m4 manual).
533         (u_name):  New macro for the upper case name of the intrinsic.
534         * m4/iforeach.m4 (name`'rtype_qual`_'atype_code):  Add
535         bounds checking and rank check, depending on
536         compile_options.bounds_check.
537         (`m'name`'rtype_qual`_'atype_code):  Likewise.
538         (`s'name`'rtype_qual`_'atype_code):  Likewise.
539         * m4/ifunction.m4 (name`'rtype_qual`_'atype_code):  Add
540         bounds checking and rank check, depending on
541         compile_options.bounds_check.
542         (`m'name`'rtype_qual`_'atype_code):  Likewise.
543         (`s'name`'rtype_qual`_'atype_code):  Likewise.
544         * generated/all_l16.c: Regenerated.
545         * generated/all_l4.c: Regenerated.
546         * generated/all_l8.c: Regenerated.
547         * generated/any_l16.c: Regenerated.
548         * generated/any_l4.c: Regenerated.
549         * generated/any_l8.c: Regenerated.
550         * generated/count_16_l16.c: Regenerated.
551         * generated/count_16_l4.c: Regenerated.
552         * generated/count_16_l8.c: Regenerated.
553         * generated/count_4_l16.c: Regenerated.
554         * generated/count_4_l4.c: Regenerated.
555         * generated/count_4_l8.c: Regenerated.
556         * generated/count_8_l16.c: Regenerated.
557         * generated/count_8_l4.c: Regenerated.
558         * generated/count_8_l8.c: Regenerated.
559         * generated/maxloc0_16_i1.c: Regenerated.
560         * generated/maxloc0_16_i16.c: Regenerated.
561         * generated/maxloc0_16_i2.c: Regenerated.
562         * generated/maxloc0_16_i4.c: Regenerated.
563         * generated/maxloc0_16_i8.c: Regenerated.
564         * generated/maxloc0_16_r10.c: Regenerated.
565         * generated/maxloc0_16_r16.c: Regenerated.
566         * generated/maxloc0_16_r4.c: Regenerated.
567         * generated/maxloc0_16_r8.c: Regenerated.
568         * generated/maxloc0_4_i1.c: Regenerated.
569         * generated/maxloc0_4_i16.c: Regenerated.
570         * generated/maxloc0_4_i2.c: Regenerated.
571         * generated/maxloc0_4_i4.c: Regenerated.
572         * generated/maxloc0_4_i8.c: Regenerated.
573         * generated/maxloc0_4_r10.c: Regenerated.
574         * generated/maxloc0_4_r16.c: Regenerated.
575         * generated/maxloc0_4_r4.c: Regenerated.
576         * generated/maxloc0_4_r8.c: Regenerated.
577         * generated/maxloc0_8_i1.c: Regenerated.
578         * generated/maxloc0_8_i16.c: Regenerated.
579         * generated/maxloc0_8_i2.c: Regenerated.
580         * generated/maxloc0_8_i4.c: Regenerated.
581         * generated/maxloc0_8_i8.c: Regenerated.
582         * generated/maxloc0_8_r10.c: Regenerated.
583         * generated/maxloc0_8_r16.c: Regenerated.
584         * generated/maxloc0_8_r4.c: Regenerated.
585         * generated/maxloc0_8_r8.c: Regenerated.
586         * generated/maxloc1_16_i1.c: Regenerated.
587         * generated/maxloc1_16_i16.c: Regenerated.
588         * generated/maxloc1_16_i2.c: Regenerated.
589         * generated/maxloc1_16_i4.c: Regenerated.
590         * generated/maxloc1_16_i8.c: Regenerated.
591         * generated/maxloc1_16_r10.c: Regenerated.
592         * generated/maxloc1_16_r16.c: Regenerated.
593         * generated/maxloc1_16_r4.c: Regenerated.
594         * generated/maxloc1_16_r8.c: Regenerated.
595         * generated/maxloc1_4_i1.c: Regenerated.
596         * generated/maxloc1_4_i16.c: Regenerated.
597         * generated/maxloc1_4_i2.c: Regenerated.
598         * generated/maxloc1_4_i4.c: Regenerated.
599         * generated/maxloc1_4_i8.c: Regenerated.
600         * generated/maxloc1_4_r10.c: Regenerated.
601         * generated/maxloc1_4_r16.c: Regenerated.
602         * generated/maxloc1_4_r4.c: Regenerated.
603         * generated/maxloc1_4_r8.c: Regenerated.
604         * generated/maxloc1_8_i1.c: Regenerated.
605         * generated/maxloc1_8_i16.c: Regenerated.
606         * generated/maxloc1_8_i2.c: Regenerated.
607         * generated/maxloc1_8_i4.c: Regenerated.
608         * generated/maxloc1_8_i8.c: Regenerated.
609         * generated/maxloc1_8_r10.c: Regenerated.
610         * generated/maxloc1_8_r16.c: Regenerated.
611         * generated/maxloc1_8_r4.c: Regenerated.
612         * generated/maxloc1_8_r8.c: Regenerated.
613         * generated/maxval_i1.c: Regenerated.
614         * generated/maxval_i16.c: Regenerated.
615         * generated/maxval_i2.c: Regenerated.
616         * generated/maxval_i4.c: Regenerated.
617         * generated/maxval_i8.c: Regenerated.
618         * generated/maxval_r10.c: Regenerated.
619         * generated/maxval_r16.c: Regenerated.
620         * generated/maxval_r4.c: Regenerated.
621         * generated/maxval_r8.c: Regenerated.
622         * generated/minloc0_16_i1.c: Regenerated.
623         * generated/minloc0_16_i16.c: Regenerated.
624         * generated/minloc0_16_i2.c: Regenerated.
625         * generated/minloc0_16_i4.c: Regenerated.
626         * generated/minloc0_16_i8.c: Regenerated.
627         * generated/minloc0_16_r10.c: Regenerated.
628         * generated/minloc0_16_r16.c: Regenerated.
629         * generated/minloc0_16_r4.c: Regenerated.
630         * generated/minloc0_16_r8.c: Regenerated.
631         * generated/minloc0_4_i1.c: Regenerated.
632         * generated/minloc0_4_i16.c: Regenerated.
633         * generated/minloc0_4_i2.c: Regenerated.
634         * generated/minloc0_4_i4.c: Regenerated.
635         * generated/minloc0_4_i8.c: Regenerated.
636         * generated/minloc0_4_r10.c: Regenerated.
637         * generated/minloc0_4_r16.c: Regenerated.
638         * generated/minloc0_4_r4.c: Regenerated.
639         * generated/minloc0_4_r8.c: Regenerated.
640         * generated/minloc0_8_i1.c: Regenerated.
641         * generated/minloc0_8_i16.c: Regenerated.
642         * generated/minloc0_8_i2.c: Regenerated.
643         * generated/minloc0_8_i4.c: Regenerated.
644         * generated/minloc0_8_i8.c: Regenerated.
645         * generated/minloc0_8_r10.c: Regenerated.
646         * generated/minloc0_8_r16.c: Regenerated.
647         * generated/minloc0_8_r4.c: Regenerated.
648         * generated/minloc0_8_r8.c: Regenerated.
649         * generated/minloc1_16_i1.c: Regenerated.
650         * generated/minloc1_16_i16.c: Regenerated.
651         * generated/minloc1_16_i2.c: Regenerated.
652         * generated/minloc1_16_i4.c: Regenerated.
653         * generated/minloc1_16_i8.c: Regenerated.
654         * generated/minloc1_16_r10.c: Regenerated.
655         * generated/minloc1_16_r16.c: Regenerated.
656         * generated/minloc1_16_r4.c: Regenerated.
657         * generated/minloc1_16_r8.c: Regenerated.
658         * generated/minloc1_4_i1.c: Regenerated.
659         * generated/minloc1_4_i16.c: Regenerated.
660         * generated/minloc1_4_i2.c: Regenerated.
661         * generated/minloc1_4_i4.c: Regenerated.
662         * generated/minloc1_4_i8.c: Regenerated.
663         * generated/minloc1_4_r10.c: Regenerated.
664         * generated/minloc1_4_r16.c: Regenerated.
665         * generated/minloc1_4_r4.c: Regenerated.
666         * generated/minloc1_4_r8.c: Regenerated.
667         * generated/minloc1_8_i1.c: Regenerated.
668         * generated/minloc1_8_i16.c: Regenerated.
669         * generated/minloc1_8_i2.c: Regenerated.
670         * generated/minloc1_8_i4.c: Regenerated.
671         * generated/minloc1_8_i8.c: Regenerated.
672         * generated/minloc1_8_r10.c: Regenerated.
673         * generated/minloc1_8_r16.c: Regenerated.
674         * generated/minloc1_8_r4.c: Regenerated.
675         * generated/minloc1_8_r8.c: Regenerated.
676         * generated/minval_i1.c: Regenerated.
677         * generated/minval_i16.c: Regenerated.
678         * generated/minval_i2.c: Regenerated.
679         * generated/minval_i4.c: Regenerated.
680         * generated/minval_i8.c: Regenerated.
681         * generated/minval_r10.c: Regenerated.
682         * generated/minval_r16.c: Regenerated.
683         * generated/minval_r4.c: Regenerated.
684         * generated/minval_r8.c: Regenerated.
685         * generated/product_c10.c: Regenerated.
686         * generated/product_c16.c: Regenerated.
687         * generated/product_c4.c: Regenerated.
688         * generated/product_c8.c: Regenerated.
689         * generated/product_i1.c: Regenerated.
690         * generated/product_i16.c: Regenerated.
691         * generated/product_i2.c: Regenerated.
692         * generated/product_i4.c: Regenerated.
693         * generated/product_i8.c: Regenerated.
694         * generated/product_r10.c: Regenerated.
695         * generated/product_r16.c: Regenerated.
696         * generated/product_r4.c: Regenerated.
697         * generated/product_r8.c: Regenerated.
698         * generated/sum_c10.c: Regenerated.
699         * generated/sum_c16.c: Regenerated.
700         * generated/sum_c4.c: Regenerated.
701         * generated/sum_c8.c: Regenerated.
702         * generated/sum_i1.c: Regenerated.
703         * generated/sum_i16.c: Regenerated.
704         * generated/sum_i2.c: Regenerated.
705         * generated/sum_i4.c: Regenerated.
706         * generated/sum_i8.c: Regenerated.
707         * generated/sum_r10.c: Regenerated.
708         * generated/sum_r16.c: Regenerated.
709         * generated/sum_r4.c: Regenerated.
710         * generated/sum_r8.c: Regenerated.
711
712 2008-01-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
713
714         PR libfortran/34676
715         * io/list_read.c (next_char): Only save the EOF condition for later if
716         advance="no".
717
718 2008-01-03  Thomas Koenig  <tkoenig@gcc.gnu.org>
719
720         PR libfortran/34565
721         * io/io.h:  Adjust protoypes for open_internal(),
722         next_array_record() and init_loop_spec().
723         * io/list_read.c (next_char):  Use argument "finished"
724         of next_array_record to check for end on internal file.
725         * io/unit.c:  Calculate the offset for an array
726         internal file and supply this informatin to open_internal().
727         * io/unix.c (open_internal):  Set the offset for the internal
728         file on open.
729         * io/transfer.c (init_loop_spec):  Calculate the starting
730         record in case of negative strides.  Return size of 0 for
731         an empty array.
732         (next_array_record):  Use an extra flag to signal that the
733         array is finished.
734         (next_record_r):  Use the new flag to next_array_record().
735         (next_record_w):  Likewise.