re PR c++/41275 (ICE: expand_expr_real_1, at expr.c:8416)
[gcc.git] / libgfortran / ChangeLog-2003
1 2003-12-12 Huang Chun <chunhuang73@hotmal.com>
2
3 * intrinsics/string_intrinsics.c (string_index): Fix logics thinko.
4
5 2003-12-05 Melvin Hadasht <melvin.hadasht@free.fr>
6
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.
9
10 2003-11-30 Paul Brook <paul@nowt.org>
11
12 * runtime/memory.c (push_context): Remove.
13 (pop_context): Remove.
14 * libgfortran.h: Remove prototypes.
15
16 2003-11-27 Paul Brook <paul@nowt.org>
17
18 * runtime/memory.c (deallocate): Nullify pointer after freeing.
19
20 2003-11-27 Paul Brook <paul@nowt.org>
21
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.
27
28 2003-11-26 Richard Henderson <rth@redhat.com>
29
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.
36
37 2003-11-08 Paul Brook <paul@nowt.org>
38
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.
49
50 2003-10-30 Toon Moene <toon@moene.indiv.nluug.nl>
51
52 PR fortran/12702
53 * io/list_read.c (eat_spaces): Treat tab as space.
54
55 2003-10-30 Lars Segerlund <Lars.Segerlund@comsys.se>
56
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.
60
61 2003-10-29 Toon Moene <toon@moene.indiv.nluug.nl>
62
63 PR fortran/12703
64 * runtime/memory.c (allocate_size): Allow allocation
65 of zero-sized objects.
66
67 2003-10-29 Toon Moene <toon@moene.indiv.nluug.nl>
68
69 PR fortran/12701
70 * open.c (new_unit): Open without a file name opens
71 a file with name fort.<unit>.
72
73 2003-10-12 Feng Wang <wf_cs@yahoo.com>
74
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.
80
81 2003-10-12 XiaoQiang Zhang <zhangapache@yahoo.com>
82
83 * io/list_read.c (read_character): Remove unwanted call to free_saved.
84
85 2003-10-11 Huang Chun <jiwang@mail.edu.cn>
86
87 * intrinsics/string_intrinsics.c (string_trim): New function.
88 (string_repeat): New function.
89
90 2003-10-11 Paul Brook <paul@nowt.org>
91
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.
103
104 2003-09-20 Kejia Zhao <kejia_zh@yahoo.com.cn>
105
106 * intrinsics/selected_kind.f90: New file.
107 * Makefile.am: Add it.
108 * Makefile.in: regenerate.
109
110 2003-09-19 Lars Segerlund <Lars.Segerlund@comsys.se>
111 Paul Brook <paul@nowt.org>
112
113 * intrinsics/random.c: New file.
114 * Makefile.am (gfor_hemper_src): Add it.
115 (gfor_specific_c): Fix typo.
116
117 2003-09-19 Paul Brook <paul@nowt.org>
118
119 * All: rename g95->gfc.
120
121 2003-09-18 XiaoQiang Zhang <zhangapache@yahoo.com>
122
123 * io/write.c (output_float): Fix bug of FMT_E, Add comments.
124
125 2003-09-09 XiaoQiang Zhang <zhangapache@yahoo.com>
126
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 ).
131
132 2003-09-07 XiaoQiang Zhang <zhangapache@yahoo.com>
133
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
184
185 2003-08-15 Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>
186
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.
211
212 2003-08-10 Paul Brook <paul@nowt.org>
213
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.
218
219 2003-08-10 Erik Schnetter <schnetter@uni-tuebingen.de>
220
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.
227
228 2003-08-10 Paul Brook <paul@nowt.org>
229
230 * intrinsics/strinf_intrinsics.c (compare_string): Return value based
231 on which string is longest.
232
233 2003-08-10 Paul Brook <paul@nowt.org>
234
235 * Makefile.am (EXTRA_DIST): Remove old files.
236 * Makefile.in: Regenerate.
237
238 2003-07-26 Paul Brook <paul@nowt.org>
239
240 Rename library to libgfortran.
241 * libgfortran.h: Change prefix to _libgfortran_.
242
243 2003-07-24 Paul Brook <paul@nowt.org>
244
245 * configure.in: Don't pull in system libtool. Use toplevel
246 auxiliary files.
247
248 2003-07-22 Paul Brook <paul@nowt.org>
249
250 Regenerate all configury files.
251
252 2003-07-09 Chun Huang <compiler@sohu.com>
253
254 * intrinsics/string_intrinsic.c (string_scan): New function.
255 (string_verify): New function.
256
257 2003-06-25 Paul Brook <paul@nowt.org>
258
259 * io/unix.c (mem_alloc_r_at, mem_alloc_w_at): Advance logical_offset.
260 (mem_seek): Don't bother setting physical_offset.
261
262 2003-06-20 Paul Brook <paul@nowt.org>
263
264 * libgfor.h (stop_numeric): Declare.
265 * runtime/pause.c: New file.
266 * Makefile.am: Add it.
267
268 2003-06-08 Paul Brook <paul@nowt.org>
269
270 * m4/cexp.m4 (cabs): Use correct typed version.
271 (csqrt): New function.
272
273 2003-06-07 Canqun Yang <canqun@yahoo.com.cn>
274
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.
279
280 2003-06-06 Steven Bosscher <steven@gcc.gnu.org>
281
282 * Makefile.am: Don't put cmath objects in subdir.
283 * configure.in: Rename MATHOBJ to MATH_OBJ.
284
285 2003-06-02 Kejia Zhao <Kejia_zh@yahoo.com.cn>
286
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.
291
292 2003-06-01 Canqun Yang <canqun@yahoo.com.cn>
293
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.
297
298 2003-05-11 Tobias Schlter <innenminister@gmx.de>
299
300 * libgfor.h: Only include stdint.h if it exists.
301
302 2003-05-07 Paul Brook <paul@nowt.org>
303
304 * libgfor.h: Use stdint.h types.
305 * intrinsics/ishift.c: Ditto.
306 * runtime/memory.c (malloc_t): Reorder fields for better alignment.
307
308 2003-05-05 Steven Bosscher <steven@gcc.gnu.org>
309
310 * libgfor.h (offsetof): Define if nobody else does.
311 * runtime/memory.c (HEADER_SIZE): Use it.
312
313 2003-05-01 Tobias Schlter <innenminister@gmx.de>
314
315 * configure.in: Require autoconf 2.54.
316
317 2003-04-28 Tobias Schlter <innenminister@gmx.de>
318 Paul Brook <paul@nowt.org>
319
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.
325
326 2003-04-18 Steven Bosscher <steven@gcc.gnu.org>
327
328 * io/format.c (parse_format_list): Allow 'X' without integer
329 prefix. This is an extension. Interpretation is '1X'.
330
331 2003-04-18 Tobias Schlter <Tobias.Schlueter@physik.uni-muenchen.de>
332
333 * io/format.c (parse_format_list): Allow '0P'.
334
335 2003-04-18 Steven Bosscher <steven@gcc.gnu.org>
336
337 * Makefile.in: Re-regenerate for automake 1.7.3.
338
339 2003-04-18 Canqun Yang <canqun@yahoo.com.cn>
340
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.
345
346 2003-04-17 Xiaoqiang Zhang <zhangapache@yahoo.com>
347
348 * io/transfer.c (formatted_transfer): Modified
349 * io/unix.c (move_pos_offset): New Function.
350 * io/format.c (parse_format_list): Modified.
351
352 2003-04-15 Xiaoqiang Zhang <zhangapache@yahoo.com>
353
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.
360
361 2003-04-15 Steven Bosscher <steven@gcc.gnu.org>
362
363 Spotted by Yang:
364 * io/write.c (extract_real): Add missing break statement.
365
366 2003-04-13 Steven Bosscher <steven@gcc.gnu.org>
367
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.
370
371 2003-04-13 Steven Bosscher <steven@gcc.gnu.org>
372 Paul Brook <paul@nowt.org>
373
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.
380
381 2003-04-11 Xiaoqiang Zhang <zhangapache@yahoo.com>
382
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.
391
392 2003-04-05 Paul Brook <paul@nowt.org>
393
394 * intrinsics/spread_generic.c: New file.
395 * Makefile.am: Add it. Regenerate Makefile.in.
396
397 2003-03-29 Paul Brook <paul@nowt.org>
398
399 * intrinsics/pack_generic.c: New file.
400 * intrinsics/unpack_generic.c: New file.
401 * Makefile.am: Add them. Regenerate Makefile.in.
402
403 2003-03-25 Paul Brook <paul@nowt.org>
404
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.
412
413 2003-03-14 Paul Brook <paul@nowt.org>
414
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.
418
419 2003-03-12 Paul Brook <paul@nowt.org>
420
421 * m4/shape.m4: Work properly with noncontiguous arrays.
422
423 2003-03-08 Paul Brook <paul@nowt.org>
424
425 * m4/in_pack.m4: Correctly handle zero sized and assumed size arrays.
426 * runtime/in_pack_generic.c: Ditto.
427
428 2003-02-08 Paul Brook <paul@nowt.org>
429
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.
446
447 2003-02-02 Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>
448
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.
453
454 2003-02-21 Paul Brook <paul@nowt.org>
455
456 * m4/in_pack.m4: Avoid returning const * parameter.
457 * Makefile.am: Only regenerate files in maintainer mode.
458
459 2003-02-20 Paul Brook <paul@nowt.org>
460
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).
467
468 2003-02-07 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
469
470 * m4/cexp.m4: Fix typo.
471
472 2003-01-26 Paul Brook <paul@nowt.org>
473
474 * intrinsics/: Add missing generated files.
475
476 2003-01-26 Paul Brook <paul@nowt.org>
477
478 * Makefile.am: Put -I before the filename.
479
480 2003-01-24 Paul Brook <paul@nowt.org>
481
482 * configure.in: Add AM_MAINTAINER_MODE.
483
484 2003-01-23 Paul Brook <paul@nowt.org>
485
486 * configure.in, Makefile.am: Modify to work with unmodified autoconf
487 and auotmake.
488 Also regenerate other configury files.
489
490 2003-01-21 Paul Brook <paul@nowt.org>
491
492 * io/read.c: Don't use stdint.h, it doesn't exist on cygwin.
493
494 2003-01-20 Steven Bosscher <s.bosscher@student.tudelft.nl>
495
496 * io/read.c (read_f): Don't use alloca, but safe get_mem instead.
497 Don't include "alloca.h".
498
499 2003-01-20 Steven Bosscher <s.bosscher@student.tudelft.nl>
500
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.
511
512 2003-01-19 Steven Bosscher <s.bosscher@student.tudelft.nl>
513
514 * io/lock.c (library_end): Propagate library return
515 code.
516
517 2003-01-19 Steven Bosscher <s.bosscher@student.tudelft.nl>
518
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.
526
527 2003-01-11 Paul Brook <paul@nowt.org>
528
529 * configure, Makefile.in: Regenerate.
530
531 2003-01-11 Paul Brook <paul@nowt.org>
532
533 * runtime/stop.c: Rewrite.
534
535 2003-01-08 Paul Brook <paul@nowt.org>
536
537 * configure, Makefile.in: Regenerate.
538
539 2003-01-05 Paul Brook <paul@nowt.org>
540
541 * (*.m4) Move to m4/.
542 * intrinsics/string.c (_gfor_string_index): New Function.