PR 38240
[official-gcc.git] / libgfortran / ChangeLog-2003
blob1c8b99f45f29690193e1e4aa9854982548a89fed
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.