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>
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>
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>
64 * runtime/memory.c (allocate_size): Allow allocation
65 of zero-sized objects.
67 2003-10-29 Toon Moene <toon@moene.indiv.nluug.nl>
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.
96 (gfor_specific2_src): Rename from gfor_built_specific2_c.
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"
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
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
163 (data_transfer_init): Clear internal buffer for Internel File I/O.
164 Internal File now worked. Detect some error condition for namelist.
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
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
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,
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
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
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>
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.
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
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
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
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
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.