PR middle-end/82123
[official-gcc.git] / libgfortran / ChangeLog-2003
blob98b3508f7190e1f0ec98f45d61b4f4fec71be45a
1 2003-12-12  Huang Chun <chunhuang73@hotmal.com>
3         * intrinsics/string_intrinsics.c (string_index): Fix logics thinko.
5 2003-12-05  Melvin Hadasht  <melvin.hadasht@free.fr>
7         * io/transfer.c (data_transfer_init): Give a runtime error for list
8         formatted reads and writes from/to files opened for unformatted IO.
10 2003-11-30  Paul Brook  <paul@nowt.org>
12         * runtime/memory.c (push_context): Remove.
13         (pop_context): Remove.
14         * libgfortran.h: Remove prototypes.
16 2003-11-27  Paul Brook  <paul@nowt.org>
18         * runtime/memory.c (deallocate): Nullify pointer after freeing.
20 2003-11-27  Paul Brook  <paul@nowt.org>
22         * intrinsics/string_intrinsics.c: Use new memory allocation interface.
23         * libgfortran.h: Ditto.
24         * m4/in_pack.m4: Ditto.
25         * runtime/in_pack_generic.c: Ditto.
26         * runtime/memory.c: Ditto.
28 2003-11-26  Richard Henderson  <rth@redhat.com>
30         * m4/exponent.m4, m4/fraction.m4: New.
31         * m4/nearest.m4, m4/set_exponent.m4: New.
32         * generated/*: Update.
33         * Makefile.am: Add them.
34         (AM_CFLAGS): New.  Use -std=gnu99.
35         * Makefile.in: Regenerate.
37 2003-11-08  Paul Brook  <paul@nowt.org>
39         PR fortran/12704
40         * m4/maxloc0.m4: Use default value of 1. Handle zero sized arrays.
41         * m4/maxloc1.m4: Ditto.
42         * m4/minloc0.m4: Ditto.
43         * m4/minloc1.m4: Ditto.
44         * m4/ifunction.m4: Set return value for zero sized arrays.
45         * m4/iforeach.m4: Ditto.
46         * m4/all.m4, m4/any.m4, m4/count.m4, m4/maxloc1.m4, m4/minloc1.m4,
47         m4/mxaval.m4, m4/minval.m4, m4/product.m4, m4/sum.m4: Ditto.
48         * generated/*: Update.
50 2003-10-30  Toon Moene  <toon@moene.indiv.nluug.nl>
52         PR fortran/12702
53         * io/list_read.c (eat_spaces): Treat tab as space.
55 2003-10-30  Lars Segerlund  <Lars.Segerlund@comsys.se>
57         * intrinsics/random.c: Add reference to paper containing algorithm.
58         (random_seed): Extra error checking and proper handling of arrays.
59         (arandom_r4, arandom_r8): Implement.
61 2003-10-29  Toon Moene  <toon@moene.indiv.nluug.nl>
63         PR fortran/12703
64         * runtime/memory.c (allocate_size): Allow allocation
65         of zero-sized objects.
67 2003-10-29  Toon Moene  <toon@moene.indiv.nluug.nl>
69         PR fortran/12701
70         * open.c (new_unit): Open without a file name opens
71         a file with name fort.<unit>.
73 2003-10-12  Feng Wang  <wf_cs@yahoo.com>
75         * intrinsics/cshift0.c: New file.
76         * m4/cshift1.m4: New file
77         * generated/cshift*.c: New files.
78         * Makefile.am: Add them.
79         * Makefile.in: Regenerate.
81 2003-10-12  XiaoQiang Zhang  <zhangapache@yahoo.com>
83         * io/list_read.c (read_character): Remove unwanted call to free_saved.
85 2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
87         * intrinsics/string_intrinsics.c (string_trim): New function.
88         (string_repeat): New function.
90 2003-10-11  Paul Brook  <paul@nowt.org>
92         * intrinsics/dprod_r8.f90: New file.
93         * Makefile.am (gfor_specific_src): Add it.
94         (gfor_built_specific_src): Rename from gfor_build_specific_c.
95         Add new intrinsics.
96         (gfor_specific2_src): Rename from gfor_built_specific2_c.
97         Add new intrinsics.
98         * Makefile.in: Regenerate.
99         * generated/_aint_*.f90: New files.
100         * generated/_anint*.f90: New files.
101         * generated/_atan2*.f90: New files.
102         * generated/_mod*.f90: New files.
104 2003-09-20  Kejia Zhao  <kejia_zh@yahoo.com.cn>
106         * intrinsics/selected_kind.f90: New file.
107         * Makefile.am: Add it.
108         * Makefile.in: regenerate.
110 2003-09-19  Lars Segerlund  <Lars.Segerlund@comsys.se>
111         Paul Brook  <paul@nowt.org>
113         * intrinsics/random.c: New file.
114         * Makefile.am (gfor_hemper_src): Add it.
115         (gfor_specific_c): Fix typo.
117 2003-09-19  Paul Brook  <paul@nowt.org>
119         * All: rename g95->gfc.
121 2003-09-18  XiaoQiang Zhang  <zhangapache@yahoo.com>
123         * io/write.c (output_float): Fix bug of FMT_E, Add comments.
125 2003-09-09  XiaoQiang Zhang  <zhangapache@yahoo.com>
127         * io/write.c (write_float): Dectection of positive infinite number,
128         Not a Number(NaN) and negative infinite number.
129         (ioutput_float): Bug fix for FMT_E and FMT_D processing to
130         output a very_very small number ( < 0.1e-100 ).
132 2003-09-07  XiaoQiang Zhang  <zhangapache@yahoo.com>
134         * libgfortran.h (xtoa, itoa): Parameter modified.
135         * io/io.h (namelist_info): Declaration to support namelist I/O
136         (st_parameter): Add namelist related component
137         (ionml, empty_internal_buffer, st_set_nml_var_int,
138         st_set_nml_var_float, st_set_nml_var_char, st_set_nml_var_complex,
139         st_set_nml_var_log): Declaration
140         (set_integer, set_integer): Parameter changed
141         * io/format.c (free_nodes): Fix annoying bug of lefting "deallocated"
142          fnodes
143         (parse_format_list): Fix bug about FMT_SLASH
144         * io/list_read.c (push_char): Totally clear old saved_string, zeroize
145         newly allocated saved_string
146         (next_char): Add detection of End_Of_Line support
147         (convert_integer): Now can process 64 bits interger
148         (read_real): Bug fixed
149         (init_at_eol, find_nml_node, match_namelist_name): Add new functions
150         (match_namelist_name): New implemention
151         * io/lock.c (ionml): New global variable
152         (library_end): Free memory in ionml
153         * io/open.c (st_open): Variable initializtion
154         * io/read.c (max_value): 64 bits interger support
155         (convert_precsion_real): New procedure to replace "strtod" with more
156          features
157         (read_f, read_radix): Input bug fix
158         * io/transfer.c: (sf_seen_eor): New static variable
159         (read_sf): Zeroize base buffer; fix bugs: single read statement can
160         not get input in mutli line when read from stdin
161         (formatted_transfer): Fix bug of FMT_O, FMT_B, FMT_Z for INTEGER type
162          request
163         (data_transfer_init): Clear internal buffer for Internel File I/O.
164         Internal File now worked. Detect some error condition for namelist.
165         Some minor bug fix
166         (next_record_w): Internal file and Namelist I/O support.
167         (st_set_nml_var, st_set_nml_var_float, st_set_nml_var_char,
168         st_set_nml_var_complex, st_set_nml_var_log): Implemention.
169         * io/unit.c (implicit_unit): Deletion
170         (get_unit): Now cannot open a unit implicitly.
171         * io/unix.c (mmap_alloc): Fix fatal error in calculating the length of
172         mapped buffer.
173         (mem_alloc_r_at): Internal file I/O support added
174         (empty_internal_buffer): New function
175         * io/write.c (extract_int): Support 64 bits interger processing
176         (output_float): Varibale initialization
177         (write_float): Infinite real number detection.
178         (write_int): 64 bits integer I/O support
179         (write_decimal): New function to output decimal number
180         (otoa, btoa): Better implemention and 64 bits interger support
181         (namelist_write): New function
182         * runtime/error.c (itoa, xtoa): Better implemention and 64 bits
183         interger support
185 2003-08-15  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
187         * libgfortran.h (os_error, runtime_error,internal_error, sys_exit,
188         get_mem ): Add attribute.
189         * intrinsics/spread_generic.c (__spread): Fix spelling.
190         * io/inquire.c (inquire_via_filename): Add const.
191         * io/io.h (sys_exit): Add attribute.
192         * io/io.h (move_pos_offset): Add move_pos_offset.
193         * io/io.h (compare_file_filename, inquire_sequential, inquire_direct,
194         inquire_formatted, inquire_unformatted, inquire_read, inquire_write,
195         inquire_readwrite, convert_real, write_a, write_b, write_d, write_e,
196         write_en, write_es, write_f, write_i, write_l, write_o, write_x,
197         write_z): Add const.
198         * io/read.c (convert_real): Add const.
199         * io/transfer.c (type_name): Add const.
200         * io/unix.c (unpack_filename, compare_file_filename,inquire_sequential,
201         inquire_direct, inquire_formatted, inquire_unformatted, inquire_access,
202         inquire_read, inquire_write, inquire_readwrite): Add const.
203         * io/write.c (output_float): Remove unused variable.
204         * io/write.c (write_a, extract_int, extract_real, output_float,
205         write_float, write_int, write_i, write_b, write_o, write_z, write_d,
206         write_e, write_f, write_en, write_es, write_logical, write_integer,
207         write_character, write_real, write_complex): Add const.
208         * runtime/error.c (rtoa): Remove unused variable.
209         * runtime/select.c (select_string): Add const.
210         * runtime/stop.c (stop_string): Add const.
212 2003-08-10  Paul Brook  <paul@nowt.org>
214         * Makefile.am (gfor_helper_src): Add intrinsics/abort.c.
215         (FFLAGS): Add -fno-underscoring.
216         * Makefile.in: Regenerate.
217         * intrinsics/abort.c: New file.
219 2003-08-10  Erik Schnetter  <schnetter@uni-tuebingen.de>
221         * fmain.c (main): Do not call init and cleanup; call set_args instead.
222         * libgfortran.h (init, cleanup): Remove declarations.
223         (set_args): Add declaration.
224         * runtime/main.c (init, cleanup): Make them static, and give them
225         the constructor and destructor attributes.
226         (set_args): New function.
228 2003-08-10  Paul Brook  <paul@nowt.org>
230         * intrinsics/strinf_intrinsics.c (compare_string): Return value based
231         on which string is longest.
233 2003-08-10  Paul Brook  <paul@nowt.org>
235         * Makefile.am (EXTRA_DIST): Remove old files.
236         * Makefile.in: Regenerate.
238 2003-07-26  Paul Brook  <paul@nowt.org>
240         Rename library to libgfortran.
241         * libgfortran.h: Change prefix to _libgfortran_.
243 2003-07-24  Paul Brook  <paul@nowt.org>
245         * configure.in: Don't pull in system libtool.  Use toplevel
246         auxiliary files.
248 2003-07-22  Paul Brook  <paul@nowt.org>
250         Regenerate all configury files.
252 2003-07-09  Chun Huang  <compiler@sohu.com>
254         * intrinsics/string_intrinsic.c (string_scan): New function.
255         (string_verify): New function.
257 2003-06-25  Paul Brook  <paul@nowt.org>
259         * io/unix.c (mem_alloc_r_at, mem_alloc_w_at): Advance logical_offset.
260         (mem_seek): Don't bother setting physical_offset.
262 2003-06-20  Paul Brook  <paul@nowt.org>
264         * libgfor.h (stop_numeric): Declare.
265         * runtime/pause.c: New file.
266         * Makefile.am: Add it.
268 2003-06-08  Paul Brook  <paul@nowt.org>
270         * m4/cexp.m4 (cabs): Use correct typed version.
271         (csqrt): New function.
273 2003-06-07  Canqun Yang  <canqun@yahoo.com.cn>
275         Spotted by Benjamin and Tobias:
276         * io/list_read.c: Add Separator '\t'.
277         (parse_real, read_real): Accept real values starting with an optional
278         sign follows a decimal point.
280 2003-06-06  Steven Bosscher  <steven@gcc.gnu.org>
282         * Makefile.am: Don't put cmath objects in subdir.
283         * configure.in: Rename MATHOBJ to MATH_OBJ.
285 2003-06-02  Kejia Zhao  <Kejia_zh@yahoo.com.cn>
287         * intrinsics/associated.c: New file.
288         * Makefile.am: Add it. Regenerate Makefile.in.
289         * libgfor.h: Define g95_array_void, G95_DESCRIPTOR_DATA, and
290         G95_DESCRIPTOR_DTYPE.
292 2003-06-01  Canqun Yang  <canqun@yahoo.com.cn>
294         * io/write.c (calcuate_exp): Rewrite it to avoid overflow.
295         (calculate_G_format): Rewrite it to eliminate an infinte loop and set
296         the scale_factor to 0 for F editing.
298 2003-05-11  Tobias Schlter  <innenminister@gmx.de>
300         * libgfor.h: Only include stdint.h if it exists.
302 2003-05-07  Paul Brook  <paul@nowt.org>
304         * libgfor.h: Use stdint.h types.
305         * intrinsics/ishift.c: Ditto.
306         * runtime/memory.c (malloc_t): Reorder fields for better alignment.
308 2003-05-05  Steven Bosscher  <steven@gcc.gnu.org>
310         * libgfor.h (offsetof): Define if nobody else does.
311         * runtime/memory.c (HEADER_SIZE): Use it.
313 2003-05-01  Tobias Schlter  <innenminister@gmx.de>
315         * configure.in: Require autoconf 2.54.
317 2003-04-28  Tobias Schlter  <innenminister@gmx.de>
318         Paul Brook  <paul@nowt.org>
320         * intrinsics/reshape_generic.c: Copy the whole element, not just the
321         first byte.
322         * m4/transpose.m4: New file.
323         * Makefile.am: Add them.
324         Regenerate generated files.
326 2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
328         * io/format.c (parse_format_list): Allow 'X' without integer
329         prefix.  This is an extension.  Interpretation is '1X'.
331 2003-04-18  Tobias Schlter  <Tobias.Schlueter@physik.uni-muenchen.de>
333         * io/format.c (parse_format_list): Allow '0P'.
335 2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
337         * Makefile.in: Re-regenerate for automake 1.7.3.
339 2003-04-18  Canqun Yang  <canqun@yahoo.com.cn>
341         Port implementation for CHARACTER SELECT from Andy's tree.
342         * runtime/select.c: New file
343         * Makefile.am: Add it.
344         * Makefile.in: Regenerate.
346 2003-04-17  Xiaoqiang Zhang <zhangapache@yahoo.com>
348         * io/transfer.c (formatted_transfer): Modified
349         * io/unix.c (move_pos_offset): New Function.
350         * io/format.c (parse_format_list): Modified.
352 2003-04-15  Xiaoqiang Zhang <zhangapache@yahoo.com>
354         * io/write.c (write_float,write_real): New implemention of
355         FMT_G and default float editing.
356         (calculate_exp,calculate_G_format,output_float): New Function.
357         (write_float,write_real,write_logical): Modified
358         * libgfor.h (default_rtoa): Remove Declaration.
359         * runtime/error.c (default_rtoa): Remove Function.
361 2003-04-15  Steven Bosscher  <steven@gcc.gnu.org>
363         Spotted by Yang:
364         * io/write.c (extract_real): Add missing break statement.
366 2003-04-13  Steven Bosscher  <steven@gcc.gnu.org>
368         * cpu_time.c: Make sure we have a definition of HZ.  Don't
369         rely on CLOCKS_PER_SEC, it is always 1000000, on any system.
371 2003-04-13  Steven Bosscher  <steven@gcc.gnu.org>
372             Paul Brook  <paul@nowt.org>
374         * configure.in: Check for process time headers and GETTIMEOFDAY.
375         * makefile.am: Add intrinsics/cpu_time.c.
376         * acinclude.m4: New file.
377         * intrinsics/cpu_time.c: New file.
378         * m4/dotprodl.m4: Fix typo.
379         Regenerate generated files.
381 2003-04-11  Xiaoqiang Zhang <zhangapache@yahoo.com>
383         * io/write.c (extract_real): Ouput floating point value.
384         (write_float): New Function.
385         (write_e, write_f, write_en, write_es): Modified
386         * io/transfer.c (formatted_transfer): Modified.
387         * libgfor.h (default_rtoa): Declaration.
388         (rtoa): Declaration.
389         * runtime/error.c (default_rtoa): New Function.
390         (rtoa): New Function.
392 2003-04-05  Paul Brook  <paul@nowt.org>
394         * intrinsics/spread_generic.c: New file.
395         * Makefile.am: Add it. Regenerate Makefile.in.
397 2003-03-29  Paul Brook  <paul@nowt.org>
399         * intrinsics/pack_generic.c: New file.
400         * intrinsics/unpack_generic.c: New file.
401         * Makefile.am: Add them. Regenerate Makefile.in.
403 2003-03-25  Paul Brook  <paul@nowt.org>
405         * intrinsics/eoshift0.c: New file.
406         * intrinsics/eoshift2.c: New file.
407         * m4/eoshift1.m4: New file.
408         * m4/eoshift3.m4: New file.
409         * Makefile.am: Add them.
410         * in_unpack_generic.c: Initialize src.
411         Regenerate generated files.
413 2003-03-14  Paul Brook  <paul@nowt.org>
415         * m4/shape.m4: Work properly with array temporaries.
416         * m4/in_pack.m4: Skip redundant checks for array temporaries.
417         * runtime/in_pack_generic.c: Ditto.
419 2003-03-12  Paul Brook  <paul@nowt.org>
421         * m4/shape.m4: Work properly with noncontiguous arrays.
423 2003-03-08  Paul Brook  <paul@nowt.org>
425         * m4/in_pack.m4: Correctly handle zero sized and assumed size arrays.
426         * runtime/in_pack_generic.c: Ditto.
428 2003-02-08  Paul Brook  <paul@nowt.org>
430         * intrinsics/reshape_generic.c: Use runtime_error to report errors.
431         * io/close.c (st_close): Return void.
432         * io/open.c (st_open): Return void.
433         * libgfor.h (g95_array_char): Declare.
434         (internal_malloc_size): Ditto.
435         (internal_pack*, internal_unpack*): Ditto.
436         * m4/in_pack.m4: Allocate storage if neccessary.  Fix logic for packed
437         arrays.
438         * m4/in_unpack.m4: Include file fixes.
439         * m4/reshape.m4: Increment the correct source pointer.
440         * Makefile.am (maxloc): Fix typo.
441         * runtime/in_pack_generic.c: Call optimized functions. Allocate
442         storage if neccessary. Fix logic for packed arrays.
443         * runtime/in_unpack_generic.c: Call optimized functions.
444         * runtime/main.c: Use runtime_error to report errors.
445         * memory.c (internal_malloc_size): Make non-static.
447 2003-02-02  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
449         * reshape_packed.c, lock.c: Add #include <string.h>.
450         * libgfor.h, format.c, inquire.c, io.h, transfer.c, unix.c,
451         environ.c, error.c, memory.c, string.c: Add const.
452         * error.c (show_locus): Add void.
454 2003-02-21  Paul Brook  <paul@nowt.org>
456         * m4/in_pack.m4: Avoid returning const * parameter.
457         * Makefile.am: Only regenerate files in maintainer mode.
459 2003-02-20  Paul Brook  <paul@nowt.org>
461         Add array repacking support functions.
462         * m4/in_pack.m4, m4/in_unpack.m4: New files.
463         * runtime/in_pack_generic.c, runtime/in_unpack_generic.c: New files.
464         * Makefile.am: Build them.  Regenerate configury files.
465         * generated/: New directory for generated files (need to move
466         everything else there).
468 2003-02-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
470         * m4/cexp.m4: Fix typo.
472 2003-01-26  Paul Brook  <paul@nowt.org>
474         * intrinsics/: Add missing generated files.
476 2003-01-26  Paul Brook  <paul@nowt.org>
478         * Makefile.am: Put -I before the filename.
480 2003-01-24  Paul Brook  <paul@nowt.org>
482         * configure.in: Add AM_MAINTAINER_MODE.
484 2003-01-23  Paul Brook  <paul@nowt.org>
486         * configure.in, Makefile.am: Modify to work with unmodified autoconf
487         and auotmake.
488         Also regenerate other configury files.
490 2003-01-21  Paul Brook  <paul@nowt.org>
492         * io/read.c: Don't use stdint.h, it doesn't exist on cygwin.
494 2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
496         * io/read.c (read_f): Don't use alloca, but safe get_mem instead.
497         Don't include "alloca.h".
499 2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
501         * intrinsics/string.c: Rename to intrinsics/string_intrinsics.c.
502         * Makefile.am: Adjust file name.
503         * Makefile.in: Regenerate.
504         * gfortypes.h: Kill, include everything in...
505         * libgfor.h: ...here.  Include config.h
506         * fmain.c, intrinsics/ishftc.c, intrinsic/reshape_generic.c,
507         intrinsics/reshape_i4.c, intrinsics/reshape_i8.c,
508         intrinsics/reshape_packed.c, intrinsics/size.c,
509         m4/reshape.m4, runtime/main.c, runtime/memory.c: Use macro
510         for prefix for all functions instead of hardcoded.
512 2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
514         * io/lock.c (library_end): Propagate library return
515         code.
517 2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
519         Port fixes from Andy's tree:
520         * io/read.c (read_decimal): Reverse sense of overflow
521         comparison during integer reads.
522         * io/format.c (revert): Fix comment.
523         (next_format): Fix format revision.
524         * io/unix.c: Fix and simplify mmap version of stream
525         functions.
527 2003-01-11  Paul Brook  <paul@nowt.org>
529         * configure, Makefile.in: Regenerate.
531 2003-01-11  Paul Brook  <paul@nowt.org>
533         * runtime/stop.c: Rewrite.
535 2003-01-08  Paul Brook  <paul@nowt.org>
537         * configure, Makefile.in: Regenerate.
539 2003-01-05  Paul Brook  <paul@nowt.org>
541         * (*.m4) Move to m4/.
542         * intrinsics/string.c (_gfor_string_index): New Function.
545 Copyright (C) 2003 Free Software Foundation, Inc.
547 Copying and distribution of this file, with or without modification,
548 are permitted in any medium without royalty provided the copyright
549 notice and this notice are preserved.