xref: /netbsd-src/external/gpl3/gcc/dist/libgfortran/ChangeLog-2004 (revision 181254a7b1bdde6873432bffef2d2decc4b5c22f)
1*181254a7Smrg2004-12-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
2*181254a7Smrg
3*181254a7Smrg	* libgfortran/libgfortran.h (GFC_UINTEGER_1, GFC_UINTEGER_2):
4*181254a7Smrg	Define.
5*181254a7Smrg	* intrinsics/ishftc.c: Update copyright years.
6*181254a7Smrg	(ishftc8): Change 'shift' and 'size' to GFC_INTEGER_4.
7*181254a7Smrg	* intrinsics/mvbits.c: Correct non-ASCII character in my name.
8*181254a7Smrg	Add implementations for GFC_INTEGER_1 and GFC_INTEGER_2.
9*181254a7Smrg
10*181254a7Smrg2004-12-23  Bud Davis  <bdavis9659@comcast.net>
11*181254a7Smrg
12*181254a7Smrg	PR fortran/19071
13*181254a7Smrg	* io/tranfer.c (formatted_transfer): moved check for
14*181254a7Smrg	format reversion inside the processing loop.
15*181254a7Smrg
16*181254a7Smrg2004-12-19  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
17*181254a7Smrg
18*181254a7Smrg	PR libfortran/19074
19*181254a7Smrg	* libgfortran.h (itoa): Rename to gfc_itoa.
20*181254a7Smrg	* io/write.c (itoa): Same.
21*181254a7Smrg	* runtime/environ.c (itoa): Same.
22*181254a7Smrg	* runtime/error.c (itoa): Same.
23*181254a7Smrg
24*181254a7Smrg2004-12-15  Bud Davis  <bdavis9659@comcast.net>
25*181254a7Smrg	    Steven G. Kargl  <kargls@comcast.net>
26*181254a7Smrg
27*181254a7Smrg	PR fortran/17597
28*181254a7Smrg	* io/list_read.c (read_real): do not push back a comma when
29*181254a7Smrg	it delimits a real value without a decimal point
30*181254a7Smrg
31*181254a7Smrg2004-12-14  Steve Ellcey  <sje@cup.hp.com>
32*181254a7Smrg
33*181254a7Smrg	* libgfortran/io/transfer.c (us_read): Use memcpy/memset
34*181254a7Smrg	instead of assignment to fill unaligned buffer.
35*181254a7Smrg	(us_write): Ditto.
36*181254a7Smrg	(next_record_w): Ditto.
37*181254a7Smrg
38*181254a7Smrg2004-12-14  Steven G. Kargl  <kargls@comcast.net>
39*181254a7Smrg
40*181254a7Smrg	PR libfortran/18966
41*181254a7Smrg	* gfortran.h: typedef GFC_INTEGER_1 and GFC_INTEGER_2
42*181254a7Smrg	* intrinsics/cshift0.c (cshift0_1,cshift0_2): New functions.
43*181254a7Smrg	* intrinsics/eoshift0.c (eoshift0_1,eoshift0_2): New functions.
44*181254a7Smrg	* intrinsics/eoshift2.c (eoshift2_1,eoshift2_2): New functions.
45*181254a7Smrg
46*181254a7Smrg2004-12-13  David Edelsohn  <edelsohn@gnu.org>
47*181254a7Smrg
48*181254a7Smrg	* io/transfer.c (read_sf): Change bitwise "and" to logical "and".
49*181254a7Smrg
50*181254a7Smrg2004-12-12  Richard Henderson  <rth@redhat.com>
51*181254a7Smrg
52*181254a7Smrg	* intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
53*181254a7Smrg	intrinsics/pack_generic.c, intrinsics/reshape_generic.c,
54*181254a7Smrg	intrinsics/spread_generic.c, intrinsics/transpose_generic.c,
55*181254a7Smrg	intrinsics/unpack_generic.c, m4/cshift1.m4, m4/dotprod.m4,
56*181254a7Smrg	m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4, m4/eoshift3.m4,
57*181254a7Smrg	m4/iforeach.m4, m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4,
58*181254a7Smrg	m4/reshape.m4, m4/shape.m4, m4/transpose.m4: Use standard prefix
59*181254a7Smrg	instead of "__".
60*181254a7Smrg	* generated/*: Rebuild.
61*181254a7Smrg
62*181254a7Smrg2004-12-12  Richard Henderson  <rth@redhat.com>
63*181254a7Smrg
64*181254a7Smrg	* acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY): New.
65*181254a7Smrg	(LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT): New.
66*181254a7Smrg	(LIBGFOR_CHECK_ATTRIBUTE_ALIAS): New.
67*181254a7Smrg	* configure.ac: Use them.
68*181254a7Smrg	* configure, config.h.in, aclocal.m4: Rebuild.
69*181254a7Smrg	* libgfortran.h (prefix): Remove.
70*181254a7Smrg	(PREFIX, IPREFIX): New.
71*181254a7Smrg	(sym_rename, sym_rename1, sym_rename2): New.
72*181254a7Smrg	(internal_proto, export_proto, export_proto_np): New.
73*181254a7Smrg	(iexport_proto, iexport): New.
74*181254a7Smrg	(iexport_data_proto, iexport_data): New.
75*181254a7Smrg	* intrinsics/abort.c, intrinsics/args.c, intrinsics/associated.c,
76*181254a7Smrg	intrinsics/cpu_time.c, intrinsics/cshift0.c,
77*181254a7Smrg	intrinsics/date_and_time.c, intrinsics/env.c, intrinsics/eoshift0.c,
78*181254a7Smrg	intrinsics/eoshift2.c, intrinsics/etime.c, intrinsics/exit.c,
79*181254a7Smrg	intrinsics/flush.c, intrinsics/fnum.c, intrinsics/getXid.c,
80*181254a7Smrg	intrinsics/getcwd.c, intrinsics/ishftc.c, intrinsics/mvbits.c,
81*181254a7Smrg	intrinsics/pack_generic.c, intrinsics/rand.c, intrinsics/random.c,
82*181254a7Smrg	intrinsics/reshape_generic.c, intrinsics/size.c,
83*181254a7Smrg	intrinsics/spread_generic.c, intrinsics/stat.c,
84*181254a7Smrg	intrinsics/string_intrinsics.c, intrinsics/system.c,
85*181254a7Smrg	intrinsics/system_clock.c, intrinsics/transpose_generic.c,
86*181254a7Smrg	intrinsics/umask.c, intrinsics/unlink.c, intrinsics/unpack_generic.c,
87*181254a7Smrg	io/backspace.c, io/close.c, io/endfile.c, io/inquire.c, io/io.h,
88*181254a7Smrg	io/open.c, io/rewind.c, io/transfer.c, libgfortran.h, m4/cshift1.m4,
89*181254a7Smrg	m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4,
90*181254a7Smrg	m4/eoshift3.m4, m4/exponent.m4, m4/fraction.m4, m4/iforeach.m4,
91*181254a7Smrg	m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/nearest.m4,
92*181254a7Smrg	m4/pow.m4, m4/reshape.m4, m4/set_exponent.m4, m4/shape.m4,
93*181254a7Smrg	m4/transpose.m4, runtime/environ.c, runtime/error.c,
94*181254a7Smrg	runtime/in_pack_generic.c, runtime/in_unpack_generic.c,
95*181254a7Smrg	runtime/main.c, runtime/memory.c, runtime/pause.c, runtime/select.c,
96*181254a7Smrg	runtime/stop.c: Use them to mark symbols internal or external.
97*181254a7Smrg	* generated/*: Rebuild.
98*181254a7Smrg
99*181254a7Smrg2004-12-09  David Edelsohn  <edelsohn@gnu.org>
100*181254a7Smrg
101*181254a7Smrg	PR bootstrap/18895
102*181254a7Smrg	Revert 2004-12-07 change.
103*181254a7Smrg	* Makefile.am (AM_MAKEFLAGS): Delete.
104*181254a7Smrg	* Makefile.in: Regenerate.
105*181254a7Smrg
106*181254a7Smrg2004-12-07  Steve Ellcey  <sje@cup.hp.com>
107*181254a7Smrg
108*181254a7Smrg	* libgfortran/Makefile.am (AM_MAKEFLAGS): New.
109*181254a7Smrg	* libgfortran/Makefile.in: Regenerate
110*181254a7Smrg
111*181254a7Smrg2004-12-07  Steve Ellcey  <sje@cup.hp.com>
112*181254a7Smrg
113*181254a7Smrg	* io/io.h (open_external): Change prototype.
114*181254a7Smrg	* io/unix.c (regular_file): Change prototype and set flags->action if
115*181254a7Smrg	needed.
116*181254a7Smrg	(open_external): Ditto.
117*181254a7Smrg	* io/open.c (new_unit): Let open_external set flags->action.
118*181254a7Smrg
119*181254a7Smrg2004-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
120*181254a7Smrg
121*181254a7Smrg	* configure.ac: Check for ieeefp.h.  Check for fabsf in libm.
122*181254a7Smrg	* configure: Regenerate.
123*181254a7Smrg	* config.h.in: Likewise.
124*181254a7Smrg	* c99_protos.h: New file.
125*181254a7Smrg	* libgfortran.h: Include c99_protos.h and conditionally ieeefp.h.
126*181254a7Smrg	* intrinsics/c99_functions.c (fabsf): New function.
127*181254a7Smrg
128*181254a7Smrg2004-12-06  Richard Henderson  <rth@redhat.com>
129*181254a7Smrg
130*181254a7Smrg	* intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
131*181254a7Smrg	intrinsics/pack_generic.c, intrinsics/string_intrinsics.c,
132*181254a7Smrg	intrinsics/transpose_generic.c, m4/ifunction.m4, m4/matmul.m4,
133*181254a7Smrg	m4/matmull.m4, m4/transpose.m4: Use internal_malloc_size instead
134*181254a7Smrg	of internal_malloc.
135*181254a7Smrg	* generated/*: Rebuild.
136*181254a7Smrg
137*181254a7Smrg2004-12-06  Richard Henderson  <rth@redhat.com>
138*181254a7Smrg
139*181254a7Smrg	* intrinsics/c99_functions.c, intrinsics/eoshift0.c,
140*181254a7Smrg	intrinsics/eoshift2.c, intrinsics/exit.c, intrinsics/flush.c,
141*181254a7Smrg	intrinsics/ishftc.c, intrinsics/mvbits.c, intrinsics/pack_generic.c,
142*181254a7Smrg	intrinsics/random.c, intrinsics/reshape_generic.c, intrinsics/size.c,
143*181254a7Smrg	intrinsics/spread_generic.c, intrinsics/stat.c,
144*181254a7Smrg	intrinsics/string_intrinsics.c, intrinsics/system_clock.c,
145*181254a7Smrg	intrinsics/transpose_generic.c, intrinsics/unlink.c,
146*181254a7Smrg	intrinsics/unpack_generic.c, io/backspace.c, io/format.c,
147*181254a7Smrg	io/list_read.c, io/lock.c, io/open.c, io/transfer.c, io/unix.c,
148*181254a7Smrg	io/write.c, runtime/environ.c, runtime/error.c,
149*181254a7Smrg	runtime/in_pack_generic.c, runtime/in_unpack_generic.c, runtime/main.c,
150*181254a7Smrg	runtime/memory.c, runtime/pause.c, runtime/stop.c,
151*181254a7Smrg	runtime/string.c: Whitespace fixes.
152*181254a7Smrg
153*181254a7Smrg2004-12-06  Richard Henderson  <rth@redhat.com>
154*181254a7Smrg
155*181254a7Smrg	* Makefile.am: Generate all m4 output under $(srcdir).
156*181254a7Smrg	* Makefile.in: Regenerate.
157*181254a7Smrg
158*181254a7Smrg2004-12-02  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
159*181254a7Smrg
160*181254a7Smrg	PR fortran/18710
161*181254a7Smrg	* io/transfer.c (unformatted_read, unformatted_write): width of
162*181254a7Smrg	a COMPLEX is twice its kind.
163*181254a7Smrg
164*181254a7Smrg2004-12-02  Richard Sandiford  <rsandifo@redhat.com>
165*181254a7Smrg
166*181254a7Smrg	* configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
167*181254a7Smrg	* configure, aclocal.m4, Makefile.in: Regenerate.
168*181254a7Smrg
169*181254a7Smrg2004-12-02  Bud Davis  <bdavis9659@comcast.net>
170*181254a7Smrg
171*181254a7Smrg	PR libfortran/18284
172*181254a7Smrg	* io/unix.c (fd_alloc_w_at): Update file_length when extending.
173*181254a7Smrg	* io/backspace.c (formatted_backspace): Reset endfile after backspace.
174*181254a7Smrg
175*181254a7Smrg2004-12-02  Bud Davis  <bdavis9659@comcast.net>
176*181254a7Smrg
177*181254a7Smrg	* io/inquire.c (inquire_via_unit): do not allow a direct access
178*181254a7Smrg	file to be opened for sequential I/O.
179*181254a7Smrg
180*181254a7Smrg2004-12-02  Steven G. Kargl  <kargls@comcast.net>
181*181254a7Smrg	Paul Brook  <paul@codesourcery.com>
182*181254a7Smrg
183*181254a7Smrg	* intrinsics/flush.c: New file.
184*181254a7Smrg	* intrinsics/fnum.c: ditto
185*181254a7Smrg	* intrinsics/stat.c: ditto
186*181254a7Smrg	* io/io.h (unit_to_fd): Add prototype.
187*181254a7Smrg	* io/unix.c (unit_to_fd): New function.
188*181254a7Smrg	* configure.ac: Add test for members of struct stat.  Check for
189*181254a7Smrg	sys/types.h and sys/stat.h
190*181254a7Smrg	* Makefile.am: Add intrinsics/{flush.c,fnum.c,stat.c}
191*181254a7Smrg	* configure.in: Regenerate.
192*181254a7Smrg	* config.h.in: Regenerate.
193*181254a7Smrg	* Makefile.in: Regenerate.
194*181254a7Smrg
195*181254a7Smrg2004-12-01  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
196*181254a7Smrg
197*181254a7Smrg	* Makefile.am (AM_CPPFLAGS): Use -iquote instead of -I.
198*181254a7Smrg
199*181254a7Smrg2004-11-28  Bud Davis  <bdavis9659@comcast.net>
200*181254a7Smrg
201*181254a7Smrg	* io/unix.c (mmap_alloc_w_a): check for a write to a location
202*181254a7Smrg	less than the mapped area.
203*181254a7Smrg
204*181254a7Smrg2004-11-27  Bud Davis  <bdavis9659@comcast.net>
205*181254a7Smrg
206*181254a7Smrg	PR fortran/18364
207*181254a7Smrg	*  io/endfile.c (st_endfile): flush the stream before truncating.
208*181254a7Smrg
209*181254a7Smrg2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
210*181254a7Smrg
211*181254a7Smrg	* configure: Regenerate for libtool change.
212*181254a7Smrg
213*181254a7Smrg2004-11-22  Steven Bosscher  <stevenb@suse.de>
214*181254a7Smrg
215*181254a7Smrg	PR libfortran/15960
216*181254a7Smrg	* configure.ac: Check for finite in libm.
217*181254a7Smrg	* libgfortran.h: Define isfinite macro if not defined.
218*181254a7Smrg	* intrinsics/c99_functions.c: Use defined(fpclassify) instead of
219*181254a7Smrg	HAVE_FPCLASSIFY.
220*181254a7Smrg	* io/write.c (write_float): Use isfinite instead of finite.
221*181254a7Smrg	* configure, config.h.in: Rebuilt.
222*181254a7Smrg
223*181254a7Smrg2004-11-20  Roger Sayle  <roger@eyesopen.com>
224*181254a7Smrg
225*181254a7Smrg	* io/write.c (write_float, list_formatted_write): Fix indentation.
226*181254a7Smrg
227*181254a7Smrg2004-11-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
228*181254a7Smrg
229*181254a7Smrg	PR target/16135
230*181254a7Smrg	* acinclude.m4 (LIBGFOR_TARGET_ILP32): New check.
231*181254a7Smrg	* configure.ac: Include LIBGFOR_TARGET_ILP32.
232*181254a7Smrg	* configure: Regenerate.
233*181254a7Smrg	* config.h.in: Likewise.
234*181254a7Smrg	* libgfortran.h: Provide default definitions for C99 types
235*181254a7Smrg	on ILP32 targets that don't have them.
236*181254a7Smrg
237*181254a7Smrg	PR target/17999
238*181254a7Smrg	* configure.ac: Check for snprintf.
239*181254a7Smrg	* configure: Regenerate.
240*181254a7Smrg	* config.h.in: Likewise.
241*181254a7Smrg	* intrinsics/date_and_time.c (date_and_time): Do not
242*181254a7Smrg	use snprinf if it is not available.
243*181254a7Smrg	* io/write.c (output_float): Likewise.
244*181254a7Smrg
245*181254a7Smrg2004-11-20  Steven G. Kargl  <kargls@comcast.net>
246*181254a7Smrg
247*181254a7Smrg	* Makefile.am: Add intrinsics/{umask.c,unlink.c,exit.c}
248*181254a7Smrg	* Makefile.in: Regenerated
249*181254a7Smrg	* intrinsics/umask.c: New file
250*181254a7Smrg	* intrinsics/unlink.c: ditto
251*181254a7Smrg	* intrinsics/exit.c: ditto
252*181254a7Smrg
253*181254a7Smrg2004-11-18  Victor Leikehman  <lei@il.ibm.com>
254*181254a7Smrg
255*181254a7Smrg	* m4/matmul.m4: Loops reordered to improve cache behavior.
256*181254a7Smrg	* generated/matmul_??.c: Regenerated.
257*181254a7Smrg
258*181254a7Smrg2004-11-10  Paul Brook  <paul@codesourcery.com>
259*181254a7Smrg
260*181254a7Smrg	PR fortran/18218
261*181254a7Smrg	* configure.ac: Check for strtof.
262*181254a7Smrg	* configure: Regenerate.
263*181254a7Smrg	* config.h.in: Regenerate.
264*181254a7Smrg	* io/read.c (convert_real): Use strtof if available.
265*181254a7Smrg	(convert_precision_real): Remove.
266*181254a7Smrg	(read_f): Avoid poor exponentiation algorithm.
267*181254a7Smrg
268*181254a7Smrg2004-11-05  Andreas Schwab  <schwab@suse.de>
269*181254a7Smrg
270*181254a7Smrg	* configure.ac: Use AC_PROG_FC, FC and FCFLAGS instead of
271*181254a7Smrg	AC_PROG_F77, F77 and FFLAGS.
272*181254a7Smrg	* Makefile.am (selected_int_kind.inc, selected_real_kind.inc): Use
273*181254a7Smrg	FCCOMPILE instead of F77COMPILE.
274*181254a7Smrg	* configure, Makefile.in: Regenerate.
275*181254a7Smrg
276*181254a7Smrg2004-11-05  Kelley Cook  <kcook@gcc.gnu.org>
277*181254a7Smrg
278*181254a7Smrg	* acinclude.m4: Properly quote AC_CACHE_CHECK.
279*181254a7Smrg	* Makefile.am: Add in ACLOCAL_AMFLAGS.
280*181254a7Smrg	* aclocal.m4, configure, Makefile.in: Regenerate.
281*181254a7Smrg
282*181254a7Smrg2004-10-30  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
283*181254a7Smrg
284*181254a7Smrg	* config.h.in: Regenerate.
285*181254a7Smrg	* configure: Regenerate.
286*181254a7Smrg	* configure.ac (AC_CHECK_FUNCS): Add mkstemp.
287*181254a7Smrg	* io/unix.c (S_IRGRP): Define if undefined.
288*181254a7Smrg	(S_IWGRP): Same.
289*181254a7Smrg	(S_IROTH): Same.
290*181254a7Smrg	(S_IWOTH): Same.
291*181254a7Smrg	(tempfile): Use mktemp if mkstemp missing, fix typos.
292*181254a7Smrg
293*181254a7Smrg2004-10-30  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
294*181254a7Smrg
295*181254a7Smrg	*  intrinsics/system.c ("libgfortran.h"): Move after system headers.
296*181254a7Smrg
297*181254a7Smrg2004-10-30  Canqun Yang  <canqun@nudt.edu.cn>
298*181254a7Smrg
299*181254a7Smrg	* intrinsics/rand.c (irand): Handle NULL argument.
300*181254a7Smrg
301*181254a7Smrg2004-10-07  Paul Brook  <paul@codesourcery.com>
302*181254a7Smrg
303*181254a7Smrg	* io/transfer.c (finalize_transfer): Free internal streams.
304*181254a7Smrg	* io/unix.c (mem_close): Free stream object.
305*181254a7Smrg
306*181254a7Smrg2004-10-07  Paul Brook  <paul@codesourcery.com>
307*181254a7Smrg
308*181254a7Smrg	* intrinsics/string_intrinsics.c (string_verify): Fix off by one
309*181254a7Smrg	error.
310*181254a7Smrg
311*181254a7Smrg2004-10-06  Paul Brook  <paul@codesourcery.com>
312*181254a7Smrg
313*181254a7Smrg	PR libfortran/17709
314*181254a7Smrg	* io/transfer.c (data_transfer_init): Reset sf_seen_eor.
315*181254a7Smrg
316*181254a7Smrg2004-10-04  Andrew Pinski  <pinskia@physics.uc.edu>
317*181254a7Smrg
318*181254a7Smrg	* intrinsics/mvbits.c: Commit the file.
319*181254a7Smrg
320*181254a7Smrg2004-10-04  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
321*181254a7Smrg
322*181254a7Smrg	PR fortran/17283
323*181254a7Smrg	* intrinsics/pack_generic.c (__pack): Allocate memory for return array
324*181254a7Smrg	if not done by caller.
325*181254a7Smrg	(__pack_s): New function.
326*181254a7Smrg	* runtime/memory.c (internal_malloc, internal_malloc64): Allow
327*181254a7Smrg	allocating zero memory.
328*181254a7Smrg
329*181254a7Smrg	PR fortran/17631
330*181254a7Smrg	* Makefile.am (gfor_helper_src): Add intrinsics/mvbits.h.
331*181254a7Smrg	* Makefile.in: Regenerate.
332*181254a7Smrg	* intrinsics/mvbits.h: New file.
333*181254a7Smrg
334*181254a7Smrg	PR fortran/17776
335*181254a7Smrg	* intrinsics/system.c: New file.
336*181254a7Smrg	* Makefile.am: Add dependency for the new file.
337*181254a7Smrg	* Makefile.in: Regenerate.
338*181254a7Smrg
339*181254a7Smrg2004-10-04  Paul Brook  <paul@codesourcery.com>
340*181254a7Smrg	Bud Davis  <bdavis9659@comcast.net>
341*181254a7Smrg
342*181254a7Smrg	PR fortran/17706
343*181254a7Smrg	PR fortran/16434
344*181254a7Smrg	* io/format.c (parse_format_list): Set repeat count for S, SP, SS,
345*181254a7Smrg	BN and BZ formats.
346*181254a7Smrg	* io/write.c (output_float): Don't output minus zero.
347*181254a7Smrg
348*181254a7Smrg2004-10-03  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
349*181254a7Smrg
350*181254a7Smrg	* intrinsics/abort.c ("libgfortran.h"): Move.
351*181254a7Smrg	* intrinsics/date_and_time.c ("libgfortran.h"): Same.
352*181254a7Smrg	* intrinsics/write.c ("libgfortran.h"): Same.
353*181254a7Smrg
354*181254a7Smrg2004-09-26  Tobias Schlueter  <tobis.schlueter@physik.uni-muenchen.de>
355*181254a7Smrg
356*181254a7Smrg	PR libfortran/16137
357*181254a7Smrg	* config.h.in (HAVE_POWF): Undefine.
358*181254a7Smrg	* configure.ac: Check for 'powf' in library.
359*181254a7Smrg	* configure: Regenerate.
360*181254a7Smrg	* intrinsics/c99_functions.c (powf): New function.
361*181254a7Smrg
362*181254a7Smrg2004-09-24  Tobias Schlueter  <tobis.schlueter@physik.uni-muenchen.de>
363*181254a7Smrg
364*181254a7Smrg	* intrinsics/etime.c (etime_): New function.
365*181254a7Smrg
366*181254a7Smrg2004-09-21  Steven G. Kargl  <kargls@comcast.net>
367*181254a7Smrg
368*181254a7Smrg	* libgfortran.h: define gfc_alloca()
369*181254a7Smrg	* intrinsics/env.c (getenv, get_environment_variable_i4): Use it.
370*181254a7Smrg
371*181254a7Smrg2004-09-21  Bud Davis  <bdavis9659@comcast.net>
372*181254a7Smrg
373*181254a7Smrg	PR fortran/17286
374*181254a7Smrg	* io/list_read.c (namelist_read): ignore spaces after
375*181254a7Smrg	the '=' for namelist reads.
376*181254a7Smrg
377*181254a7Smrg2004-09-15  Aaron W. LaFramboise <aaronavay62@aaronwl.com>
378*181254a7Smrg
379*181254a7Smrg	* config.h.in: Regenerate.
380*181254a7Smrg	* configure: Regenerate.
381*181254a7Smrg	* configure.ac (AC_CHECK_HEADERS): Check for sys/mman.h.
382*181254a7Smrg	* unix.c: Include stdio.h.
383*181254a7Smrg	(HAVE_SYS_MMAN_H): Check.
384*181254a7Smrg	(PROT_READ, PROT_WRITE): Provide default definitions.
385*181254a7Smrg
386*181254a7Smrg2004-09-15  Steven G. Kargl  <kargls@comcast.net>
387*181254a7Smrg
388*181254a7Smrg	* intrincics/getcwd.c: New file.
389*181254a7Smrg	* Makefile.am: Add getcwd.c.
390*181254a7Smrg	* Makefile.in: Regenerated.
391*181254a7Smrg
392*181254a7Smrg2004-09-15  Steven G. Kargl  <kargls@comcast.net>
393*181254a7Smrg	Paul Brook  <paul@codesourcery.com>
394*181254a7Smrg
395*181254a7Smrg	* intrinsics/env.c (getenv, get_environmental_variable): Remove
396*181254a7Smrg	trailing white space.  Use alloca.  Honour trim_name.
397*181254a7Smrg
398*181254a7Smrg2004-09-13  Bud Davis  <bdavis9659@comcast.net>
399*181254a7Smrg
400*181254a7Smrg	PR fortran/17090
401*181254a7Smrg
402*181254a7Smrg	* io/list_read.c (list_formatted_read): Handle trailing spaces
403*181254a7Smrg	at end of line.
404*181254a7Smrg
405*181254a7Smrg2004-09-06  Steven G. Kargl  <kargls@comcast.net>
406*181254a7Smrg
407*181254a7Smrg	* io/write.c (output_float): Typo in comment.  Remove debugging
408*181254a7Smrg	printf.  Fix format for FP of form 1e10.
409*181254a7Smrg
410*181254a7Smrg2004-09-03  Richard Henderson  <rth@redhat.com>
411*181254a7Smrg
412*181254a7Smrg	* intrinsics/cshift0.c (DEF_COPY_LOOP, copy_loop_int, copy_loop_long,
413*181254a7Smrg	copy_loop_double, copy_loop_ldouble): New.
414*181254a7Smrg	(__cshift0): Make shift type ssize_t.  Use % operator instead of
415*181254a7Smrg	div.  Use specialized versions of copy loop depending on the shape.
416*181254a7Smrg
417*181254a7Smrg2004-09-02  Paul Brook  <paul@codesourcery.com>
418*181254a7Smrg
419*181254a7Smrg	* io/format.c (parse_format_list): Set repeat count for P descriptors.
420*181254a7Smrg	* write.c (output_float): Fix condition.  Correctly handle nonzero
421*181254a7Smrg	scale factor.
422*181254a7Smrg
423*181254a7Smrg2004-09-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
424*181254a7Smrg
425*181254a7Smrg	* mk-sik-inc.sh: Use a temporary string instead of 'echo -n'.
426*181254a7Smrg	* mk-srk-inc.sh: Likewise.
427*181254a7Smrg
428*181254a7Smrg2004-09-01  Paul Brook  <paul@codesourcery.com>
429*181254a7Smrg
430*181254a7Smrg	* runtime/error.c (generate_error): Set both iostat and
431*181254a7Smrg	library_return.
432*181254a7Smrg
433*181254a7Smrg2004-08-31  Paul Brook  <paul@codesourcery.com>
434*181254a7Smrg
435*181254a7Smrg	PR libfortran/16805
436*181254a7Smrg	* io/list_read.c (next_char): Don't signal EOF for internal files.
437*181254a7Smrg	* io/unix.c (mem_alloc_r_at): Don't return NULL for incomplete reads.
438*181254a7Smrg
439*181254a7Smrg2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
440*181254a7Smrg
441*181254a7Smrg	* io/unit.c: Separate copyright years by ','.
442*181254a7Smrg	(compare, insert_unit, delete_unit, is_internal_unit, close_units):
443*181254a7Smrg	Remove blank line in beginning of function.
444*181254a7Smrg	(get_unit): Simplify code.
445*181254a7Smrg
446*181254a7Smrg2004-08-31  Paul Brook  <paul@codesourcery.com>
447*181254a7Smrg
448*181254a7Smrg	* io/unit.c (get_unit): Remove superfluous if.
449*181254a7Smrg
450*181254a7Smrg2004-08-31  Paul Brook  <paul@codesourcery.com>
451*181254a7Smrg
452*181254a7Smrg	* io/transfer.c (read_sf): Rename uinty to readlen.  Detect EOF.
453*181254a7Smrg	(finalize_transfer): Move setjmp after namlist IO.
454*181254a7Smrg	* io/unix.c (mem_alloc_r_at): Calculate remaining length correctly.
455*181254a7Smrg
456*181254a7Smrg2004-08-31  Paul Brook  <paul@codesourcery.com>
457*181254a7Smrg
458*181254a7Smrg	* list_read.c (eat_separator): Set at_eo when a '/' is seen.
459*181254a7Smrg
460*181254a7Smrg2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
461*181254a7Smrg
462*181254a7Smrg	* libgfortran.h: Replace 'gfc_strlen_type' by
463*181254a7Smrg	'gfc_charlen_type'. Update comment accordingly.
464*181254a7Smrg	* intrinsics/args.c, intrinsics/env.c, io/io.h, io/transfer.c:
465*181254a7Smrg	Replace all occurences of 'gfc_strlen_type' by 'gfc_charlen_type'.
466*181254a7Smrg
467*181254a7Smrg2004-08-31  Paul Brook  <paul@codesourcery.com>
468*181254a7Smrg
469*181254a7Smrg	* libgfortran.h: Add comments.
470*181254a7Smrg
471*181254a7Smrg2004-08-30  Richard Henderson  <rth@redhat.com>
472*181254a7Smrg
473*181254a7Smrg	* Makefile.am (gfor_helper_src): Split selected_kind.f90.
474*181254a7Smrg	(gfor_built_src): Add selected_int_kind.inc selected_real_kind.inc.
475*181254a7Smrg	(selected_int_kind.inc selected_real_kind.inc): New rules.
476*181254a7Smrg	* Makefile.in: Regenerate.
477*181254a7Smrg	* mk-sik-inc.sh, mk-srk-inc.sh: New files.
478*181254a7Smrg	* intrinsics/selected_int_kind.f90: Split from selected_kind.f90,
479*181254a7Smrg	include table of detected kinds.
480*181254a7Smrg	* intrinsics/selected_real_kind.f90: Similarly.
481*181254a7Smrg
482*181254a7Smrg2004-08-29  Steven G. Kargl  <kargls@comcast.net>
483*181254a7Smrg	Paul Brook  <paul@codesourcery.com>
484*181254a7Smrg
485*181254a7Smrg	* intrinsics/bessel.c: New file.
486*181254a7Smrg	* intrinsics/erf.c: New file.
487*181254a7Smrg	* Makefie.am: Add intrinsics/bessel.c and intrinsics/erf.c.
488*181254a7Smrg	* configure.ac: Test for C99 Bessel and Error functions.
489*181254a7Smrg	* Makefile.in: Regenerate.
490*181254a7Smrg	* config.h.in: Regenerate.
491*181254a7Smrg	* configure: Regenerate.
492*181254a7Smrg
493*181254a7Smrg2004-08-29  Steven G. Kargl  <kargls@comcast.net>
494*181254a7Smrg	Paul Brook  <paul@codesourcery.com>
495*181254a7Smrg
496*181254a7Smrg	* Makefile.am: Add intrinsics/getXid.c.
497*181254a7Smrg	* configure.ac: Add tests for get{g,p,u}id.
498*181254a7Smrg	* config.h.in: Regenerate.
499*181254a7Smrg	* Makefile.in: Regenerate.
500*181254a7Smrg	* configure: Regenerate.
501*181254a7Smrg
502*181254a7Smrg2004-08-28  Paul Brook  <paul@codesourcery.com>
503*181254a7Smrg
504*181254a7Smrg	PR libfortran/17195
505*181254a7Smrg	* libgfortran.h (rtoa): Remove prototype.
506*181254a7Smrg	* runtime/error.c (rtoa): Remove.
507*181254a7Smrg	* io/write.c (calculate_G_format): Don't add blanks if E format is
508*181254a7Smrg	used.  Add correct number of blanks when exponent width is specified.
509*181254a7Smrg	(output_float): Rewrite.
510*181254a7Smrg
511*181254a7Smrg2004-08-27  Paul Brook  <paul@codesourcery.com>
512*181254a7Smrg
513*181254a7Smrg	* io/rewind.c (st_rewind): Reset unit to read mode.
514*181254a7Smrg
515*181254a7Smrg2004-08-27  Bud Davis  <bdavis9659@comcast.net>
516*181254a7Smrg
517*181254a7Smrg	PR fortran/16597
518*181254a7Smrg	* io/io.h: created typedef for unit_mode.
519*181254a7Smrg	* io/io.h (gfc_unit): added mode to unit structure.
520*181254a7Smrg	* io/transfer.c (data_transfer_init): flush if a write then
521*181254a7Smrg	read is done on a unit (direct access files).
522*181254a7Smrg	* io/rewind.c (st_rewind): Used unit mode instead of global.
523*181254a7Smrg
524*181254a7Smrg2004-08-24  Bud Davis  <bdavis9659@comcast.net>
525*181254a7Smrg
526*181254a7Smrg	PR fortran/17143
527*181254a7Smrg	* runtime/error.c (itoa): keep from overflowing during
528*181254a7Smrg	mod operation by using unsigned variable.
529*181254a7Smrg
530*181254a7Smrg2004-08-24  Bud Davis  <bdavis9659@comcast.net>
531*181254a7Smrg
532*181254a7Smrg	PR fortran/17164
533*181254a7Smrg	* runtime/string_intrinsics.c (string_index):check for
534*181254a7Smrg	substring longer than string.
535*181254a7Smrg
536*181254a7Smrg2004-08-24  David Edelsohn  <edelsohn@gnu.org>
537*181254a7Smrg
538*181254a7Smrg	* Makefile.am (libgfortran_la_LDFLAGS): Add -lm.
539*181254a7Smrg	* Makefile.in: Rebuilt.
540*181254a7Smrg
541*181254a7Smrg2004-08-23  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
542*181254a7Smrg
543*181254a7Smrg	* io/io.h, io/list_read.c, io/open.c, io/transfer.c, io/write.c:
544*181254a7Smrg	Fix formatting issues, update copyright years.
545*181254a7Smrg
546*181254a7Smrg2004-08-21  Bud Davis  <bdavis9659@comcast.net>
547*181254a7Smrg
548*181254a7Smrg	PR 16908
549*181254a7Smrg	* io/transfer.c (next_record_w): Do not blank pad.
550*181254a7Smrg	* io/transfer.c (next_record): Take into account partial records.
551*181254a7Smrg
552*181254a7Smrg2004-08-18  Victor Leikehman  <lei@il.ibm.com>
553*181254a7Smrg
554*181254a7Smrg	PR fortran/13278
555*181254a7Smrg	* io/transfer.c (st_set_nml_var)
556*181254a7Smrg	* io/write.c (namelist_write): Allow var_name and var_name_len to be
557*181254a7Smrg	null. For strings, use string_length field instead of len.
558*181254a7Smrg	* io/io.h (struct namelist_type): New field string_length.
559*181254a7Smrg	(st_set_nml_var_char): New argument string_length.
560*181254a7Smrg
561*181254a7Smrg2004-08-13  Bud Davis  <bdavis9659@comcast.net>
562*181254a7Smrg
563*181254a7Smrg	PR gfortran/16935
564*181254a7Smrg	* io/open.c (st_open): use flags instead of the unit structure.
565*181254a7Smrg
566*181254a7Smrg2004-08-10  Victor Leikehman  <lei@il.ibm.com>
567*181254a7Smrg
568*181254a7Smrg	* io/list_read.c (namelist_read): Convert variable names
569*181254a7Smrg	to lower case, so that mixed-case names are recognized.
570*181254a7Smrg	Don't read beyond terminating slash.
571*181254a7Smrg
572*181254a7Smrg2004-08-09  Richard Henderson  <rth@redhat.com>
573*181254a7Smrg	    Roger Sayle  <roger@eyesopen.com>
574*181254a7Smrg
575*181254a7Smrg	* intrinsics/c99_functions.c (nextafterf): New implementation that
576*181254a7Smrg	works correctly with denormalized numbers.
577*181254a7Smrg
578*181254a7Smrg2004-08-09  Victor Leikehman  <lei@il.ibm.com>
579*181254a7Smrg
580*181254a7Smrg	* m4/matmul.m4, m4/matmull.m4, intrinsics/eoshift0.c,
581*181254a7Smrg	intrinsics/eoshift2.c, intrinsics/transpose_generic.c:
582*181254a7Smrg	Allocate space if return value has NULL in its data field.
583*181254a7Smrg	* generated/*.c: Regenerate.
584*181254a7Smrg
585*181254a7Smrg2004-08-06  Janne Blomqvist  <jblomqvi@cc.hut.fi>
586*181254a7Smrg
587*181254a7Smrg	* intrinsics/env.c: New file.
588*181254a7Smrg	* Makefile.am: Add env.c to build.
589*181254a7Smrg	* Makefile.in: Regenerate.
590*181254a7Smrg
591*181254a7Smrg2004-08-05  Victor Leikehman  <lei@il.ibm.com>
592*181254a7Smrg
593*181254a7Smrg	PR libfortran/16704
594*181254a7Smrg	* io/read.c (read_radix): Understand letters f and F as hex digits.
595*181254a7Smrg
596*181254a7Smrg2004-08-04  Victor Leikehman  <lei@il.ibm.com>
597*181254a7Smrg
598*181254a7Smrg	* libgfortran.h (array_t, size0) New declarations.
599*181254a7Smrg	* m4/ifunction.m4, m4/transpose.m4, intrinsics/cshift0.c: Allocate
600*181254a7Smrg	space if return value descriptor has NULL in its data field,
601*181254a7Smrg	and initialize bounds and stride.
602*181254a7Smrg	* intrinsics/size.c (array_t, size0): Declarations moved to
603*181254a7Smrg	libgfortran.h.
604*181254a7Smrg	* generated/*.c: Regenerate.
605*181254a7Smrg
606*181254a7Smrg2004-08-03  Roger Sayle  <roger@eyesopen.com>
607*181254a7Smrg
608*181254a7Smrg	PR libfortran/16137
609*181254a7Smrg	* configure.ac: Add tests for acosf, asinf, atan2f, atanf, ceilf,
610*181254a7Smrg	copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
611*181254a7Smrg	scalbnf, sinf, sinhf, sqrtf, tanf and tanhf in libm.
612*181254a7Smrg	* config.h.in: Regenerate.
613*181254a7Smrg	* configure: Regenerate.
614*181254a7Smrg
615*181254a7Smrg	* instrinsics/c99_functions.c (acosf, asinf, atan2f, atanf, ceilf,
616*181254a7Smrg	copysignf, cosf, coshf, expf, floorf, frexpf, hypotf, logf, log10f,
617*181254a7Smrg	nextafterf, scalbnf, sinf, sinhf, sqrtf, tanf, tanhf): New stub
618*181254a7Smrg	implementations for targets that don't support C99 float functions.
619*181254a7Smrg
620*181254a7Smrg2004-08-01  Roger Sayle  <roger@eyesopen.com>
621*181254a7Smrg
622*181254a7Smrg	* io/write.c (write_float): Use the slightly more portable isnan
623*181254a7Smrg	in preference to isinf.
624*181254a7Smrg
625*181254a7Smrg2004-07-18  Bud Davis  <bdavis9659@comcast.net>
626*181254a7Smrg
627*181254a7Smrg	* configure.ac: Add check for LFS support.
628*181254a7Smrg	* configure: Regenerate
629*181254a7Smrg
630*181254a7Smrg2004-07-11  Paul Brook  <paul@codesourcery.com>
631*181254a7Smrg
632*181254a7Smrg	PR fortran/16303
633*181254a7Smrg	* m4/cexp.m4 (carg): Return -pi to pi.
634*181254a7Smrg	* generated/exp_c?.c: Regenerate.
635*181254a7Smrg
636*181254a7Smrg2004-07-08  Andreas Krebbel  <krebbel1@de.ibm.com>
637*181254a7Smrg
638*181254a7Smrg	PR fortran/16291
639*181254a7Smrg	* libgfortran/io/write.c: (write_float): Added length check.
640*181254a7Smrg	Remove pointless memset calls.
641*181254a7Smrg
642*181254a7Smrg2004-07-04  Bud Davis  <bdavis9659@comcast.net>
643*181254a7Smrg	    Paul Brook  <paul@codesourcery.com>
644*181254a7Smrg
645*181254a7Smrg	PR fortran/15472
646*181254a7Smrg	* io/transfer.c(us_write): set recl for seq unform writes to max size.
647*181254a7Smrg	* io/transfer.c(data_transfer_init): handle un-opened seq unform unit.
648*181254a7Smrg	* io/unix.c(fd_alloc_w_at): handle requests at start, fd_flush at
649*181254a7Smrg	right time.
650*181254a7Smrg	* io/unix.c(is_seekable): set based upon the file/device, not the
651*181254a7Smrg	method being used to access it (fd or mmap).
652*181254a7Smrg	* io/unix.c(fd_flush): don't set file_size if !seekable.
653*181254a7Smrg	* io/unix.c(fd_truncate: ditto.
654*181254a7Smrg
655*181254a7Smrg2004-07-04  Janne Blomqvist  <jblomqvi@cc.hut.fi>
656*181254a7Smrg	Paul Brook  <paul@codesourcery.com>
657*181254a7Smrg
658*181254a7Smrg	PR fortran/15280
659*181254a7Smrg	PR fortran/15665
660*181254a7Smrg	* libgfortran.h (gfc_strlen_type): Define.
661*181254a7Smrg	* intrinsics/args.c (getarg): Rename ...
662*181254a7Smrg	(getarg_i4): ... to this.
663*181254a7Smrg	(getarg_i8, get_command_argument_i4, get_command_argument_i8,
664*181254a7Smrg	get_command_i4, get_command_i8): New functions.
665*181254a7Smrg
666*181254a7Smrg2004-07-04  Matthias Klose  <doko@debian.org>
667*181254a7Smrg
668*181254a7Smrg	* libtool-version: New.
669*181254a7Smrg	* Makefile.am (libgfortran_la_LDFLAGS): Use -version-info for soname.
670*181254a7Smrg	* Makefile.in: Regenerate.
671*181254a7Smrg	* configure.ac: Remove libtool_VERSION macro
672*181254a7Smrg	* configure: Regenerate
673*181254a7Smrg
674*181254a7Smrg2004-06-30  Steve Kargl  <sgk@troutmask.apl.washington.edu>
675*181254a7Smrg	    Steven Bosscher  <stevenb@suse.de>
676*181254a7Smrg
677*181254a7Smrg	* intrinsics/rand.c (rand): Wrap the irand() call from the previous
678*181254a7Smrg	commit in prefix.
679*181254a7Smrg
680*181254a7Smrg2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
681*181254a7Smrg	Paul Brook  <paul@codesourcery.com>
682*181254a7Smrg
683*181254a7Smrg	* runtime/normalize.c (normalize_r4_i4, normalize_r8_i8): Fix
684*181254a7Smrg	comments.
685*181254a7Smrg	* intrinsics/rand.c (rand): Call irand() in call to normalize_r4_i4.
686*181254a7Smrg
687*181254a7Smrg2004-06-27  Bud Davis  <bdavis9659@comcast.net>
688*181254a7Smrg
689*181254a7Smrg	PR gfortran/12839
690*181254a7Smrg	* io/write.c (write_float): check signbit for Infinity.
691*181254a7Smrg
692*181254a7Smrg2004-06-26  Bud Davis  <bdavis9659@comcast.net>
693*181254a7Smrg
694*181254a7Smrg	PR gfortran/16196
695*181254a7Smrg	* unix.c(regular_file): create file if it does not exist.
696*181254a7Smrg
697*181254a7Smrg2004-06-24  Andrew Pinski  <apinski@apple.com>
698*181254a7Smrg
699*181254a7Smrg	* configure.ac: Remove check for libmx.
700*181254a7Smrg	* configure: Regenerate.
701*181254a7Smrg
702*181254a7Smrg2004-06-22  Janne Blomqvist  <jblomqvi@cc.hut.fi>
703*181254a7Smrg
704*181254a7Smrg	PR fortran/15750
705*181254a7Smrg	* inquire.c (st_inquire): Add comment
706*181254a7Smrg	* io.h (st_parameter): Add iolength.
707*181254a7Smrg	(st_iolength, st_iolength_done): Declare.
708*181254a7Smrg	* transfer.c (iolength_transfer, iolength_transfer_init,
709*181254a7Smrg	st_iolength, st_iolength_done): New functions.
710*181254a7Smrg
711*181254a7Smrg2004-06-21  Steven G. Kargl  <kargls@comcast.net>
712*181254a7Smrg
713*181254a7Smrg	* etime.c (etime_sub): Remove array rank check;
714*181254a7Smrg	Add check for sufficient space.
715*181254a7Smrg
716*181254a7Smrg2004-06-19  Bud Davis  <bdavis9659@comcast.net>
717*181254a7Smrg
718*181254a7Smrg	PR gfortran/16080
719*181254a7Smrg	* io/list_read.c(set_value): fixed spelling.
720*181254a7Smrg
721*181254a7Smrg2004-06-19  Bud Davis  <bdavis9659@comcast.net>
722*181254a7Smrg
723*181254a7Smrg	PR gfortran/16080
724*181254a7Smrg	* io/list_read.c(set_value): don't copy if the string is null.
725*181254a7Smrg
726*181254a7Smrg2004-06-14  Bud Davis  <bdavis9659@comcast.net>
727*181254a7Smrg
728*181254a7Smrg	PR gfortran/15292
729*181254a7Smrg	* intrinsics/c99_functions.c: Use fpclassify if it exists.
730*181254a7Smrg
731*181254a7Smrg2004-06-13  Paul Brook  <paul@codesourcery.com>
732*181254a7Smrg
733*181254a7Smrg	* Makefile.am (gfor_helper_src): Add runtime/normalize.f90.
734*181254a7Smrg	* configure.ac: Add checks for nextafter and nextafterf.
735*181254a7Smrg	* Makefile.in, config.h.in, configure: Regenerate.
736*181254a7Smrg	* libgfortran.h (normalize_r4_i4, normalize_r8_i8): Declare.
737*181254a7Smrg	* intrinsics/rand.c (rand): Use normalize_r4_i4.
738*181254a7Smrg	* intrinsics/random.c (random_r4): Use normalize_r4_i4.
739*181254a7Smrg	(random_r8): Use normalize_r8_i8.
740*181254a7Smrg	* runtime/normalize.c: New file.
741*181254a7Smrg
742*181254a7Smrg2004-06-13  Steven G. Kargl  <kargls@comcast.net>
743*181254a7Smrg	    Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
744*181254a7Smrg
745*181254a7Smrg	* random.c: Fix several spelling and formatting mistakes in
746*181254a7Smrg	comments.
747*181254a7Smrg	(random_r8): Fix loop to make random numbers range in [0,1(.
748*181254a7Smrg
749*181254a7Smrg
750*181254a7Smrg2004-06-13  Steven G. Kargl  <kargls@comcast.net>
751*181254a7Smrg
752*181254a7Smrg	* random.c (random_r4): Burn a random number.
753*181254a7Smrg	(random_r8): fix infinite loop.
754*181254a7Smrg
755*181254a7Smrg2004-06-12  Bud Davis  <bdavis9659@comcast.net>
756*181254a7Smrg	    Steve Kargl  <sgk@troutmask.apl.washington.edu>
757*181254a7Smrg
758*181254a7Smrg	PR gfortran/15292
759*181254a7Smrg	* intrinsics/c99_functions.c: New file.
760*181254a7Smrg	* Makefile.am: Add new file.
761*181254a7Smrg	* configure.ac: Added test for round/roundf.
762*181254a7Smrg	* Makefile.in: Regenerate.
763*181254a7Smrg	* configure: Regenerate.
764*181254a7Smrg	* configure.h.in: Regenerate.
765*181254a7Smrg
766*181254a7Smrg2004-06-12  Steven G. Kargl  <kargls@comcast.net>
767*181254a7Smrg
768*181254a7Smrg	* Makefile.am: Add rand.c and etime.c
769*181254a7Smrg	* Makefile.in: Regenerated.
770*181254a7Smrg	* aclocal.in: Regenerated.
771*181254a7Smrg	* cpu_time.c (second_sub, second): New functions.
772*181254a7Smrg	* rand.c (irand, rand, srand): New file.
773*181254a7Smrg	* etime.c (etime_sub, etime): New file.
774*181254a7Smrg
775*181254a7Smrg2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
776*181254a7Smrg	    Steven Bosscher  <stevenb@suse.de>
777*181254a7Smrg
778*181254a7Smrg	PR fortran/14923
779*181254a7Smrg	* intrinsics/date_and_time.c: New file.
780*181254a7Smrg	* Makefile.am (gfor_helper_src): Add intrinsics/date_and_time.c.
781*181254a7Smrg	* Makefile.in, aclocal.m4: Regenerate.
782*181254a7Smrg	* libgfortran.h: Prototype date_and_time().
783*181254a7Smrg
784*181254a7Smrg2004-06-12  Bud Davis  <bdavis9659@comcast.net>
785*181254a7Smrg
786*181254a7Smrg	PR fortran/15665
787*181254a7Smrg	* intrinsics/args.c: Implement GETARG and IARGC.
788*181254a7Smrg	* Makefile.am: Add it.
789*181254a7Smrg	* Makefile.in: Regenerate.
790*181254a7Smrg
791*181254a7Smrg2004-06-12  Bud Davis  <bdavis9659@comcast.net>
792*181254a7Smrg
793*181254a7Smrg	PR gfortran/12839
794*181254a7Smrg	* io/write.c(write_float): Format inf and nan IAW F2003.
795*181254a7Smrg
796*181254a7Smrg2004-06-09  Bud Davis  <bdavis9659@comcaste.net>
797*181254a7Smrg
798*181254a7Smrg	PR gfortran/14897
799*181254a7Smrg	* io/transfer.c (formatted_transfer): position is unique
800*181254a7Smrg	 for T and TL edit descriptors.
801*181254a7Smrg	(data_transfer_init): set record length to size of internal
802*181254a7Smrg	 file.
803*181254a7Smrg
804*181254a7Smrg2004-06-09  Bud Davis  <bdavis9659@comcast.net>
805*181254a7Smrg
806*181254a7Smrg	PR gfortran/15755
807*181254a7Smrg	* io/backspace.c(st_backspace): call correct routine for
808*181254a7Smrg	formatted and un-formatted units.
809*181254a7Smrg
810*181254a7Smrg2004-05-30  Andreas Jaeger  <aj@suse.de>, Steven Bosscher <stevenb@suse.de>
811*181254a7Smrg
812*181254a7Smrg	PR gfortran/11800
813*181254a7Smrg	* Makefile.am (AM_CPPFLAGS): Renamed from INCLUDES.
814*181254a7Smrg	(lib_LTLIBRARIES): Rename to ...
815*181254a7Smrg	(toolexeclib_LTLIBRARIES): this for multilib support.
816*181254a7Smrg	* configure.in: Rename to ...
817*181254a7Smrg	* configure.ac: this.  Update to modern autoconf style, enable
818*181254a7Smrg	multilibs, support --enable-version-specific-runtime-libs.
819*181254a7Smrg	* Makefile.in: Regenerated.
820*181254a7Smrg	* configure: Regenerated.
821*181254a7Smrg	* aclocal.m4: Regenerated.
822*181254a7Smrg
823*181254a7Smrg2004-05-30  Steven G. Kargl  <kargls@comcast.net>
824*181254a7Smrg
825*181254a7Smrg	* libgfortran.h (random_seed): Update prototype.
826*181254a7Smrg	* intrinsics/random.c: Disable old implementation and add new one.
827*181254a7Smrg
828*181254a7Smrg2004-05-30  Andreas Jaeger  <aj@suse.de>
829*181254a7Smrg
830*181254a7Smrg	* intrinsics/random.c: Include unistd.h for close and read
831*181254a7Smrg	prototypes, remove unneeded inclusion of assert.h.
832*181254a7Smrg
833*181254a7Smrg	* intrinsics/abort.c: Include stdlib.h for abort prototype, remove
834*181254a7Smrg	unneeded inclusion of assert.h.
835*181254a7Smrg
836*181254a7Smrg2004-05-27  Tobias Schlueter  <tobias.shclueter@physik.uni-muenchen.de>
837*181254a7Smrg
838*181254a7Smrg	PR fortran/15234
839*181254a7Smrg	* intrinsics/associated.c: Remove enum.
840*181254a7Smrg	(associated): Replace TRUE/FALSE by 1/0.
841*181254a7Smrg
842*181254a7Smrg2004-05-23  Steven G. Kargl  <kargls@comcast.net>
843*181254a7Smrg
844*181254a7Smrg	* random.c (random_seed): Use correct variable.
845*181254a7Smrg
846*181254a7Smrg2004-05-22  Steven G. Kargl  <kargls@comcast.net>
847*181254a7Smrg
848*181254a7Smrg	* intrinsics/system_clock: New file.
849*181254a7Smrg	* Makefile.am: Add intrinsics/system_clock.c.
850*181254a7Smrg	* Makefile.in: Regenerate.
851*181254a7Smrg
852*181254a7Smrg2004-05-21  Roger Sayle  <roger@eyesopen.com>
853*181254a7Smrg
854*181254a7Smrg	* io/format.c (parse_format_list): Allow the comma after a string
855*181254a7Smrg	literal to be optional.
856*181254a7Smrg
857*181254a7Smrg2004-05-18  Paul Brook  <paul@codesourcery.com>
858*181254a7Smrg	Feng Wang  <fengwang@nudt.edu.cn>
859*181254a7Smrg
860*181254a7Smrg	* Makefile.am (i_pow_c): Set it. Add build rule.
861*181254a7Smrg	(gfor_built_src): Use it.
862*181254a7Smrg	(m4_files): add m4/pow.m4.
863*181254a7Smrg	* Makefile.in: Regenerate.
864*181254a7Smrg	* m4/pow.m4: New file.
865*181254a7Smrg	* generated/pow_*.c: Regenerate.
866*181254a7Smrg
867*181254a7Smrg2004-05-18  Paul Brook  <paul@codesourcery.com>
868*181254a7Smrg
869*181254a7Smrg	* Makefile.am: Remove references to types.m4.
870*181254a7Smrg	* m4/iparm.m4: Merge with types.m4.
871*181254a7Smrg	* m4/types.m4: Remove.
872*181254a7Smrg	* m4/cshift1.m4, m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4,
873*181254a7Smrg	m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4, m4/ifunction.m4,
874*181254a7Smrg	m4/in_pack.m4, m4/in_unpack.m4, m4/iparm.m4, m4/matmul.m4,
875*181254a7Smrg	m4/matmull.m4, m4/maxloc0.m4, m4/maxloc1.m4, m4/maxval.m4,
876*181254a7Smrg	m4/minloc0.m4, m4/minloc1.m4, m4/minval.m4, m4/reshape.m4,
877*181254a7Smrg	m4/shape.m4, m4/specific.m4, m4/specific2.m4, m4/transpose.m4):
878*181254a7Smrg	Update to use new iparm.m4.
879*181254a7Smrg	* generated/*.c: Regenerate.
880*181254a7Smrg
881*181254a7Smrg2004-05-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
882*181254a7Smrg
883*181254a7Smrg	PR fortran/15235
884*181254a7Smrg	* gfortran.h (offset_t): Rename to ...
885*181254a7Smrg	(gfc_offset): ... this.
886*181254a7Smrg	* io/backspace.c (formatted_backspace, unformatted_backspace),
887*181254a7Smrg	io/io.h (stream, gfc_unit, global_t, file_length, file_position),
888*181254a7Smrg	transfer.c (us_read, us_write, next_record_r, next_record_w),
889*181254a7Smrg	io/unit.c (init_units), unix.c (unix_stream, fd_alloc,
890*181254a7Smrg	fd_alloc_r_at, fd_alloc_w_at, fd_seek, mmap_alloc,
891*181254a7Smrg	mmap_alloc_r_at, mmap_alloc_w_at, mmap_seek, mem_alloc_r_at,
892*181254a7Smrg	mem_alloc_w_at, mem_seek, file_length, file_position): Replace all
893*181254a7Smrg	occurences of offset_t by gfc_offset.
894*181254a7Smrg
895*181254a7Smrg2004-05-16  Paul Brook  <paul@codesourcery.com>
896*181254a7Smrg
897*181254a7Smrg	* io/format.c (write_real): Don't include padding in format.
898*181254a7Smrg
899*181254a7Smrg2004-05-16  Paul Brook  <paul@codesourcery.com>
900*181254a7Smrg
901*181254a7Smrg	* io/format.c (format_lex): Make c an int.
902*181254a7Smrg
903*181254a7Smrg2004-05-16  Janne Blomqvist  <jblomqvi@cc.hut.fi>
904*181254a7Smrg	Paul Brook  <paul@codesourcery.com>
905*181254a7Smrg
906*181254a7Smrg	* io/write.c (write_logical): Don't print extra blank.
907*181254a7Smrg	(write_integer): Base field width on kind.
908*181254a7Smrg	(list_formatted_write): Output initial blank.
909*181254a7Smrg
910*181254a7Smrg2004-05-16  Janne Blomqvist  <jblomqvi@cc.hut.fi>
911*181254a7Smrg
912*181254a7Smrg	* io/io.h (flush): Add prototype.
913*181254a7Smrg	* io/transfer.c (finalize_transfer): Flush partial records.
914*181254a7Smrg	* io/unix.c (flush): New function.
915*181254a7Smrg
916*181254a7Smrg2004-05-15  Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
917*181254a7Smrg
918*181254a7Smrg	PR fortran/15234
919*181254a7Smrg	* io/io.h (unit_t): Rename to ...
920*181254a7Smrg	(gfc_unit) ... this.
921*181254a7Smrg	(unit_root, current_unit, find_file, find_unit, get_unit): Now
922*181254a7Smrg	of type gfc_unit.
923*181254a7Smrg	(delete_file, insert_unit, close_unit): Argument now of type
924*181254a7Smrg	gfc_unit.
925*181254a7Smrg	* backspace.c (st_backspace), close.c (st_close), endfile.c
926*181254a7Smrg	(st_endfile), inquire.c (inquire_via_unit, st_inquire), open.c
927*181254a7Smrg	(test_endfile, edit_modes, new_unit, already_open, st_open),
928*181254a7Smrg	rewind.c (st_rewind), transfer.c (current_unit), unit.c
929*181254a7Smrg	(internal_unit, unit_cache, rotate_left, rotate_right, insert,
930*181254a7Smrg	insert_unit, delete_root, delete_treap, delete_unit, find_unit,
931*181254a7Smrg	get_unit, init_units, close_unit), unix.c (find_file0,
932*181254a7Smrg	find_file, delete_file): Replace all occurences of unit_t by
933*181254a7Smrg	gfc_unit.
934*181254a7Smrg
935*181254a7Smrg2004-05-15  Bud Davis  <bdavis9659@comcast.net>
936*181254a7Smrg
937*181254a7Smrg	PR fortran/15311
938*181254a7Smrg	* io/write.c (write_a): right justify A edit output.
939*181254a7Smrg
940*181254a7Smrg2004-05-14  Bud Davis  <bdavis9659@comcast.net>
941*181254a7Smrg
942*181254a7Smrg	PR fortran/15149
943*181254a7Smrg	* libgfortan.h,intrinsics/random.c: Made random_seed visible.
944*181254a7Smrg	* runtime/main.c(init): Call random_seed as part of MAIN init.
945*181254a7Smrg
946*181254a7Smrg2004-05-13  Tobias Schlter  <tobias.schlueter@physik.uni-muenchen.de>
947*181254a7Smrg
948*181254a7Smrg	* io/format.c: (parse_format_list): No comma is required after
949*181254a7Smrg	P descriptor.
950*181254a7Smrg
951*181254a7Smrg2004-05-13  Bud Davis  <bdavis9659@comcast.net>
952*181254a7Smrg
953*181254a7Smrg	PR fortran/15204
954*181254a7Smrg	* io/intrinsic/string_intrinsics.c (adjustr): rework logic.
955*181254a7Smrg
956*181254a7Smrg2004-05-06  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
957*181254a7Smrg	    Steven Bosscher  <stevenb@suse.de>
958*181254a7Smrg
959*181254a7Smrg	PR libfortran/15234
960*181254a7Smrg	* libgfortran.h: Include <inttypes.h> if available.
961*181254a7Smrg
962*181254a7Smrg2004-05-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
963*181254a7Smrg
964*181254a7Smrg	* io/unix.c (MAP_FAILED): Define if missing.
965*181254a7Smrg	(mmap_alloc): Cast MAP_FAILED to char *.
966*181254a7Smrg	(mmap_open): Likewise.
967*181254a7Smrg
968*181254a7Smrg2004-04-26  Bud Davis  <bdavis9659@comcast.net>
969*181254a7Smrg
970*181254a7Smrg	* generated/_abs_i8.f90: New file.
971*181254a7Smrg	* generated/_abs_c4.f90: New file.
972*181254a7Smrg	* generated/_abs_c8.f90: New file.
973*181254a7Smrg	* Makefile.am: Add them.
974*181254a7Smrg	* Makefile.in: Regenerate.
975*181254a7Smrg`
976*181254a7Smrg2004-04-26  Bud Davis  <bdavis9659@comcast.net>
977*181254a7Smrg
978*181254a7Smrg	PR fortran/14056
979*181254a7Smrg	* generated/_abs_i4.f90: New file.
980*181254a7Smrg	* Makefile.am: Add it.
981*181254a7Smrg	* Makefile.in: Regenerate.
982*181254a7Smrg
983*181254a7Smrg2004-04-25  Bud Davis  <bdavis9659@comcast.net>
984*181254a7Smrg
985*181254a7Smrg	PR fortran/14942
986*181254a7Smrg	* io/list_read.c(list_formatted_read): finish consuming the
987*181254a7Smrg	spaces and seperators at eoln to get ready for next item.
988*181254a7Smrg
989*181254a7Smrg2004-04-23  Bud Davis  <bdavis9659@comcast.net>
990*181254a7Smrg
991*181254a7Smrg	PR fortran/15113
992*181254a7Smrg	* io/read.c(read_a): Handle field width > destination and no field width.
993*181254a7Smrg
994*181254a7Smrg2004-04-22  Bud Davis  <bdavis9659@comcast.net>
995*181254a7Smrg
996*181254a7Smrg	PR fortran/14906
997*181254a7Smrg	* io/format.c (format_item): gracefully handle a ')'
998*181254a7Smrg	when it is the first character encountered in the string.
999*181254a7Smrg
1000*181254a7Smrg2004-04-11  Bud Davis  <bdavis9659@comcast.net>
1001*181254a7Smrg
1002*181254a7Smrg	PR fortran/14904
1003*181254a7Smrg	* io/transfer.c (next_record): Update last_record when
1004*181254a7Smrg	more than one record is written to a direct access file
1005*181254a7Smrg	with one write statement.
1006*181254a7Smrg
1007*181254a7Smrg2004-04-11  Bud Davis  <bdavis9659@comcast.net>
1008*181254a7Smrg
1009*181254a7Smrg	PR fortran/14901
1010*181254a7Smrg	* io/transfer.c (next_record_w) : No '\n' if internal.
1011*181254a7Smrg	* io/unix.c (empty_internal_buffer) : Init to spaces, not '\n'.
1012*181254a7Smrg
1013*181254a7Smrg2004-04-11  Bud Davis  <bdavis9659@comcast.net>
1014*181254a7Smrg
1015*181254a7Smrg	* io.h (ioparm): Interface from FE is 32 bit, irregardless of offset_t.
1016*181254a7Smrg	Will need to change this later to support direct access files > 2gb.
1017*181254a7Smrg
1018*181254a7Smrg2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1019*181254a7Smrg
1020*181254a7Smrg	PR gfortran/14762
1021*181254a7Smrg	* io/transfer.c (next_record_r) : Skip to next record.
1022*181254a7Smrg
1023*181254a7Smrg2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1024*181254a7Smrg
1025*181254a7Smrg	PR gfortran/14836
1026*181254a7Smrg	* io/transfer.c (next_record): Update last_record for DIRECT
1027*181254a7Smrg
1028*181254a7Smrg2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1029*181254a7Smrg
1030*181254a7Smrg	PR gfortran/14837
1031*181254a7Smrg	* io/unix.c (find_file0): Use fd field of struct
1032*181254a7Smrg
1033*181254a7Smrg2004-04-03  Bud Davis  <bdavis9659@comcast.net>
1034*181254a7Smrg
1035*181254a7Smrg	PR 14831
1036*181254a7Smrg	* io/inquire.c (inquire_via_unit): Changed return string for
1037*181254a7Smrg	BLANK=NULL. Use correct variable for ACTION.
1038*181254a7Smrg
1039*181254a7Smrg2004-04-01  Bud Davis  <bdavis9659@comcast.net>
1040*181254a7Smrg
1041*181254a7Smrg	PR 14746
1042*181254a7Smrg	* io/read.c (read_f): Allow a decimal without a leading digit.
1043*181254a7Smrg	* io/write.c (output_float): remove a leading '0' to keep from
1044*181254a7Smrg	overflowing the field (F edit descriptor).
1045*181254a7Smrg
1046*181254a7Smrg2004-04-01  Bud Davis  <bdavis9659@comcast.net>
1047*181254a7Smrg
1048*181254a7Smrg	PR gfortran/14565
1049*181254a7Smrg	* io/open.c (new_unit),
1050*181254a7Smrg	* io/io.h : new_unit is now visible
1051*181254a7Smrg	* io/transfer.c (data_transfer_init): open unit if no OPEN statement.
1052*181254a7Smrg	* io/transfer.c (data_transfer_init): remove compile warnings.
1053*181254a7Smrg	* io/rewind.c (st_rewind): ftruncate if writing.
1054*181254a7Smrg
1055*181254a7Smrg2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1056*181254a7Smrg
1057*181254a7Smrg	* write.c (write_l): Use extract_int for 'L' edit descriptor.
1058*181254a7Smrg
1059*181254a7Smrg2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1060*181254a7Smrg
1061*181254a7Smrg	PR 13919
1062*181254a7Smrg	* io/io.h (global_t):
1063*181254a7Smrg	* io/list_read.c (next_char,list_formatted_read,ist_formatted_read):
1064*181254a7Smrg	  Move eof_jmp to a global structure.
1065*181254a7Smrg	* io/transfer.c(finalize_transfer) : Set up eof_jump for callers.
1066*181254a7Smrg
1067*181254a7Smrg2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1068*181254a7Smrg
1069*181254a7Smrg	* m4/cexp.m4 (csqrt): Actually use the passed value.
1070*181254a7Smrg	* generated/exp_c?.c: Regenerate.
1071*181254a7Smrg
1072*181254a7Smrg2004-03-24  Bud Davis  <bdavis9659@comcast.net>
1073*181254a7Smrg
1074*181254a7Smrg	PR 12921
1075*181254a7Smrg	* io.h, transfer.c, open.c : recl_in changed from ptr to variable.
1076*181254a7Smrg	* open.c (new_unit): Moved test for positioned direct access error.
1077*181254a7Smrg	(init_units): Corrected calculation of max records.
1078*181254a7Smrg
1079*181254a7Smrg2004-02-06  Feng Wang  <fengwang@nudt.edu.cn>
1080*181254a7Smrg
1081*181254a7Smrg	* Makefile.am: Add m4/dotprodc.m4. And fix spelling.
1082*181254a7Smrg	* Makefile.in: Regenerate.
1083*181254a7Smrg	* m4/dotprodc.m4: New file. Implement complex dot_product.
1084*181254a7Smrg	* m4/dotprod.m4: Delete the complex implementation.
1085*181254a7Smrg	* generated/dotprod_*: Update.
1086*181254a7Smrg
1087*181254a7Smrg2004-02-07  Bud Davis  <bdavis9659@comcast.net>
1088*181254a7Smrg
1089*181254a7Smrg	* transfer.c (write_constant_string): Do not delete H's in hollerith
1090*181254a7Smrg	formats.
1091*181254a7Smrg
1092*181254a7Smrg2004-01-05  Andrew Pinski  <apinski@apple.com>
1093*181254a7Smrg
1094*181254a7Smrg	* configure.in: Check for csin in -lmx also.
1095*181254a7Smrg	* configure: Regenerate.
1096*181254a7Smrg
1097*181254a7Smrg2004-01-01  Paul Brook  <paul@codesourcery.com>
1098*181254a7Smrg
1099*181254a7Smrg	* io/list_read.c (find_nml_node): Make static.
1100*181254a7Smrg	(match_namelist_name): Ditto.
1101*181254a7Smrg	* io/read.c (convert_precision_real): Make static, fix spelling.
1102*181254a7Smrg	* io/transfer.c (extract_real): Remove unused prototype.
1103*181254a7Smrg	(st_set_nml_var): Make static.
1104*181254a7Smrg	* io/write.c (extract_real): Make static.
1105*181254a7Smrg
1106*181254a7Smrg
1107*181254a7SmrgCopyright (C) 2004 Free Software Foundation, Inc.
1108*181254a7Smrg
1109*181254a7SmrgCopying and distribution of this file, with or without modification,
1110*181254a7Smrgare permitted in any medium without royalty provided the copyright
1111*181254a7Smrgnotice and this notice are preserved.
1112