OSDN Git Service

2010-09-07 Tobias Burnus <burnus@net-b.de>
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
1 2010-09-06  Tobias Burnus  <burnus@net-b.de>
2
3         PR fortran/38282
4         * gfortran.map: Add new iany, iall and iparity intrinsics.
5         * Makefile.am: Ditto.
6         * m4/iany.m4: New.
7         * m4/iall.m4: New.
8         * m4/iparity.m4: New.
9         * Makefile.in: Regenerate.
10         * generated/iall_i1.c: Generate.
11         * generated/iall_i2.c: Generate.
12         * generated/iall_i4.c: Generate.
13         * generated/iall_i8.c: Generate.
14         * generated/iall_i16.c: Generate.
15         * generated/iany_i1.c: Generate.
16         * generated/iany_i2.c: Generate.
17         * generated/iany_i4.c: Generate.
18         * generated/iany_i8.c: Generate.
19         * generated/iany_i16.c: Generate.
20         * generated/iparity_i1.c: Generate.
21         * generated/iparity_i2.c: Generate.
22         * generated/iparity_i4.c: Generate.
23         * generated/iparity_i8.c: Generate.
24         * generated/iparity_i16.c: Generate.
25
26 2010-09-05  Tobias Burnus  <burnus@net-b.de>
27
28         * m4/bessel.m4: Fix printf warning by casting to (long int).
29         * generated/bessel_r4.c:Regenerated.
30         * generated/bessel_r8.c: Regenerated.
31         * generated/bessel_r10.c: Regenerated.
32         * generated/bessel_r16.c: Regenerated.
33
34 2010-09-01  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
35
36         * intrinsics/execute_command_line.c: New file.
37         * gfortran.map (_gfortran_execute_command_line_i4,
38         _gfortran_execute_command_line_i8): New symbols.
39         * Makefile.am: Add new file intrinsics/execute_command_line.c.
40         * Makefile.in: Regenerated.
41
42 2010-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
43
44         * m4/mtype.m4 (upcase, hasmathfunc, mathfunc_macro): New macros.
45         * m4/fraction.m4: Use new macros to support quad-float types.
46         * m4/set_exponent.m4: Likewise.
47         * m4/spacing.m4: Likewise.
48         * m4/exponent.m4: Likewise.
49         * m4/nearest.m4: Likewise.
50         * m4/norm2.m4: Likewise.
51         * m4/bessel.m4: Likewise.
52         * m4/rrspacing.m4: Likewise.
53         * generated/bessel_r4.c:Regenerated.
54         * generated/bessel_r8.c: Regenerated.
55         * generated/bessel_r10.c: Regenerated.
56         * generated/bessel_r16.c: Regenerated.
57         * generated/exponent_r4.c: Regenerated.
58         * generated/exponent_r8.c: Regenerated.
59         * generated/exponent_r10.c: Regenerated.
60         * generated/exponent_r16.c: Regenerated.
61         * generated/fraction_r4.c: Regenerated.
62         * generated/fraction_r8.c: Regenerated.
63         * generated/fraction_r10.c: Regenerated.
64         * generated/fraction_r16.c: Regenerated.
65         * generated/nearest_r4.c: Regenerated.
66         * generated/nearest_r8.c: Regenerated.
67         * generated/nearest_r10.c: Regenerated.
68         * generated/nearest_r16.c: Regenerated.
69         * generated/norm2_r4.c: Regenerated.
70         * generated/norm2_r8.c: Regenerated.
71         * generated/norm2_r10.c: Regenerated.
72         * generated/norm2_r16.c: Regenerated.
73         * generated/rrspacing_r4.c: Regenerated.
74         * generated/rrspacing_r8.c: Regenerated.
75         * generated/rrspacing_r10.c: Regenerated.
76         * generated/rrspacing_r16.c: Regenerated.
77         * generated/set_exponent_r4.c: Regenerated.
78         * generated/set_exponent_r8.c: Regenerated.
79         * generated/set_exponent_r10.c: Regenerated.
80         * generated/set_exponent_r16.c: Regenerated.
81         * generated/spacing_r4.c: Regenerated.
82         * generated/spacing_r8.c: Regenerated.
83         * generated/spacing_r10.c: Regenerated.
84         * generated/spacing_r16.c: Regenerated.
85
86 2010-08-28  Tobias Burnus  <burnus@net-b.de>
87
88         * mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available.
89
90 2010-08-27  Tobias Burnus  <burnus@net-b.de>
91
92         PR fortran/33197
93         * libgfortran/m4/ifunction.m4 (FINISH_ARRAY_FUNCTION,
94         ARRAY_FUNCTION): Allow expression after loop.
95         * libgfortran/m4/norm2.m4: New for _gfortran_norm2_r{4,8,10,16}.
96         * libgfortran/m4/parity.m4: New for _gfortran_parity_l{1,2,4,8,16}.
97         * libgfortran/gfortran.map: Add new functions.
98         * libgfortran/Makefile.am: Ditto.
99         * libgfortran/m4/minloc1.m4: Add empty argument for ARRAY_FUNCTION.
100         * libgfortran/m4/maxloc1.m4: Ditto.
101         * libgfortran/m4/all.m4: Ditto.
102         * libgfortran/m4/minval.m4: Ditto.
103         * libgfortran/m4/maxval.m4: Ditto.
104         * libgfortran/m4/count.m4: Ditto.
105         * libgfortran/m4/product.m4: Ditto.
106         * libgfortran/m4/any.m4: Ditto.
107         * Makefile.in: Regenerated.
108         * generated/minval_r8.c: Regenerated.
109         * generated/maxloc1_4_r8.c: Regenerated.
110         * generated/minloc1_16_r16.c: Regenerated.
111         * generated/norm2_r4.c: Regenerated.
112         * generated/sum_i8.c: Regenerated.
113         * generated/parity_l2.c: Regenerated.
114         * generated/any_l16.c: Regenerated.
115         * generated/maxval_i2.c: Regenerated.
116         * generated/any_l2.c: Regenerated.
117         * generated/product_r4.c: Regenerated.
118         * generated/maxloc1_8_i4.c: Regenerated.
119         * generated/parity_l16.c: Regenerated.
120         * generated/all_l1.c: Regenerated.
121         * generated/product_i2.c: Regenerated.
122         * generated/minloc1_8_r16.c: Regenerated.
123         * generated/maxloc1_8_r16.c: Regenerated.
124         * generated/sum_r16.c: Regenerated.
125         * generated/sum_i1.c: Regenerated.
126         * generated/minloc1_4_r8.c: Regenerated.
127         * generated/maxloc1_16_r16.c: Regenerated.
128         * generated/minloc1_16_i4.c: Regenerated.
129         * generated/maxloc1_16_i4.c: Regenerated.
130         * generated/maxval_r16.c: Regenerated.
131         * generated/product_c10.c: Regenerated.
132         * generated/minloc1_8_i4.c: Regenerated.
133         * generated/all_l2.c: Regenerated.
134         * generated/product_c4.c: Regenerated.
135         * generated/sum_r4.c: Regenerated.
136         * generated/all_l16.c: Regenerated.
137         * generated/minloc1_16_r10.c: Regenerated.
138         * generated/sum_i2.c: Regenerated.
139         * generated/maxloc1_8_r8.c: Regenerated.
140         * generated/minval_i16.c: Regenerated.
141         * generated/parity_l4.c: Regenerated.
142         * generated/maxval_i4.c: Regenerated.
143         * generated/any_l4.c: Regenerated.
144         * generated/minval_i8.c: Regenerated.
145         * generated/maxloc1_4_i8.c: Regenerated.
146         * generated/minloc1_4_i16.c: Regenerated.
147         * generated/maxloc1_4_i16.c: Regenerated.
148         * generated/minloc1_8_r10.c: Regenerated.
149         * generated/product_i4.c: Regenerated.
150         * generated/maxloc1_8_r10.c: Regenerated.
151         * generated/sum_c16.c: Regenerated.
152         * generated/minloc1_16_r8.c: Regenerated.
153         * generated/maxloc1_16_r8.c: Regenerated.
154         * generated/count_4_l.c: Regenerated.
155         * generated/sum_r10.c: Regenerated.
156         * generated/count_8_l.c: Regenerated.
157         * generated/sum_c4.c: Regenerated.
158         * generated/maxloc1_16_r10.c: Regenerated.
159         * generated/minloc1_8_r8.c: Regenerated.
160         * generated/maxval_r10.c: Regenerated.
161         * generated/minval_i1.c: Regenerated.
162         * generated/maxloc1_4_i1.c: Regenerated.
163         * generated/minloc1_4_i8.c: Regenerated.
164         * generated/product_i16.c: Regenerated.
165         * generated/all_l4.c: Regenerated.
166         * generated/norm2_r16.c: Regenerated.
167         * generated/minval_r4.c: Regenerated.
168         * generated/maxloc1_4_r4.c: Regenerated.
169         * generated/sum_i4.c: Regenerated.
170         * generated/maxval_r8.c: Regenerated.
171         * generated/norm2_r8.c: Regenerated.
172         * generated/minloc1_4_i1.c: Regenerated.
173         * generated/minval_r16.c: Regenerated.
174         * generated/minval_i2.c: Regenerated.
175         * generated/maxloc1_4_i2.c: Regenerated.
176         * generated/product_r8.c: Regenerated.
177         * generated/maxloc1_8_i8.c: Regenerated.
178         * generated/sum_c10.c: Regenerated.
179         * generated/minloc1_4_r16.c: Regenerated.
180         * generated/maxloc1_4_r16.c: Regenerated.
181         * generated/count_1_l.c: Regenerated.
182         * generated/minloc1_4_r4.c: Regenerated.
183         * generated/minloc1_16_i8.c: Regenerated.
184         * generated/maxloc1_16_i8.c: Regenerated.
185         * generated/minloc1_4_i2.c: Regenerated.
186         * generated/maxloc1_8_i1.c: Regenerated.
187         * generated/minloc1_8_i8.c: Regenerated.
188         * generated/product_r16.c: Regenerated.
189         * generated/product_c8.c: Regenerated.
190         * generated/sum_r8.c: Regenerated.
191         * generated/norm2_r10.c: Regenerated.
192         * generated/minloc1_16_i16.c: Regenerated.
193         * generated/maxloc1_8_r4.c: Regenerated.
194         * generated/minloc1_16_i1.c: Regenerated.
195         * generated/maxloc1_16_i1.c: Regenerated.
196         * generated/minval_r10.c: Regenerated.
197         * generated/count_16_l.c: Regenerated.
198         * generated/parity_l8.c: Regenerated.
199         * generated/minloc1_8_i1.c: Regenerated.
200         * generated/minval_i4.c: Regenerated.
201         * generated/maxloc1_4_i4.c: Regenerated.
202         * generated/maxloc1_8_i2.c: Regenerated.
203         * generated/maxval_i8.c: Regenerated.
204         * generated/any_l8.c: Regenerated.
205         * generated/minloc1_4_r10.c: Regenerated.
206         * generated/minloc1_8_i16.c: Regenerated.
207         * generated/maxloc1_4_r10.c: Regenerated.
208         * generated/maxloc1_8_i16.c: Regenerated.
209         * generated/minloc1_16_r4.c: Regenerated.
210         * generated/maxloc1_16_r4.c: Regenerated.
211         * generated/product_i8.c: Regenerated.
212         * generated/sum_i16.c: Regenerated.
213         * generated/count_2_l.c: Regenerated.
214         * generated/maxloc1_16_i16.c: Regenerated.
215         * generated/minloc1_8_r4.c: Regenerated.
216         * generated/sum_c8.c: Regenerated.
217         * generated/minloc1_16_i2.c: Regenerated.
218         * generated/maxloc1_16_i2.c: Regenerated.
219         * generated/parity_l1.c: Regenerated.
220         * generated/maxval_i16.c: Regenerated.
221         * generated/maxval_i1.c: Regenerated.
222         * generated/minloc1_4_i4.c: Regenerated.
223         * generated/any_l1.c: Regenerated.
224         * generated/minloc1_8_i2.c: Regenerated.
225         * generated/product_c16.c: Regenerated.
226         * generated/product_r10.c: Regenerated.
227         * generated/product_i1.c: Regenerated.
228         * generated/all_l8.c: Regenerated.
229         * generated/maxval_r4.c: Regenerated.
230
231 2010-08-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
232
233         * config/fpu-387.h (has_sse): Remove cw_sse, unused.
234         Use fixed-length asm.
235
236 2010-08-23  Tobias Burnus  <burnus@net-b.de>
237
238         PR fortran/45323
239         * io/write.c (nml_write_obj, namelist_write): Cast argument
240         of toupper to int.
241
242 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
243
244         * configure: Regenerate.
245
246 2010-08-19  Tobias Burnus  <burnus@net-b.de>
247
248         PR fortran/36158
249         PR fortran/33197
250         * m4/bessel.m4: Implement bessel_jn and bessel_yn.
251         * gfortran.map: Add the generated bessel_jn_r{4,8,10,16}
252         and bessel_yn_r{4,8,10,16}.
253         * Makefile.am: Add bessel.m4.
254         * Makefile.in: Regenerated.
255         * generated/bessel_r4.c: Generated.
256         * generated/bessel_r16.c: Generated.
257         * generated/bessel_r8.c: Generated.
258         * generated/bessel_r10.c: Generated.
259
260 2010-08-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
261
262         PR libfortran/45108
263         * io/list_read.c (namelist_read): If namelist reading fails, use
264         generate_error and then continue the read loop.
265
266 2010-08-17  Jakub Jelinek  <jakub@redhat.com>
267
268         PR fortran/45308
269         * intrinsics/date_and_time.c (date_and_time): Pass __{zone,time,date}_len
270         instead of {ZONE,TIME,DATE}_LEN as second argument to fstrcpy.  Drop
271         asserts.  Adjust comment to the F2003 wording from the F95 wording.
272
273 2010-08-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
274
275         PR libfortran/44931
276         * io/inquire.c (inquire_via_unit): Add special case for __MINGW32__ to
277         return special file names CONIN$, CONOUT$, and CONERR$.
278
279 2010-08-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
280
281         PR libfortran/45143
282         * io/format.c: Remove fnode storage structure definitions, moving these
283         to format.h. (parse_format_list): Add check for data descriptors,
284         taking care of nested formats. Adjust calling parameters to pass a
285         check flag. (parse_format): Likewise.
286         * io/format.h: Add structures moved from format.c.
287         
288 2010-08-02  Janne Blomqvist  <jb@gcc.gnu.org>
289
290         * io/unit.c (update_position): Don't update the position flag for
291         non-seekable files, check for stell() error.
292
293 2010-08-01  Janne Blomqvist  <jb@gcc.gnu.org>
294
295         * io/unix.c (file_exists): Use access(2) instead of stat(2) to
296         test file existence.
297         (fallback_access): Move up in file, implement F_OK.
298
299 2010-07-31  David Edelsohn  <edelsohn@gnu.org>
300
301         * io/inquire.c: Include io.h before string.h.
302
303 2010-07-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
304
305         PR libfortran/44931
306         * io/inquire.c (inquire_via_unit): Use ttyname to return actual device
307         file name for stdin, stdout, and stderr.  If ttyname does not succeed
308         fall back to default names for these units. Include string.h to allow
309         using strlen function.
310         * unix.c: Remove typedef of unix_stream structure, move to unix.h.
311         * unix.h: Add typedef of unix_stream structure so that it is
312         accessible to inquire.c.
313
314 2010-07-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
315
316         PR libfortran/44953
317         * io/unix.c (mem_alloc_w4): Return gfc_char4_t instead of char type
318         pointer. (mem_write4): Remove cast to gfc_char4_t.
319         * io/transfer.c (write_block): Use a gfc_char4_t pointer.
320         (memset4): New helper function. (next_record_w): Use new helper
321         function rather than sset for internal units.  Don't attempt to pad
322         with spaces if it is not needed.
323         * io/unix.h: Update prototype for mem_alloc_w4.
324         * io/write.c (memset4): Use gfc_char4_t pointer and chracter type.
325         Don't use multiply by 4 to compute offset. (memcpy4): Likewise.
326         (write_default_char4): Use a gfc_char4_t pointer and update memset4
327         and memcpy calls. (write_a): Likewise. (write_l): Likewise.
328         (write_boz): Likewise. (write_decimal): Likewise. (write_x): Likewise.
329         (write_char): Add support for character(kind=4) internal units that
330         was previously missed. (write_integer): Use a gfc_char4_t pointer and
331         update memset4 and memcpy calls. (write_character): Likewise.
332         (write_separator): Add support for character(kind=4) internal units
333         that was previously missed.
334         * write_float.def (output_float): Use a gfc_char4_t pointer and
335         update memset4 and memcpy calls. (write_infnan): Likewise.
336         (output_float_FMT_G_): Likewise.
337
338 2010-07-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
339
340         PR libfortran/37077
341         * io/read.c (read_default_char4): Add support for reading into a
342         kind-4 character variable from a character(kind=4) internal unit.
343         * io/io.h (read_block_form4): Add prototype.
344         * io/unit.c (get_internal_unit): Add call to fbuf_init.
345         (free_internal_unit): Add call to fbuf_destroy. (get_unit): Fix
346         whitespace.
347         * io/transfer.c (read_sf_internal): Use fbuf_alloc to allocate a string
348         to recieve the wide characters translated to single byte chracters.
349         (read_block_form): Fix whitespace. (read_block_form4): New function to
350         read from a character(kind=4) internal unit into a character(kind=4)
351         variable. (read_block_direct): Fix whitespace. (write_block): Fix
352         whitespace. (formatted_transfer_scalar_read): Likewise.
353         (formatted_transfer_scalar_write): Likewise.
354         * io/write.c (write_character): Add support for list directed write of
355         a kind=1 character string to a character(kind=4) internal unit.
356
357 2010-07-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
358
359         PR libfortran/44934
360         * io/file_pos.c (st_endfile): Correctly set unit flags for form.
361         * io/transfer.c (data_transfer_init): Fix indentation of whitespace.
362
363 2010-07-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
364
365         PR libfortran/37077
366         * io/read.c: Fix comment.
367         * io/io.h (is_char4_unit): New macro.
368         * io/unit.c (get_internal_unit): Call new function open_internal4.
369         * io/unix.c (mem_alloc_r4): New function. (mem_alloc_w4): New function.
370         (mem_read4): New function, temporary stub. (mem_write4): New function.
371         (open_internal4): New function to set stream pointers to use the new
372         mem functions.
373         * io/transfer.c (write_block): Use new mem_alloc_w4 to access internal
374         units of kind=4.
375         * io/unix.h: Add prototypes for open_internal4, mem_alloc_w4, and
376         mem_alloc_r4.
377         * io/write.c (memset4): New helper function. (memcpy4): New helper
378         function. (write_default_char4): Use new helper functions.
379         (write_a): Likewise. (write_l): Likewise. (write_boz): Likewise.
380         (write_decimal): Likewise. (write_x): Likewise.
381         (write_integer): Likewise.
382         * io/write_float.def (output_float): Add code blocks to handle internal
383         unit kind=4 output utilizing gfc_char4_t pointers. (write_infnan): Use
384         new helper functions. (OUTPUT_FLOAT_FMT_G): Update this macro likewise.
385
386 2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
387
388         * config/fpu-387.h [__sun__ && __svr4__] Include <signal.h>,
389         <ucontext.h>.
390         (sigill_caught): New.
391         (sigill_hdlr): New function
392         (has_sse) [__sun__ && __svr4__]: Check if SSE instruction causes
393         SIGILL.
394
395 2010-07-11  Kai Tietz  <kai.tietz@onevision.com>
396
397         PR libfortran/44698
398         * io/unix.c (flush_buf): Add _commit for WIN32.
399
400 2010-06-28  Tobias Burnus  <burnus@net-b.de>
401
402         PR fortran/43298
403         * list_read.c (parse_real): Do not pass (..) on for NAN(..).
404         * read.c (convert_real): Fix comment about NAN/INF.
405
406 2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
407
408         * configure.ac (gfortran_use_symver): Only check for Sun-style symbol
409         versioning on Solaris 2.
410         * configure: Regenerate.
411
412 2010-07-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
413
414         * configure.ac: Check for Sun symbol versioning.
415         * configure: Regenerate.
416
417         * Makefile.am [LIBGFOR_USE_SYMVER]: Protect version_arg with
418         LIBGFOR_USE_SYMVER_GNU.
419         Add version_dep.
420         [LIBGFOR_USE_SYMVER_SUN]: Handle Sun symbol versioning.
421         [!LIBGFOR_USE_SYMVER]: Add version_dep.
422         (libgfortran_la_DEPENDENCIES): Set to $(version_dep).
423         * Makefile.in: Regenerate.
424
425 2010-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
426
427         PR libfortran/43298
428         * io/read.c: Add code to parse and read Inf, Infinity, NaN, and Nan with
429         optional parenthesis.
430
431 2010-06-28  Tobias Burnus  <burnus@net-b.de>
432
433         PR fortran/43298
434         * list_read.c (parse_real, read_real): Support NAN(alphanum).
435
436 2010-06-25  Tobias Burnus  <burnus@net-b.de>
437
438         * intrinsics/selected_real_kind.f90
439         (_gfortran_selected_real_kind2008): Add function.
440         (_gfortran_selected_real_kind): Stub which calls
441         _gfortran_selected_real_kind2008.
442         * gfortran.map (GFORTRAN_1.4): Add
443         _gfortran_selected_real_kind2008.
444         * mk-srk-inc.sh: Save also RADIX.
445
446 2010-06-25  Tobias Burnus  <burnus@net-b.de>
447
448         * runtime/compile_options.c (init_compile_options): Update
449         compile_options.allow_std for GFC_STD_F2008_OBS.
450         * io/transfer.c (formatted_transfer_scalar_read,
451         formatted_transfer_scalar_write): Fix allow_std check.
452         * io/list_read.c (nml_parse_qualifier): Ditto.
453
454 2010-06-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
455
456         PR libfortran/44477
457         * io/file_pos.c (st_endfile): Add check for ENDFILE when file is
458         already positioned after the EOF marker. Use find_or_create_unit
459         instead of find_unit. If unit is not connected, connect it and create 
460         the file with default settings.
461         * io/transfer.c (data_transfer_init):  Add check for attempted READ or
462         WRITE when file is already positioned after the EOF marker.
463
464 2010-06-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
465
466         * intrinsics/selected_char_kind.c (selected_char_kind): Fix
467         return value for ISO_10646.
468
469 2010-06-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
470
471         * mk-kinds-h.sh: Define GFC_REAL_*_LITERAL_SUFFIX and
472         GFC_REAL_*_LITERAL macros for each kind.
473         * intrinsics/cpu_time.c (cpu_time_4, cpu_time_8, cpu_time_10,
474         cpu_time_16): Use them.
475         * intrinsics/random.c (rnumber_4, rnumber_8, rnumber_10,
476         rnumber_16): Likewise.
477
478 2010-06-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
479
480         * intrinsics/system_clock.c (system_clock_4, system_clock_8):
481         Undefine TCK.
482
483 2010-06-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
484
485         PR libfortran/34670
486         * intrinsics/date_and_time.c:  Replace assert with runtime_error
487         when VALUE is too small.
488
489 2010-05-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
490
491         PR fortran/43851
492         * runtime/stop.c (stop_string): Make sure nothing is emitted for
493         blank stop.
494
495 2010-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
496
497         PR fortran/43851
498         * runtime/stop.c (error_stop_numeric): New function and updated comment.
499         Add declaration for stop_numeric and remove declaration for stop_string.
500         (stop_string): Use for blank STOP.
501         (stop_numeric): Remove use of special -1 stop code.
502         * runtime/pause.c (do_pause): Use stop_string for blank stop.
503         (pause_numeric): Remove use of special -1 pause code.
504         * gfortran.map: Add new symbol to run-time library.
505         * libgfortran.h: Move declaration for stop_string to here to make
506         function visible for do_pause. Remove declaration for stop_numeric.
507
508 2010-05-08  Janne Blomqvist  <jb@gcc.gnu.org>
509
510         * io/unix.h (mem_alloc_r): Fix typo to reduce visibility.
511
512 2010-05-07  Janne Blomqvist  <jb@gcc.gnu.org>
513
514         * libgfortran.h (free_mem): Remove prototype.
515         * runtime/memory.c (free_mem): Remove function.
516         * intrinsics/date_and_time.c (secnds): Replace free_mem() with
517         free().
518         * io/fbuf.c (fbuf_destroy): Likewise.
519         * io/format.c (free_format_hash_table): Likewise.
520         (save_parsed_format): Likewise.
521         (free_format_data): Likewise.
522         * io/list_read.c (free_saved): Likewise.
523         (free_line): Likewise.
524         (nml_touch_nodes): Likewise.
525         (nml_read_obj): Likewise
526         * io/lock.c (free_ionml): Likewise.
527         * io/open.c (new_unit): Likewise.
528         (already_open): Likewise.
529         * io/unit.c (destroy_unit_mutex): Likewise.
530         (free_internal_unit): Likewise.
531         (close_unit_1): Likewise.
532         * io/unix.c (raw_close): Likewise.
533         (buf_close): Likewise.
534         (mem_close): Likewise.
535         (tempfile): Likewise.
536         * io/write.c (nml_write_obj): Likewise.
537         * io/write_float.def (output_float_FMT_G_##): Likewise.
538         * runtime/error.c (show_locus): Likewise.
539
540 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
541
542         PR other/43620
543         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
544         * configure: Regenerate.
545         * Makefile.in: Regenerate.
546
547 2010-04-30  Kai Tietz  <kai.tietz@onevision.com>
548
549         PR/43844
550         * io/unix.c (raw_truncate): Explicit cast from integer-scalar
551         to pointer.
552         (tempfile): Use for mingw GetTempPath and avoid double slash
553         for path.
554
555 2010-04-24  Kai Tietz  <kai.tietz@onevision.com>
556
557         PR/43844
558         * io/unix.c (tempfile): Correct logic for mktemp case.
559
560 2010-04-06  Tobias Burnus  <burnus@net-b.de>
561
562         PR fortran/39997
563         * runtime/stop.c (error_stop_string): New function.
564         * gfortran.map (_gfortran_error_stop_string): Add.
565
566 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
567
568         * Makefile.in: Regenerate.
569         * aclocal.m4: Regenerate.
570
571 2010-04-01  Janne Blomqvist  <jb@gcc.gnu.org>
572
573         PR libfortran/43605
574         * io/intrinsics.c (gf_ftell): New function, seek to correct offset.
575         (ftell): Call gf_ftell.
576         (FTELL_SUB): Likewise.
577
578 2010-04-01  Paul Thomas  <pault@gcc.gnu.org>
579
580         * io/transfer.c : Update copyright.
581         * io/unix.c : ditto
582         * io/read.c : ditto
583         * io/io.h : ditto
584         * io/unix.h : ditto
585         * io/inquire.c : ditto
586         * io/format.c : ditto
587         * io/list_read.c : ditto
588         * runtime/error.c : ditto
589         * libgfortran.h : ditto
590         * intrinsics/date_and_time.c: ditto
591         * intrinsics/args.c : ditto
592
593 2010-04-01  Janne Blomqvist  <jb@gcc.gnu.org>
594
595         PR libfortran/43605
596         * io/intrinsics.c (ftell): Reset fbuf, correct offset.
597         (FTELL_SUB): Likewise.
598
599 2010-03-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
600
601         PR libfortran/43265
602         * io/transfer.c (next_record_r): Only call hit_eof for specific
603         conditions when an EOF is encountered.
604
605 2010-03-29  Tobias Burnus  <burnus@net-b.de>
606
607         PR fortran/43551
608         * io/unix.c (buf_write): Set physical_offset after lseek.
609
610 2010-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
611
612         PR libfortran/43517
613         * io/read.c (read_x): Return if seen EOR condition.
614
615 2010-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
616
617         PR fortran/43409
618         * io/io.h: Fix type of size in st_parameter_inquire structure.
619
620 2010-03-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
621
622         PR fortran/43409
623         * io/unix.h: Add prototype for new function to return file size.
624         * io/unix.c (file_size): New function.
625         * io/inquire.c (inquire_via_unit): Use new function.
626         (inquire_via_filename): Use new function.
627
628 2010-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
629
630         * io/transfer.c (read_sf_internal): Remove stray function declaration
631         used during debugging.
632
633 2010-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
634
635         PR libfortran/43265
636         * io/io.h: Delete prototype for read_sf, making it static.
637         * io/read.c (read_x): Modify to call hit_eof if PAD="no".
638         * io/transfer.c (read_sf_internal): New static function extracted from
639         read_sf for use on internal units only. Handle empty string case.
640         (read_sf): New factoring of this function, make it static.  Add special
641         conditions for EOF based on ADVANCE="no", PAD="no", and whether any
642         bytes have been previously read from the record.
643         (read_block_form): Modify to call read_sf or read_sf_internal.
644         (next_record_r): Add a done flag similar to next_record_w. Call hit_eof
645         if internal array unit next record returns finished, meaning an EOF was
646         found and not done, ie not the last record expected.  For external
647         units call hit_eof if item_count is 1 or there are no pending spaces.
648         (next_record): Update call to next_record_r.
649
650 2010-03-12  Kai Tietz  <kai.tietz@onevision.com>
651
652         PR/42950
653         * io/format.c (parse_format_list): Add to ERROR, WARNING,
654         SILENT enumerators NOTIFICATION_ prefix.
655         * runtime/error.c (notification_std): Likewise.
656         * libgfortran.h (notification): Likewise.
657         (GFC_LARGEST_BUF): Check for HAVE_GFC_INTEGER_16.
658
659 2010-03-11  Tobias Burnus  <burnus@net-b.de>
660
661         PR fortran/43228
662         * io/list_read.c (nml_parse_qualifier): Disable expanded_read
663         for array sections.
664
665 2010-03-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
666
667         PR libfortran/43320
668         * io/transfer.c (next_record_r): Add hit_eof based on item_count
669         condition.
670
671 2010-03-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
672
673         PR libfortran/43265
674         * io/read.c: Include fbuf.h and unix.h to enable lower level I/O for
675         read_x. (read_x): Replace the use of read_sf with equivalent lower level
676         I/O, eliminating unneeded code and handling EOF and EOR conditions.
677         * io/io.h: Revise prototype for read_sf.
678         * io/transfer.c (read_sf): Delete no_error parameter and all uses of it.
679         (read_block_form): Likewise.
680         (next_record_r): Delete wrong code call to hit_eof.
681
682 2010-03-08  Kai TIetz  <kai.tietz@onevision.com>
683
684         PR/42950
685         * libgfortran.h (_POSIX): Define if __MINGW32__ is defined.
686         (gfc_printf): Define to gnu_printf for __MINGW32__ case,
687         otherwise to __printf__.
688         (gfc_strtof,gfc_strtod,gfc_strtold): Define for mingw case
689         to POSIX compatible converter functions.
690         (runtime_error): Use instead gfc_printf as formatter
691         attribute name.
692         (runtime_error_at): Likewise.
693         (runtime_warning_at): Likewise.
694         (st_printf): Likewise.
695         * intrinsics/date_and_time.c (localtime_r): Undefine
696         possible defined macro.
697         (gmtime_r): Likewise.
698         * io/read.c (convert_real): Use gfc_strtof, gfc_strtod,
699         and gfc_strtold.
700
701 2010-02-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
702
703         PR libfortran/43155
704         * io/transfer.c (require_type): Subtract one from item_count for output
705         of error message.  Add comment before formatted_transfer function
706         explaining why the item_count is off by one.
707
708 2010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
709
710         * io/write_float.def (WRITE_FLOAT): Use __builtin_signbit.
711
712 2010-02-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
713
714         * io/list_read.c (list_formatted_read_scalar): Remove duplicate code.
715
716 2010-02-09  Tobias Burnus  <burnus@net-b.de>
717
718         PR fortran/42996
719         * intrinsics/args.c (get_command_argument_i4): Always return
720         commandline-argument length for length parameter.
721
722 2010-02-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
723
724         PR libfortran/42742
725         * io/format.c (reset_fnode_counters): Use the correct pointer to the
726         head of the fnode list. (parse_format): Remove previous hack that set
727         limit on size of format string for caching.
728
729 2010-02-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
730
731         PR libfortran
732         * io/transfer.c (read_sf): Handle EOR and EOF conditions for
733         ADVANCE="no" with PAD="yes" or PAD="no".
734
735 2010-02-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
736
737         PR libfortran/42901
738         * io/list_read.c (nml_get_obj_data): Add new qualifier flag, clean up
739         code, and adjust logic to set namelist info pointer correctly for array
740         qualifiers of derived type components.
741
742 2010-01-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
743
744         PR libfortran/42742
745         * io/format.c (parse_format): Set limit on size of format strings that
746         will be cached.
747
748 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
749
750         * configure: Regenerate.
751
752 2010-01-03  Janne Blomqvist  <jb@gcc.gnu.org>
753
754         PR libfortran/42420
755         * io/unix.c: Defines for MINGW stat and fstat.
756         (gfstat_t): New typedef.
757         (id_from_fd): Use gfstat_t instead of struct stat.
758         (fd_to_stream): Likewise.
759         (compare_file_filename): Likewise.
760         (find_file): Likewise.
761         (file_exists): Likewise.
762         (inquire_sequential): Likewise.
763         (inquire_direct): Likewise.
764         (inquire_formatted): Likewise.
765
766 \f
767 Copyright (C) 2010 Free Software Foundation, Inc.
768
769 Copying and distribution of this file, with or without modification,
770 are permitted in any medium without royalty provided the copyright
771 notice and this notice are preserved.