]> www.ginac.de Git - cln.git/blob - ChangeLog
Fix hack from 2008-01-20 that broke on ARM.
[cln.git] / ChangeLog
1 2008-03-31  Bruno Haible  <bruno@clisp.org>
2
3         Fix hack from 2008-01-20 that broke on ARM.
4         * src/float/ffloat/conv/cl_FF_from_float.cc (FAST_FLOAT): Remove.
5         (cl_float_to_FF_pointer): Use anonymous union for conversion.
6         * src/float/dfloat/conv/cl_DF_from_double.cc (FAST_DOUBLE): Remove.
7         (cl_double_to_DF_pointer): Use anonymous union for conversion.
8
9 2008-03-24  Richard B. Kreckel  <kreckel@ginac.de>
10
11         * Version 1.2.1 released.
12
13 2008-03-23  Bruno Haible  <bruno@clisp.org>
14
15         * autogen.sh: New file.
16         * Makefile.devel (build-prerequisites): New target.
17         (all): Depend on it.
18         (EXCLUDE): Also exclude autogen.sh.
19
20 2008-03-23  Bruno Haible  <bruno@clisp.org>
21
22         Make "make -jN" work again, broken on 2008-02-23.
23         * src/Makefile.in (ALLOBJECTS_LO): Fix dependency.
24
25 2008-03-15  Richard B. Kreckel  <kreckel@ginac.de>
26
27         * m4/gmp.m4 (CL_LIBGMP): New macro brings support for --with-gmp=DIR...
28         * configure.ac: ...used here.
29         * doc/cln.texi: Document that new feature.
30         Suggested by Paul Zimmermann <paul.zimmermann@loria.fr>.
31
32 2008-02-23  Bruno Haible  <bruno@clisp.org>
33
34         Support for gcc-4.3 snapshots.
35         * autoconf/floatparam.c (check): Change argument types to
36         'volatile type*'. This defeats optimizations of gcc 4.3.0 snapshots.
37
38 2008-02-23  Bruno Haible  <bruno@clisp.org>
39
40         Change "make alls" and "make allo" to recurse into subdirectories.
41         * src/Makefile.in (alls-local): Renamed from alls.
42         (allo-local): Renamed from allo.
43         (SUBDIRS_TARGET_ALL): Renamed from SUBDIRS_TARGET.
44         (alls, allo): New rules.
45         (SUBDIRS_TARGET_ALLS, SUBDIRS_TARGET_ALLO): New variables.
46
47 2008-02-22  Richard B. Kreckel  <kreckel@ginac.de>
48
49         * include/cln/integer_io.h (read_integer): Make index args uintC.
50         * src/integer/input/cl_I_readparsed.cc: Likewise.
51         * include/cln/rational_io.h (read_rational): Likewise.
52         * src/rational/input/cl_RA_readparsed.cc: Likewise
53         * include/cln/float_io.h (read_float): Likewise.
54         * src/float/input/cl_F_readparsed.cc: Likewise.
55         * src/vector/output/cl_GV_number_aprint.cc: Vector lengths are uintC.
56         * src/vector/output/cl_SV_aprint.cc: Likewise.
57         * src/vector/output/cl_SV_number_aprint.cc: Likewise.
58
59 2008-02-15  Richard B. Kreckel  <kreckel@ginac.de>
60
61         * m4/cc.m4 (CL_HAVE_ATTRIBUTE_FLATTEN): More robust definition allows...
62         * src/base/cl_maybe_inline.h (CL_FLATTEN): ...simplification here.
63
64 2008-02-10  Richard B. Kreckel  <kreckel@ginac.de>
65
66         * autoconf/ltmain.sh: Update to libtool-1.5.26.
67         * autoconf/config.guess: Likewise.
68         * autoconf/config.sub: Likewise.
69         * m4/libtool.m4: Likewise.
70
71 2008-02-09  Alexei Sheplyakov  <varg@theor.jinr.ru>
72             Richard B. Kreckel  <kreckel@ginac.de>
73
74         Avoid compiler warning about ignored 'flatten' attribute directive:
75         * m4/cc.m4 (CL_ATTRIBUTE_FLATTEN): New macro...
76         * configure.ac: ...used here...
77         * include/cln/config.h.in: ...defining CL_HAVE_ATTRIBUTE_FLATTEN,...
78         * src/base/cl_maybe_inline.h: ...used to prevent a warning here.
79
80 2008-02-07  Richard B. Kreckel  <kreckel@ginac.de>
81
82         * include/cln/integer.h: Enable modifying operators by default.
83         * include/cln/rational.h: Likewise.
84         * include/cln/sfloat.h: Likewise.
85         * include/cln/ffloat.h: Likewise.
86         * include/cln/dfloat.h: Likewise.
87         * include/cln/lfloat.h: Likewise.
88         * include/cln/float.h: Likewise.
89         * include/cln/real.h: Likewise.
90         * include/cln/complex.h: Likewise.
91         * doc/cln.texi: Document that.
92
93 2008-02-06  Richard B. Kreckel  <kreckel@ginac.de>
94
95         Fix crash in output of huge numbers:
96         * src/integer/conv/cl_I_to_digits.cc: Make erglen uintC.
97         * src/integer/output/cl_I_print_string.cc: Make B_baselen uintC.
98
99 2008-02-04  Richard B. Kreckel  <kreckel@ginac.de>
100
101         Fix cl_F output of more than 2^32 decimal digits:
102         * src/base/string/cl_sstring.cc (cl_sstring): make len uintC.
103         * src/base/string/cl_sstring.h: Likewise.
104
105 2008-01-23  Bruno Haible  <bruno@clisp.org>
106
107         Allow 64-bit builds on MacOS X 10.5.
108         * m4/general.m4 (CL_CANONICAL_HOST_CPU): Test for x86_64 CPU if
109         "uname -m" returns "i386".
110         Reported by Ron Garret <ron@flownet.com>.
111
112 2008-01-20  Bruno Haible  <bruno@clisp.org>
113
114         Avoid some gcc warnings.
115         * autoconf/floatparam.c (flipped_double): Use a union instead of a
116         type-punning cast.
117         * include/cln/number.h (union ffloatjanus, union dfloatjanus): Remove
118         declarations.
119         (cl_float_to_FF_pointer, cl_double_to_DF_pointer): Change argument
120         type.
121         (CL_DEFINE_FLOAT_CONSTRUCTOR, CL_DEFINE_DOUBLE_CONSTRUCTOR): Update.
122         * src/float/ffloat/cl_FF.h (cl_float_to_FF_pointer): Change argument
123         type.
124         (cl_float_to_FF): Remove function.
125         * src/float/ffloat/conv/cl_FF_from_float.cc (FAST_FLOAT): Define.
126         (cl_float_to_FF_pointer): Change argument type.
127         * src/float/dfloat/cl_DF.h (cl_double_to_DF_pointer): Change argument
128         type.
129         (cl_double_to_DF): Remove function.
130         * src/float/dfloat/conv/cl_DF_from_double.cc (FAST_DOUBLE): Define.
131         (cl_double_to_DF_pointer): Change argument type.
132         * src/float/lfloat/cl_LF_impl.h (LF_decode): Mark the mantlen_zuweisung
133         assignment as possibly unused.
134         * src/base/cl_low.h (mulu32): Mark the hi_zuweisung assignment as
135         possibly unused.
136         * src/float/transcendental/cl_LF_zeta_int.cc (compute_zeta_cvz2):
137         Remove unused local variable.
138
139 2008-01-19  Richard B. Kreckel  <kreckel@ginac.de>
140
141         * Version 1.2.0 released.
142
143 2008-01-19  Richard B. Kreckel  <kreckel@ginac.de>
144
145         * doc/Makefile.in: texi2html -split_chapter doesn't generate
146         cln_toc.html any more.
147         * doc/cln.texi: Add table of contents in TeX output.
148
149 2008-01-18  Alexei Sheplyakov  <varg@theor.jinr.ru>
150
151         Fix linking problems on some platforms caused by inline/non-inline
152         versions of same functions (obsoletes MAYBE_INLINE):
153         * src/base/cl_maybe_inline.h: New file.
154         * src/base/cl_inline2.h: New file.
155         * src/base/cl_inline.h: New file.
156         * src/base/string/cl_st_make0.h: New file.
157         * src/base/cl_macros.h: Pull in cl_maybe_inline.h.
158         * src/base/string/cl_st_concat1.cc: Use new CL_INLINE macros and the
159         new *_inline functions.
160         * src/base/string/cl_st_concat2.cc: Likewise.
161         * src/base/string/cl_st_concat3.cc: Likewise.
162         * src/complex/algebraic/cl_C_abs.cc: Likewise.
163         * src/complex/algebraic/cl_C_abs_aux.cc: Likewise.
164         * src/complex/algebraic/cl_C_signum.cc: Likewise.
165         * src/complex/algebraic/cl_DF_hypot.cc: Likewise.
166         * src/complex/algebraic/cl_FF_hypot.cc: Likewise.
167         * src/complex/algebraic/cl_LF_hypot.cc: Likewise.
168         * src/complex/algebraic/cl_SF_hypot.cc: Likewise.
169         * src/complex/transcendental/cl_C_acosh.cc: Likewise.
170         * src/complex/transcendental/cl_C_asinh_aux.cc: Likewise.
171         * src/complex/transcendental/cl_C_atanh_aux.cc: Likewise.
172         * src/float/dfloat/division/cl_DF_fceil.cc: Likewise.
173         * src/float/dfloat/elem/cl_DF_div.cc: Likewise.
174         * src/float/dfloat/elem/cl_DF_ffloor.cc: Likewise.
175         * src/float/dfloat/elem/cl_DF_minusp.cc: Likewise.
176         * src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
177         * src/float/dfloat/elem/cl_DF_plusp.cc: Likewise.
178         * src/float/dfloat/elem/cl_DF_zerop.cc: Likewise.
179         * src/float/dfloat/misc/cl_DF_abs.cc: Likewise.
180         * src/float/dfloat/misc/cl_DF_digits.cc: Likewise.
181         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: Likewise.
182         * src/float/dfloat/misc/cl_DF_exponent.cc: Likewise.
183         * src/float/dfloat/misc/cl_DF_idecode.cc: Likewise.
184         * src/float/dfloat/misc/cl_DF_precision.cc: Likewise.
185         * src/float/dfloat/misc/cl_DF_sign.cc: Likewise.
186         * src/float/dfloat/misc/cl_DF_signum.cc: Likewise.
187         * src/float/elem/cl_F_minusp.cc: Likewise.
188         * src/float/elem/cl_F_plusp.cc: Likewise.
189         * src/float/elem/cl_F_zerop.cc: Likewise.
190         * src/float/ffloat/division/cl_FF_fceil.cc: Likewise.
191         * src/float/ffloat/elem/cl_FF_div.cc: Likewise.
192         * src/float/ffloat/elem/cl_FF_ffloor.cc: Likewise.
193         * src/float/ffloat/elem/cl_FF_minusp.cc: Likewise.
194         * src/float/ffloat/elem/cl_FF_mul.cc: Likewise.
195         * src/float/ffloat/elem/cl_FF_plusp.cc: Likewise.
196         * src/float/ffloat/elem/cl_FF_zerop.cc: Likewise.
197         * src/float/ffloat/misc/cl_FF_abs.cc: Likewise.
198         * src/float/ffloat/misc/cl_FF_digits.cc: Likewise.
199         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: Likewise.
200         * src/float/ffloat/misc/cl_FF_exponent.cc: Likewise.
201         * src/float/ffloat/misc/cl_FF_idecode.cc: Likewise.
202         * src/float/ffloat/misc/cl_FF_precision.cc: Likewise.
203         * src/float/ffloat/misc/cl_FF_sign.cc: Likewise.
204         * src/float/ffloat/misc/cl_FF_signum.cc: Likewise.
205         * src/float/lfloat/division/cl_LF_fceil.cc: Likewise.
206         * src/float/lfloat/elem/cl_LF_compare.cc: Likewise.
207         * src/float/lfloat/elem/cl_LF_ffloor.cc: Likewise.
208         * src/float/lfloat/elem/cl_LF_minusp.cc: Likewise.
209         * src/float/lfloat/elem/cl_LF_plusp.cc: Likewise.
210         * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
211         * src/float/lfloat/elem/cl_LF_zerop.cc: Likewise.
212         * src/float/lfloat/misc/cl_LF_abs.cc: Likewise.
213         * src/float/lfloat/misc/cl_LF_digits.cc: Likewise.
214         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: Likewise.
215         * src/float/lfloat/misc/cl_LF_exponent.cc: Likewise.
216         * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
217         * src/float/lfloat/misc/cl_LF_precision.cc: Likewise.
218         * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
219         * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
220         * src/float/lfloat/misc/cl_LF_sign.cc: Likewise.
221         * src/float/lfloat/misc/cl_LF_signum.cc: Likewise.
222         * src/float/misc/cl_F_abs.cc: Likewise.
223         * src/float/misc/cl_F_digits.cc: Likewise.
224         * src/float/misc/cl_F_eqhashcode.cc: Likewise.
225         * src/float/misc/cl_F_exponent.cc: Likewise.
226         * src/float/misc/cl_F_idecode.cc: Likewise.
227         * src/float/misc/cl_F_precision.cc: Likewise.
228         * src/float/misc/cl_F_sign.cc: Likewise.
229         * src/float/misc/cl_F_signum.cc: Likewise.
230         * src/float/sfloat/division/cl_SF_fceil.cc: Likewise.
231         * src/float/sfloat/division/cl_SF_ffloor.cc: Likewise.
232         * src/float/sfloat/elem/cl_SF_compare.cc: Likewise.
233         * src/float/sfloat/elem/cl_SF_minus.cc: Likewise.
234         * src/float/sfloat/elem/cl_SF_minusp.cc: Likewise.
235         * src/float/sfloat/elem/cl_SF_plusp.cc: Likewise.
236         * src/float/sfloat/elem/cl_SF_uminus.cc: Likewise.
237         * src/float/sfloat/elem/cl_SF_zerop.cc: Likewise.
238         * src/float/sfloat/misc/cl_SF_abs.cc: Likewise.
239         * src/float/sfloat/misc/cl_SF_digits.cc: Likewise.
240         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: Likewise.
241         * src/float/sfloat/misc/cl_SF_exponent.cc: Likewise.
242         * src/float/sfloat/misc/cl_SF_idecode.cc: Likewise.
243         * src/float/sfloat/misc/cl_SF_precision.cc: Likewise.
244         * src/float/sfloat/misc/cl_SF_sign.cc: Likewise.
245         * src/float/sfloat/misc/cl_SF_signum.cc: Likewise.
246         * src/float/transcendental/cl_F_atanhx.cc: Likewise.
247         * src/float/transcendental/cl_F_atanx.cc: Likewise.
248         * src/float/transcendental/cl_F_exp.cc: Likewise.
249         * src/float/transcendental/cl_F_expx.cc: Likewise.
250         * src/float/transcendental/cl_F_lnx.cc: Likewise.
251         * src/float/transcendental/cl_F_sinhx.cc: Likewise.
252         * src/float/transcendental/cl_F_sinx.cc: Likewise.
253         * src/float/transcendental/cl_F_tan.cc: Likewise.
254         * src/float/transcendental/cl_F_tanh.cc: Likewise.
255         * src/integer/conv/cl_I_from_DS.cc: Likewise.
256         * src/integer/conv/cl_I_from_NDS.cc: Likewise.
257         * src/integer/conv/cl_I_from_NUDS.cc: Likewise.
258         * src/integer/conv/cl_I_from_UDS.cc: Likewise.
259         * src/integer/misc/cl_I_eqhashcode.cc: Likewise.
260         * src/integer/misc/cl_I_signum.cc: Likewise.
261         * src/integer/ring/cl_I_ring.cc: Likewise.
262         * src/rational/elem/cl_RA_minusp.cc: Likewise.
263         * src/rational/misc/cl_RA_eqhashcode.cc: Likewise.
264         * src/rational/misc/cl_RA_signum.cc: Likewise.
265         * src/rational/ring/cl_RA_ring.cc: Likewise.
266         * src/real/algebraic/cl_RA_sqrt.cc: Likewise.
267         * src/real/algebraic/cl_R_sqrt.cc: Likewise.
268         * src/real/conv/cl_F_from_R_def.cc: Likewise.
269         * src/real/elem/cl_R_minusp.cc: Likewise.
270         * src/real/elem/cl_R_zerop.cc: Likewise.
271         * src/real/misc/cl_R_eqhashcode.cc: Likewise.
272         * src/real/misc/cl_R_signum.cc: Likewise.
273         * src/real/transcendental/cl_R_tan.cc: Likewise.
274         * src/real/transcendental/cl_R_tanh.cc: Likewise.
275         * src/base/string/cl_st_make0.cc: Remove obsolete MAYBE_INLINE.
276         * src/rational/misc/Makeflags: Help compiler include cl_I_eqhashcode.cc.
277
278 2008-01-15  Bruno Haible  <bruno@clisp.org>
279
280         * doc/cln.texi: Renamed from doc/cln.tex. Add @node lines and @menu
281         lists.
282         * doc/addnodes.el: Remove file.
283         * doc/Makefile.in (${PACKAGE}.texi): Remove rule.
284         (EMACS): Remove variable.
285         (maintainer-clean): Don't remove ${PACKAGE}.texi.
286         Reported by Alexei Sheplyakov <varg@theor.jinr.ru>.
287
288 2008-01-11  Richard B. Kreckel  <kreckel@ginac.de>
289
290         * include/cln/float.h (cos_sin_t, cosh_sinh_t): Add default ctor.
291
292 2008-01-11  Richard B. Kreckel  <kreckel@ginac.de>
293
294         Make some functions more memory efficient:
295         * src/float/transcendental/cl_LF_tran.h (eval_rational_series): The
296         evaluation of streamed rational series may profit from shift-counting Q,
297         too. Introduce a template parameter to determine whether shift-counting
298         is to be used or not.
299         * src/float/transcendental/cl_LF_ratseries_pqb.cc: Introduce template
300         parameter.
301         * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
302         * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
303         * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
304         * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
305         * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise, added
306         overload for streamed expansion.
307         * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
308         * src/float/transcendental/cl_LF_ratseries_pq.cc: Introduce template
309         parameter, added overload for streamed expansion using shift-counts.
310         * src/float/transcendental/cl_LF_zeta3.cc: Adapt to above changes.
311         * src/float/transcendental/cl_LF_pi.cc: Likewise.
312         * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
313         * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
314         * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
315         * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
316         * src/float/transcendental/cl_LF_atanh_recip.cc: Use streamed series.
317         * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
318         * src/float/transcendental/cl_LF_exp1.cc: Likewise.
319         * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
320         * src/float/transcendental/cl_LF_ratseries.cc: Removed.
321
322 2008-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
323             Richard B. Kreckel  <kreckel@ginac.de>
324
325         Cater to the fact that g++ 4.3 will use a different naming for
326         the global constructor suffix in shared and static objects.
327         * m4/c++-constructors.m4 (CL_GLOBAL_CONSTRUCTORS): Add test for
328         the global constructor suffix, define CL_GLOBAL_CONSTRUCTOR_SUFFIX_PIC
329         and CL_GLOBAL_CONSTRUCTOR_SUFFIX_NOPIC appropriately.
330         * include/cln/config.h.in: Provide templates to be filled in by
331         configure.
332         * include/cln/modules.h (CL_PROVIDE, CL_REQUIRE): Use
333         CL_GLOBAL_CONSTRUCTOR_SUFFIX_PIC, CL_GLOBAL_CONSTRUCTOR_SUFFIX_NOPIC.
334
335 2007-12-19  Richard B. Kreckel  <kreckel@ginac.de>
336
337         * m4/general.m4 (CL_CANONICAL_HOST_CPU): Force host_cpu=rs6000 for
338          powerpc64 if userland is 32 bit.
339
340 2007-12-18  Richard B. Kreckel  <kreckel@ginac.de>
341
342         * autoconf/ltmain.sh: Update to libtool-1.5.24.
343         * autoconf/config.guess: Likewise.
344         * autoconf/config.sub: Likewise.
345         * m4/libtool.m4: Likewise.
346
347 2007-12-18  Richard B. Kreckel  <kreckel@ginac.de>
348
349         * src/float/transcendental/cl_F_lnx.cc: Make actuallen of type uintC.
350         * src/float/transcendental/cl_F_expx.cc: Likewise.
351         * src/float/transcendental/cl_F_sinhx.cc: Likewise.
352         * src/float/transcendental/cl_F_sinx.cc: Likewise.
353
354 2007-12-17  Richard B. Kreckel  <kreckel@ginac.de>
355
356         Silly workaround for silly bug in gmp.h:
357         * m4/gmp.m4 (CL_GMP_SET_UINTD): Swap #include <gmp.h> and <stdio.h>.
358
359 2007-12-17  Richard B. Kreckel  <kreckel@ginac.de>
360
361         * src/polynomial/elem/cl_UP_GF2.h (gf2_mul_table): define for sparc64.
362
363 2007-12-04  Richard B. Kreckel  <kreckel@ginac.de>
364
365         * include/cln/types.h ([su]intE): 64-bit exponents for MIPS and RS6000.
366
367 2007-12-03  Richard B. Kreckel  <kreckel@ginac.de>
368
369         * src/float/lfloat/cl_LF.h (cl_heap_lfloat): Change len type to uintC.
370
371 2007-11-28  Richard B. Kreckel  <kreckel@ginac.de>
372
373         * include/cln/object.h: Don't redefine cl_word_alignment on sparc64.
374         * src/base/digitseq/cl_asm_sparc64_.cc: Declare use of global
375         register %g2 as scratch register within this file.
376         Reported by Paul Irofti <bulibuta@gmail.com> and Sven Verdoolaege
377         <skimo@kotnet.org>.
378
379 2007-11-03  Richard B. Kreckel  <kreckel@ginac.de>
380
381         * src/base/digitseq/cl_asm_i386_.cc (compare_loop_up, 
382         compare_loop_down): Fix empty ranges.
383
384 2007-10-12  Richard B. Kreckel  <kreckel@ginac.de>
385
386         Fix compilation on CYGWIN:
387         * src/float/transcendental/cl_LF_zeta_int.cc: Avoid leading underscores
388         in variable names.
389         * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
390         Reported by Chris Bouchard <cbouchrd@uiuc.edu>.
391
392 2007-10-10  Richard B. Kreckel  <kreckel@ginac.de>
393
394         * src/base/cl_low.h: Add missing linefeeds in SPARC 64 inline assembler.
395         * src/base/low/cl_low_div.cc (divu_6464_6464_): Fix a copy-paste typo.
396         Reported by Sven Verdoolaege <skimo@kotnet.org>.
397
398 2007-10-02  Richard B. Kreckel  <kreckel@ginac.de>
399
400         On popular demand (Debian bug #286266, Ubuntu bug #128851):
401         * examples/pi.cc: Output no more than requested number of digits.
402
403 2007-10-01  Richard B. Kreckel  <kreckel@ginac.de>
404
405         * autoconf/config.guess, autoconf/config.sub: updated from automake-1.9.
406
407 2007-09-19  Richard B. Kreckel  <kreckel@ginac.de>
408
409         * doc/cln.tex: Put entire document in @dircategory Mathematics.
410         * doc/Makefile.in: texi2html -split_chapter suddenly uses subdirectory.
411         * Makefile.in: Don't install non-existing cln-config* and cln.m4.
412
413 2007-09-18  Richard B. Kreckel  <kreckel@ginac.de>
414
415         * include/cln/modules.h (CL_JUMP_TO): Use a pc relative jump on m68k.
416         See <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=388000>.
417
418 2007-09-16  Richard B. Kreckel  <kreckel@ginac.de>
419
420         * */*: Convert encoding from ISO 8859-1 to UTF-8.
421
422 2007-09-13  Richard B. Kreckel  <kreckel@ginac.de>
423
424         Truncated binary splitting for even more memory efficiency:
425         * src/float/transcendental/cl_LF_tran.h: Added new overloads. See below.
426         * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Removed and
427         moved everything to...
428         * src/float/transcendental/cl_LF_ratseries_pq.cc: ...here. Added an
429         overload for truncated expansion.
430         * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Removed and
431         moved everything to...
432         * src/float/transcendental/cl_LF_ratseries_pqa.cc: ...here. Added an
433         overload for truncated expansion.
434         * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Removed and
435         moved everything to...
436         * src/float/transcendental/cl_LF_ratseries_pqb.cc: ...here. Added an
437         overload for truncated expansion.
438         * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Removed and
439         moved everything to...
440         * src/float/transcendental/cl_LF_ratseries_pqab.cc: ...here. Added an
441         overload for truncated expansion.
442         * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Added
443         overloads for streamed and truncated expansion.
444         * src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
445         * src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: Removed
446         and moved everything to...
447         * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: ...here. Added
448         an overload for truncated expansion.
449         * src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: Removed
450         and moved everything to...
451         * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: ...here. Added an
452         overload for truncated expansion.
453         * src/float/transcendental/cl_LF_pi.cc: Use truncated series.
454         * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
455         * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
456         * src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
457         * src/float/transcendental/cl_LF_zeta3.cc: Likewise.
458
459 2007-09-07  Richard B. Kreckel  <kreckel@ginac.de>
460
461         More memory efficient Euler-Mascheroni constant:
462         * src/float/transcendental/cl_LF_tran.h (cl_pqd_series_stream): New.
463         * src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: New file.
464         * src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: New 
465         file.
466         * src/float/transcendental/cl_LF_eulerconst.cc: Compute series
467         coefficients on demand, using a series stream object.
468
469 2007-08-02  Richard B. Kreckel  <kreckel@ginac.de>
470
471         * src/base/digitseq/cl_DS_div.cc (cl_recip_suitable): uintC arguments.
472
473 2007-08-01  Richard B. Kreckel  <kreckel@ginac.de>
474
475         * */*: Remove cl_boolean, cl_true, and cl_false in favor of built-in
476         C++ bool, true, and false.
477
478 2007-07-28  Richard B. Kreckel  <kreckel@ginac.de>
479
480         Remove exception hooks in favor of real C++ exceptions:
481         * include/cln/exception.h: New file...
482         * include/cln/cln.h: ...included here...
483         * include/cln/rational.h: ...and here.
484         * include/cln/abort.h: Removed.
485         * include/cln/integer.h (ash_exception, exquo_exception): Add exception
486         types.
487         * include/cln/float.h (floating_point_exception,
488         floating_point_nan_exception, floating_point_overflow_exception,
489         floating_point_underflow_exception): Likewise.
490         * include/cln/number_io.h (read_number_exception,
491         read_number_bad_syntax_exception, read_number_junk_exception,
492         read_number_eof_exception): Likewise.
493         * include/cln/object.h (CL_DEFINE_CONVERTER): Replace dynamic assertion
494         with a compile-time assertion.
495         * include/cln/GV.h: Replace nonreturning functions with exceptions.
496         * include/cln/modinteger.h: Likewise.
497         * include/cln/SV.h: Likewise.
498         * include/cln/ring.h: Likewise.
499         * include/cln/string.h: Likewise.
500         * include/cln/univpoly.h: Likewise.
501         * src/base/cl_abort.cc: Removed.
502         * src/base/cl_N_err_d0.cc: Removed.
503         * src/base/cl_d0_exception.cc: New file.
504         * src/base/cl_as_err.cc: Removed.
505         * src/base/cl_as_exception.cc: New file.
506         * src/base/cl_notreached.cc: Removed.
507         * src/base/cl_notreached_exception.cc: New file.
508         * src/base/input/cl_read_err_bad.cc: Removed.
509         * src/base/input/cl_read_bad_syntax_exception.cc: New file.
510         * src/base/input/cl_read_err_junk.cc: Removed.
511         * src/base/input/cl_read_junk_exception.cc: New file.
512         * src/base/input/cl_read_err_eof.cc: Removed.
513         * src/base/input/cl_read_eof_exception.cc: New file.
514         * src/base/cl_N.h (cl_as_error): Removed (see cln/exception.h).
515         * src/base/macros.h (NOTREACHED): Throw.
516         * src/base/cl_malloc.cc (xmalloc): Throw.
517         * src/base/digitseq/cl_2DS_div.cc: Throw.
518         * src/base/digitseq/cl_DS_div.cc: Throw.
519         * src/base/digitseq/cl_DS_mul.cc: Throw.
520         * src/base/digitseq/cl_DS_mul_fftc.h: Throw.
521         * src/base/digitseq/cl_DS_mul_fftcs.h: Throw.
522         * src/base/digitseq/cl_DS_mul_fftm.h: Throw.
523         * src/base/digitseq/cl_DS_mul_fftp.h: Throw.
524         * src/base/digitseq/cl_DS_mul_fftp3.h: Throw.
525         * src/base/digitseq/cl_DS_mul_fftp3m.h: Throw.
526         * src/base/digitseq/cl_DS_mul_fftr.h: Throw.
527         * src/base/digitseq/cl_DS_mul_nuss.h: Throw.
528         * src/base/digitseq/cl_DS_recipsqrt.cc: Throw.
529         * src/base/digitseq/cl_DS_sqrt.cc: Throw.
530         * src/base/hash/cl_hash.h: Throw.
531         * src/base/hash/cl_hash1.h: Throw.
532         * src/base/hash/cl_hash1weak.h: Throw.
533         * src/base/hash/cl_hash2.h: Throw.
534         * src/base/hash/cl_hash2weak.h: Throw.
535         * src/base/hash/cl_hashset.h: Throw.
536         * src/base/hash/cl_hashuniq.h: Throw.
537         * src/base/hash/cl_hashuniqweak.h: Throw.
538         * src/base/proplist/cl_pl_add.cc: Throw.
539         * src/base/ring/cl_no_ring.cc: Throw.
540         * src/base/string/cl_spushstring.h: Throw.
541         * src/base/symbol/cl_symbol.cc: Throw.
542         * src/integer/bitwise/cl_I_ash.h: Removed (see cln/integer.h.)
543         * src/integer/bitwise/cl_I_asherr.cc: Removed.
544         * src/integer/bitwise/cl_I_ash_exception.cc: New file.
545         * src/integer/division/cl_I_exquoerr.cc: Removed.
546         * src/integer/division/cl_I_exquo_exception.cc: New file.
547         * src/integer/cl_I.h: Throw.
548         * src/integer/division/cl_I_exquopos.cc: Throw.
549         * src/integer/bitwise/cl_I_logbitp_I.cc: Throw.
550         * src/integer/bitwise/cl_I_ash.cc: Throw.
551         * src/integer/bitwise/cl_I_ash_I.cc: Throw.
552         * src/integer/division/cl_I_exquo.cc: Throw.
553         * src/integer/gcd/cl_I_gcd_aux2.cc: Throw.
554         * src/integer/conv/cl_I_to_L.cc: Throw.
555         * src/integer/conv/cl_I_to_Q.cc: Throw.
556         * src/integer/conv/cl_I_to_UL.cc: Throw.
557         * src/integer/conv/cl_I_to_UQ.cc: Throw.
558         * src/integer/conv/cl_I_to_digits.cc: Throw.
559         * src/integer/elem/cl_I_div.cc: Throw.
560         * src/integer/algebraic/cl_I_sqrt.cc: Throw.
561         * src/integer/input/cl_I_read.cc: Throw.
562         * src/integer/input/cl_I_read_stream.cc: Throw.
563         * src/integer/misc/cl_I_as.cc: Throw.
564         * src/rational/elem/cl_RA_from_I_I_div.cc: Throw.
565         * src/rational/elem/cl_RA_recip.cc: Throw.
566         * src/rational/input/cl_RA_read.cc: Throw.
567         * src/rational/input/cl_RA_read_stream.cc: Throw.
568         * src/rational/input/cl_RA_readparsed.cc: Throw.
569         * src/rational/misc/cl_RA_as.cc: Throw.
570         * src/float/base/cl_F_err_nan.cc: Removed.
571         * src/float/base/cl_F_nan_exception.cc: New file.
572         * src/float/base/cl_F_err_un.cc: Removed.
573         * src/float/base/cl_F_underflow_exception.cc: New file.
574         * src/float/base/cl_F_err_ov.cc: Removed.
575         * src/float/base/cl_F_overflow_exception.cc: New file.
576         * src/float/cl_F.h (cl_error_floating_point_nan,
577         cl_error_floating_point_overflow, cl_error_floating_point_underflow):
578         Removed (see cln/float.h.)
579         * src/float/sfloat/cl_SF.h: Throw.
580         * src/float/sfloat/elem/cl_SF_div.cc: Throw.
581         * src/float/sfloat/elem/cl_SF_from_RA.cc: Throw.
582         * src/float/sfloat/elem/cl_SF_scale.cc: Throw.
583         * src/float/sfloat/elem/cl_SF_scale_I.cc: Throw.
584         * src/float/sfloat/misc/cl_SF_as.cc: Throw.
585         * src/float/ffloat/cl_FF.h: Throw.
586         * src/float/ffloat/conv/cl_FF_from_float.cc: Throw.
587         * src/float/ffloat/elem/cl_FF_div.cc: Throw.
588         * src/float/ffloat/elem/cl_FF_from_RA.cc: Throw.
589         * src/float/ffloat/elem/cl_FF_scale.cc: Throw.
590         * src/float/ffloat/elem/cl_FF_scale_I.cc: Throw.
591         * src/float/ffloat/misc/cl_FF_as.cc: Throw.
592         * src/float/dfloat/cl_DF.h: Throw.
593         * src/float/dfloat/conv/cl_DF_from_double.cc: Throw.
594         * src/float/dfloat/elem/cl_DF_div.cc: Throw.
595         * src/float/dfloat/elem/cl_DF_from_RA.cc: Throw.
596         * src/float/dfloat/elem/cl_DF_scale.cc: Throw.
597         * src/float/dfloat/elem/cl_DF_scale_I.cc: Throw.
598         * src/float/dfloat/misc/cl_DF_as.cc: Throw.
599         * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Throw.
600         * src/float/lfloat/elem/cl_LF_1plus.cc: Throw.
601         * src/float/lfloat/elem/cl_LF_I_div.cc: Throw.
602         * src/float/lfloat/elem/cl_LF_I_mul.cc: Throw.
603         * src/float/lfloat/elem/cl_LF_div.cc: Throw.
604         * src/float/lfloat/elem/cl_LF_from_I.cc: Throw.
605         * src/float/lfloat/elem/cl_LF_mul.cc: Throw.
606         * src/float/lfloat/elem/cl_LF_scale.cc: Throw.
607         * src/float/lfloat/elem/cl_LF_scale_I.cc: Throw.
608         * src/float/lfloat/elem/cl_LF_square.cc: Throw.
609         * src/float/lfloat/misc/cl_LF_as.cc: Throw.
610         * src/float/lfloat/misc/cl_LF_shorten.cc: Throw.
611         * src/float/lfloat/misc/cl_LF_shortenrel.cc: Throw.
612         * src/float/lfloat/misc/cl_LF_shortenwith.cc: Throw.
613         * src/float/input/cl_F_read.cc: Throw.
614         * src/float/input/cl_F_read_stream.cc: Throw.
615         * src/float/misc/cl_F_as.cc: Throw.
616         * src/float/misc/cl_F_shortenrel.cc: Throw.
617         * src/float/transcendental/cl_LF_coshsinh_aux.cc: Throw.
618         * src/float/transcendental/cl_LF_cossin_aux.cc: Throw.
619         * src/float/transcendental/cl_LF_exp_aux.cc: Throw.
620         * src/float/transcendental/cl_LF_ratseries_a.cc: Throw.
621         * src/float/transcendental/cl_LF_ratseries_ab.cc: Throw.
622         * src/float/transcendental/cl_LF_ratseries_b.cc: Throw.
623         * src/float/transcendental/cl_LF_ratseries_p.cc: Throw.
624         * src/float/transcendental/cl_LF_ratseries_pa.cc: Throw.
625         * src/float/transcendental/cl_LF_ratseries_pab.cc: Throw.
626         * src/float/transcendental/cl_LF_ratseries_pb.cc: Throw.
627         * src/float/transcendental/cl_LF_ratseries_pq.cc: Throw.
628         * src/float/transcendental/cl_LF_ratseries_pqa.cc: Throw.
629         * src/float/transcendental/cl_LF_ratseries_pqab.cc: Throw.
630         * src/float/transcendental/cl_LF_ratseries_pqb.cc: Throw.
631         * src/float/transcendental/cl_LF_ratseries_q.cc: Throw.
632         * src/float/transcendental/cl_LF_ratseries_qa.cc: Throw.
633         * src/float/transcendental/cl_LF_ratseries_qab.cc: Throw.
634         * src/float/transcendental/cl_LF_ratseries_qb.cc: Throw.
635         * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Throw.
636         * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Throw.
637         * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Throw.
638         * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Throw.
639         * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Throw.
640         * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Throw.
641         * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Throw.
642         * src/float/transcendental/cl_LF_zeta_int.cc: Throw.
643         * src/real/elem/cl_R_div.cc: Throw.
644         * src/real/format-output/cl_fmt_cardinal.cc: Throw.
645         * src/real/format-output/cl_fmt_newroman.cc: Throw.
646         * src/real/format-output/cl_fmt_oldroman.cc: Throw.
647         * src/real/input/cl_R_read.cc: Throw.
648         * src/real/input/cl_R_read_stream.cc: Throw.
649         * src/real/misc/cl_R_as.cc: Throw.
650         * src/real/random/cl_R_random.cc: Throw.
651         * src/real/transcendental/cl_R_atan2.cc: Throw.
652         * src/real/transcendental/cl_R_log.cc: Throw.
653         * src/complex/input/cl_N_read.cc: Throw.
654         * src/complex/input/cl_N_read_stream.cc: Throw.
655         * src/complex/misc/cl_N_as.cc: Throw.
656         * src/complex/transcendental/cl_C_atanh_aux.cc: Throw.
657         * src/complex/transcendental/cl_C_expt_C.cc: Throw.
658         * src/complex/transcendental/cl_C_log.cc: Throw.
659         * src/complex/transcendental/cl_C_log2.cc: Throw.
660         * src/numtheory/cl_nt_cornacchia1.cc: Throw.
661         * src/numtheory/cl_nt_cornacchia4.cc: Throw.
662         * src/numtheory/cl_nt_isprobprime.cc: Throw.
663         * src/numtheory/cl_nt_jacobi.cc: Throw.
664         * src/numtheory/cl_nt_jacobi_low.cc: Throw.
665         * src/numtheory/cl_nt_sqrtmodp.cc: Throw.
666         * src/modinteger/cl_MI.cc: Throw.
667         * src/modinteger/cl_MI_int.h: Throw.
668         * src/modinteger/cl_MI_montgom.h: Throw.
669         * src/modinteger/cl_MI_pow2.h: Throw.
670         * src/modinteger/cl_MI_rshift.cc: Throw.
671         * src/modinteger/cl_MI_std.h: Throw.
672         * src/polynomial/elem/cl_UP_GF2.h: Throw.
673         * src/polynomial/elem/cl_UP_MI.h: Throw.
674         * src/polynomial/elem/cl_UP_gen.h: Throw.
675         * src/polynomial/elem/cl_UP_named.cc: Throw.
676         * src/polynomial/elem/cl_UP_no_ring.cc (uninitialized_error, 
677         uninitialized_ring): Removed (see cln/ring.h.)
678         * src/polynomial/elem/cl_UP_number.h: Throw.
679         * src/polynomial/elem/cl_UP_unnamed.cc: Throw.
680         * src/vector/cl_GV_I.cc: Throw.
681         * src/vector/cl_GV_number.cc: Throw.
682         * tests/timediv2adic-compare.cc: Use default abort(), not cl_abort().
683         * tests/timeprint-compare.cc: Likewise.
684         * tests/timerecip2adic-compare.cc: Likewise.
685         * doc/cln.tex: Document the exception classes.
686         * examples/contfrac.cc: Use try/catch instead of setjmp/longjmp.
687         * INSTALL: undocument -fno-exceptions.
688         * README: Add exceptions to list of used C++ features.
689
690 2007-06-20  Richard B. Kreckel  <kreckel@ginac.de>
691
692         * cln.spec.in (Source0): Package is bzip2-compressed.
693         Reported by Markus Grabner <grabner@icg.tugraz.at>.
694
695 2007-05-31  Richard B. Kreckel  <kreckel@ginac.de>
696
697         * include/cln/integer.h (cl_I_to_E, cl_I_to_UE): New functions.
698         * src/float/transcendental/cl_LF_exp_aux.cc: Make lq argument an uintE.
699         * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
700         * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
701         * src/float/transcendental/cl_F_tran.h: Change declaration of lq.
702         * src/float/transcendental/cl_F_lnx.cc: Fix some exponent types.
703         * src/float/transcendental/cl_F_expx.cc: Likewise.
704         * src/float/transcendental/cl_F_sinh.cc: Likewise.
705         * src/float/transcendental/cl_F_atanx.cc: Likewise.
706         * src/float/transcendental/cl_F_coshsinh.cc: Likewise.
707         * src/float/transcendental/cl_LF_cossin.cc: Likewise.
708         * src/float/transcendental/cl_LF_coshsinh.cc: Likewise.
709
710 2007-04-09  Richard B. Kreckel  <kreckel@ginac.de>
711
712         More memory efficient constants:
713         * src/float/transcendental/cl_LF_pi.cc (compute_pi_ramanujan_163_fast):
714         Compute series coefficients on demand, using a series stream object.
715         * src/float/transcendental/cl_LF_zeta3.cc (zeta3): Likewise.
716         * src/float/transcendental/cl_LF_catalanconst.cc
717         (compute_catalanconst_ramanujan_fast): Likewise.
718         (compute_catalanconst_lupas): New function.
719         (compute_catalanconst): Simplify, based on new benchmark.
720
721 2007-04-02  Alexei Sheplyakov  <varg@theor.jinr.ru>
722
723         Debian Bug#412103:
724         * cln.pc.in: list -lgmp in Libs.private instead of in Libs.
725         * doc/cln.tex: Undocument cln-config, properly document pkg-config.
726         * cln-config.1.in: Remove.
727         * cln-config.in: Remove.
728         * cln.m4: Remove.
729         * configure.ac: Don't output cln-config and cln-config.1.
730
731 2006-12-24  Bruno Haible  <bruno@clisp.org>
732
733         Make autoconfiguration work with gcc-4.3 snapshots.
734         * autoconf/intparam.c (main1): Rename get_integer_bitsize to
735         get_unsigned_integer_bitsize. New macro get_signed_integer_bitsize.
736
737 2006-12-19  Bruno Haible  <bruno@clisp.org>
738
739         * autoconf/intparam.c (main): Use 'return', not exit().
740         * autoconf/floatparam.c (main): Likewise.
741         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
742
743 2006-12-11  Richard B. Kreckel  <kreckel@ginac.de>
744
745         Extend the exponent range from 32 bits to 64 bits on selected platforms.
746         * include/cln/number.h: Add signatures for operations with long long.
747         * include/cln/complex_class.h: Likewise.
748         * include/cln/real_class.h: Likewise.
749         * include/cln/real.h: Likewise.
750         * include/cln/rational_class.h: Likewise.
751         * include/cln/rational.h: Likewise.
752         * include/cln/integer_class.h: Likewise.
753         * include/cln/integer.h: Likewise.
754         * include/cln/float.h: Likewise.
755         * include/cln/lfloat.h: Likewise.
756         * include/cln/types.h (sintE and uintE): New types for exponents.
757         * include/cln/*float.h: Use the new types for exponents.
758         * include/cln/floatformat.h (float_format_t): Make underlying type
759         compatible with sintE.
760         * doc/cln.tex: Document changed float_exponent return value.
761         * src/float/cl_F.h: Likewise.
762         * src/float/ffloat/misc/cl_FF_exponent.cc: Likewise.
763         * src/float/input/cl_F_read.cc: Likewise.
764         * src/float/lfloat/cl_LF.h: Likewise.
765         * src/float/lfloat/cl_LF_impl.h: Likewise.
766         * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
767         * src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
768         * src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
769         * src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
770         * src/float/lfloat/elem/cl_LF_compare.cc: Likewise.
771         * src/float/lfloat/elem/cl_LF_div.cc: Likewise.
772         * src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
773         * src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
774         * src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
775         * src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
776         * src/float/lfloat/elem/cl_LF_mul.cc: Likewise.
777         * src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
778         * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
779         * src/float/lfloat/elem/cl_LF_square.cc: Likewise.
780         * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
781         * src/float/lfloat/misc/cl_LF_decode.cc: Likewise.
782         * src/float/lfloat/misc/cl_LF_exponent.cc: Likewise.
783         * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
784         * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
785         * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
786         * src/float/misc/cl_F_decode.cc: Likewise.
787         * src/float/misc/cl_F_exponent.cc: Likewise.
788         * src/float/misc/cl_F_shortenrel.cc: Likewise.
789         * src/float/misc/cl_float_format.cc: Likewise.
790         * src/float/output/cl_F_dprint.cc: Likewise.
791         * src/float/sfloat/misc/cl_SF_exponent.cc: Likewise.
792         * src/float/transcendental/cl_F_atanhx.cc: Likewise.
793         * src/float/transcendental/cl_F_atanx.cc: Likewise.
794         * src/float/transcendental/cl_F_cosh.cc: Likewise.
795         * src/float/transcendental/cl_F_expx.cc: Likewise.
796         * src/float/transcendental/cl_F_lnx.cc: Likewise.
797         * src/float/transcendental/cl_F_sinhx.cc: Likewise.
798         * src/float/transcendental/cl_F_sinx.cc: Likewise.
799         * src/float/transcendental/cl_LF_pi.cc: Likewise.
800         * src/integer/cl_I.h: Likewise.
801         * src/complex/algebraic/cl_LF_hypot.cc: Likewise.
802         * src/complex/elem/division/cl_C_LF_recip.cc: Likewise.
803         * src/float/dfloat/misc/cl_DF_exponent.cc: Likewise.
804         * src/integer/conv/cl_I_from_Q2.cc: Added.
805         * src/base/cl_low.h (isqrtC): New function, for 64 bit falls back to...
806         * src/base/low/cl_low_isqrt.cc (isqrt): ...this new implementation.
807         * src/base/cl_macros.h (bitc): Make sure 64 bit is used if required by
808         exponent operations.
809         * examples/pi.cc: Support more than 646456614 decimal digits.
810
811 2006-11-02  Richard B. Kreckel  <kreckel@ginac.de>
812
813         * src/base/digitseq/cl_DS.h: #undef DS, needed for i386-Solaris.
814
815 2006-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
816
817         * tests/Makefile.in (VPATH): Fix syntax error.
818
819 2006-09-14  Richard B. Kreckel  <kreckel@ginac.de>
820         
821         * examples/perfnum.cc: update to presumed 44th Mersenne prime.
822
823 2006-08-15  Richard B. Kreckel  <kreckel@ginac.de>
824
825         * tests/Makefile.in: MinGW support for make check
826         (Patch by Sheplyakov Alexei <varg@theor.jinr.ru> to add ${EXEEXT}).
827         * Makefile.in: Convert from $(VAR) to ${VAR} syntax.
828         * benchmarks/Makefile.in: Likewise.
829         * doc/Makefile.in: Likewise.
830         * examples/Makefile.in: Likewise.
831         * src/Makefile.in: Likewise.
832         * tests/Makefile.in: Likewise.
833
834 2006-08-06  Richard B. Kreckel  <kreckel@ginac.de>
835
836         * configure.ac: Re-enable shared lib on non-MinGW platforms, sigh.
837
838 2006-08-04  Sheplyakov Alexei  <varg@theor.jinr.ru>
839
840         * configure.ac: Disable shared lib on MinGW.
841
842 2006-08-03  Sheplyakov Alexei  <varg@theor.jinr.ru>
843
844         * m4/param.m4: Add support for MinGW.
845         * src/base/random/cl_random_from.cc: Fix for last patch.
846
847 2006-07-23  Sheplyakov Alexei  <varg@theor.jinr.ru>
848
849         * src/base/random/cl_random_from.cc: Add support for MinGW.
850
851 2006-06-13  Richard B. Kreckel  <kreckel@ginac.de>
852
853         * m4/general.m4 (CL_CANONICAL_HOST_CPU): Force host_cpu=i386 for x86_64
854         if userland is 32 bit.
855         * include/cln/config.h.in: Simplify __x86_64__ selection.
856         * src/base/digitseq/cl_asm_x86_64_.cc: Remove.
857
858 2006-06-09  Richard B. Kreckel  <kreckel@ginac.de>
859
860         * src/base/digitseq/cl_DS.h (struct DS): Change len type to uintC.
861
862 2006-05-30  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
863
864         * m4/gettimeofday.m4 (CL_GETTIMEOFDAY): Fix M4 quoting.
865
866 2006-05-20  Bruno Haible  <bruno@clisp.org>
867
868         * src/base/random/cl_random_from.cc: Treat FreeBSD, NetBSD like other
869         Unix platforms.
870
871 2006-05-07  Richard B. Kreckel  <kreckel@ginac.de>
872
873         * include/cln/modules.h (CL_JUMP_TO): Fix for Intel Mac.
874
875 2006-04-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
876
877         Prepare for autoconf-2.60.
878         * Makefile.in (datarootdir): New variable.
879         * src/Makefile.in (datarootdir): New variable.
880         * doc/Makefile.in (datarootdir): New variable.
881
882 2006-04-25  Bruno Haible  <bruno@clisp.org>
883             Richard B. Kreckel  <kreckel@ginac.de>
884
885         Make it theoretically possible to use bignums and long-floats with
886         more than 2^32 significant digits or bits.
887         * doc/cln.tex (logcount): Change return type to uintC.
888         (struct cl_byte): Change elements to uintC.
889         (integer_length, ord2, power2p): Change return type to uintC.
890         (scale_float): Change argument type to sintC.
891         (float_digits, float_precision): Change return type to uintC.
892         * examples/atan_recip.cc: Use uintC instead of uintL where appropriate.
893         * examples/atanh_recip.cc: Likewise.
894         * include/cln/GV.h: Likewise.
895         * include/cln/GV_complex.h: Likewise.
896         * include/cln/GV_integer.h: Likewise.
897         * include/cln/GV_modinteger.h: Likewise.
898         * include/cln/GV_number.h: Likewise.
899         * include/cln/GV_rational.h: Likewise.
900         * include/cln/GV_real.h: Likewise.
901         * include/cln/SV.h: Likewise.
902         * include/cln/SV_complex.h: Likewise.
903         * include/cln/SV_integer.h: Likewise.
904         * include/cln/SV_number.h: Likewise.
905         * include/cln/SV_rational.h: Likewise.
906         * include/cln/SV_real.h: Likewise.
907         * include/cln/SV_ringelt.h: Likewise.
908         * include/cln/dfloat.h: Likewise.
909         * include/cln/ffloat.h: Likewise.
910         * include/cln/float.h: Likewise.
911         * include/cln/integer.h: Likewise.
912         * include/cln/lfloat.h: Likewise.
913         * include/cln/modinteger.h: Likewise.
914         * include/cln/sfloat.h: Likewise.
915         * src/base/cl_low.h (integerlengthC): New macro.
916         * src/base/digitseq/cl_2DS_div.cc: Use uintC instead of uintL where
917         appropriate.
918         * src/base/digitseq/cl_2DS_recip.cc: Likewise.
919         * src/base/digitseq/cl_DS.h: Likewise.
920         * src/base/digitseq/cl_DS_mul.c: Likewise.
921         * src/base/digitseq/cl_DS_mul_fftc.h: Likewise.
922         * src/base/digitseq/cl_DS_mul_fftcs.h: Likewise.
923         * src/base/digitseq/cl_DS_mul_fftm.h: Likewise.
924         * src/base/digitseq/cl_DS_mul_fftp.h: Likewise.
925         * src/base/digitseq/cl_DS_mul_fftp3.h: Likewise.
926         * src/base/digitseq/cl_DS_mul_fftp3m.h: Likewise.
927         * src/base/digitseq/cl_DS_mul_fftr.h: Likewise.
928         * src/base/digitseq/cl_DS_mul_kara.h: Likewise.
929         * src/base/digitseq/cl_DS_mul_nuss.h: Likewise.
930         * src/base/digitseq/cl_DS_recip.cc: Likewise.
931         * src/base/digitseq/cl_DS_recipsqrt.cc: Likewise.
932         * src/base/digitseq/cl_DS_sqrt.cc: Likewise.
933         * src/base/digitseq/cl_DS_trandom.cc: Likewise.
934         * src/complex/input/cl_N_read.cc: Likewise.
935         * src/complex/transcendental/cl_C_asinh_aux.cc: Likewise.
936         * src/complex/transcendental/cl_C_expt_C.cc: Likewise.
937         * src/float/cl_F.h: Likewise.
938         * src/float/conv/cl_F_from_F_f.cc: Likewise.
939         * src/float/conv/cl_F_from_I_f.cc: Likewise.
940         * src/float/conv/cl_F_from_RA_f.cc: Likewise.
941         * src/float/dfloat/conv/cl_I_to_double.cc: Likewise.
942         * src/float/dfloat/conv/cl_RA_to_double.cc: Likewise.
943         * src/float/dfloat/elem/cl_DF_from_I.cc: Likewise.
944         * src/float/dfloat/elem/cl_DF_from_RA.cc: Likewise.
945         * src/float/dfloat/elem/cl_DF_scale.cc: Likewise.
946         * src/float/dfloat/misc/cl_DF_digits.cc: Likewise.
947         * src/float/dfloat/misc/cl_DF_precision.cc: Likewise.
948         * src/float/elem/cl_F_scale.cc: Likewise.
949         * src/float/ffloat/conv/cl_I_to_float.cc: Likewise.
950         * src/float/ffloat/conv/cl_RA_to_float.cc: Likewise.
951         * src/float/ffloat/elem/cl_FF_from_I.cc: Likewise.
952         * src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
953         * src/float/ffloat/elem/cl_FF_scale.cc: Likewise.
954         * src/float/ffloat/misc/cl_FF_digits.cc: Likewise.
955         * src/float/ffloat/misc/cl_FF_precision.cc: Likewise.
956         * src/float/input/cl_F_read.cc: Likewise.
957         * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
958         * src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
959         * src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
960         * src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
961         * src/float/lfloat/elem/cl_LF_div.cc: Likewise.
962         * src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
963         * src/float/lfloat/elem/cl_LF_from_RA.cc: Likewise.
964         * src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
965         * src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
966         * src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
967         * src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
968         * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
969         * src/float/lfloat/misc/cl_LF_digits.cc: Likewise.
970         * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
971         * src/float/lfloat/misc/cl_LF_leninc.cc: Likewise.
972         * src/float/lfloat/misc/cl_LF_lenincx.cc: Likewise.
973         * src/float/lfloat/misc/cl_LF_precision.cc: Likewise.
974         * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
975         * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
976         * src/float/misc/cl_F_digits.cc: Likewise.
977         * src/float/misc/cl_F_epsneg.cc: Likewise.
978         * src/float/misc/cl_F_epspos.cc: Likewise.
979         * src/float/misc/cl_F_leastneg.cc: Likewise.
980         * src/float/misc/cl_F_leastpos.cc: Likewise.
981         * src/float/misc/cl_F_mostneg.cc: Likewise.
982         * src/float/misc/cl_F_mostpos.cc: Likewise.
983         * src/float/misc/cl_F_precision.cc: Likewise.
984         * src/float/misc/cl_F_rational.cc: Likewise.
985         * src/float/misc/cl_F_shortenrel.cc: Likewise.
986         * src/float/output/cl_F_dprint.cc: Likewise.
987         * src/float/random/cl_F_random.cc: Likewise.
988         * src/float/sfloat/elem/cl_SF_from_I.cc: Likewise.
989         * src/float/sfloat/elem/cl_SF_from_RA.cc: Likewise.
990         * src/float/sfloat/elem/cl_SF_scale.cc: Likewise.
991         * src/float/sfloat/misc/cl_SF_digits.cc: Likewise.
992         * src/float/sfloat/misc/cl_SF_precision.cc: Likewise.
993         * src/float/transcendental/cl_F_atanhx.cc: Likewise.
994         * src/float/transcendental/cl_F_atanx.cc: Likewise.
995         * src/float/transcendental/cl_F_catalanconst_f.cc: Likewise.
996         * src/float/transcendental/cl_F_cos.cc: Likewise.
997         * src/float/transcendental/cl_F_cosh.cc: Likewise.
998         * src/float/transcendental/cl_F_coshsinh.cc: Likewise.
999         * src/float/transcendental/cl_F_cossin.cc: Likewise.
1000         * src/float/transcendental/cl_F_eulerconst_f.cc: Likewise.
1001         * src/float/transcendental/cl_F_exp1_f.cc: Likewise.
1002         * src/float/transcendental/cl_F_expx.cc: Likewise.
1003         * src/float/transcendental/cl_F_ln10_f.cc: Likewise.
1004         * src/float/transcendental/cl_F_ln2_f.cc: Likewise.
1005         * src/float/transcendental/cl_F_lnx.cc: Likewise.
1006         * src/float/transcendental/cl_F_pi_f.cc: Likewise.
1007         * src/float/transcendental/cl_F_sin.cc: Likewise.
1008         * src/float/transcendental/cl_F_sinh.cc: Likewise.
1009         * src/float/transcendental/cl_F_sinhx.cc: Likewise.
1010         * src/float/transcendental/cl_F_sinx.cc: Likewise.
1011         * src/float/transcendental/cl_F_tran.h: Likewise.
1012         * src/float/transcendental/cl_F_zeta_int_f.cc: Likewise.
1013         * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
1014         * src/float/transcendental/cl_LF_atanh_recip.cc: Likewise.
1015         * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
1016         * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
1017         * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
1018         * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
1019         * src/float/transcendental/cl_LF_exp1.cc: Likewise.
1020         * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
1021         * src/float/transcendental/cl_LF_pi.cc: Likewise.
1022         * src/float/transcendental/cl_LF_ratseries.cc: Likewise.
1023         * src/float/transcendental/cl_LF_ratseries_.cc: Likewise.
1024         * src/float/transcendental/cl_LF_ratseries_a.cc: Likewise.
1025         * src/float/transcendental/cl_LF_ratseries_ab.cc: Likewise.
1026         * src/float/transcendental/cl_LF_ratseries_b.cc: Likewise.
1027         * src/float/transcendental/cl_LF_ratseries_p.cc: Likewise.
1028         * src/float/transcendental/cl_LF_ratseries_pa.cc: Likewise.
1029         * src/float/transcendental/cl_LF_ratseries_pab.cc: Likewise.
1030         * src/float/transcendental/cl_LF_ratseries_pb.cc: Likewise.
1031         * src/float/transcendental/cl_LF_ratseries_pq.cc: Likewise.
1032         * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
1033         * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
1034         * src/float/transcendental/cl_LF_ratseries_pqb.cc: Likewise.
1035         * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise.
1036         * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
1037         * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
1038         * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
1039         * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Likewise.
1040         * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Likewise.
1041         * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Likewise.
1042         * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Likewise.
1043         * src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
1044         * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Likewise.
1045         * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Likewise.
1046         * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Likewise.
1047         * src/float/transcendental/cl_LF_tran.h: Likewise.
1048         * src/float/transcendental/cl_LF_zeta3.cc: Likewise.
1049         * src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
1050         * src/integer/algebraic/cl_I_rootp_I.cc: Likewise.
1051         * src/integer/algebraic/cl_I_rootp_aux.cc: Likewise.
1052         * src/integer/bitwise/cl_I_ash.cc: Likewise.
1053         * src/integer/bitwise/cl_I_ash_I.cc: Likewise.
1054         * src/integer/bitwise/cl_I_byte.h: Likewise.
1055         * src/integer/bitwise/cl_I_fullbyte.cc: Likewise.
1056         * src/integer/bitwise/cl_I_ilength.cc: Likewise.
1057         * src/integer/bitwise/cl_I_ldb.cc: Likewise.
1058         * src/integer/bitwise/cl_I_ldbtest.cc: Likewise.
1059         * src/integer/bitwise/cl_I_ldbx.cc: Likewise.
1060         * src/integer/bitwise/cl_I_ldbxtest.cc: Likewise.
1061         * src/integer/bitwise/cl_I_logbitp.cc: Likewise.
1062         * src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
1063         * src/integer/bitwise/cl_I_logcount.cc: Likewise.
1064         * src/integer/bitwise/cl_I_mkf.cc: Likewise.
1065         * src/integer/bitwise/cl_I_mkfx.cc: Likewise.
1066         * src/integer/cl_I.h: Likewise.
1067         * src/integer/conv/cl_I_to_digits.cc: Likewise.
1068         * src/integer/conv/cl_I_digits_need.cc: Likewise.
1069         * src/integer/conv/cl_I_from_digits.cc: Likewise.
1070         * src/integer/gcd/cl_I_gcd.cc: Likewise.
1071         * src/integer/gcd/cl_I_xgcd.cc: Likewise.
1072         * src/integer/misc/cl_I_eqhashcode.cc: Likewise.
1073         * src/integer/misc/cl_I_ord2.cc: Likewise.
1074         * src/integer/misc/cl_I_power2p.cc: Likewise.
1075         * src/integer/output/cl_I_cached_power.h (cached_power_table): allow
1076         for 40 elements.
1077         * src/integer/output/cl_I_decstring.cc: Use uintC instead of uintL
1078         where appropriate.
1079         * src/integer/output/cl_I_print.cc: Likewise.
1080         * src/integer/output/cl_I_print_string.cc: Likewise.
1081         * src/modinteger/cl_MI.cc: Likewise.
1082         * src/modinteger/cl_MI_lshift.cc: Likewise.
1083         * src/modinteger/cl_MI_montgom.h: Likewise.
1084         * src/modinteger/cl_MI_pow2.h: Likewise.
1085         * src/modinteger/cl_MI_pow2m1.h: Likewise.
1086         * src/modinteger/cl_MI_pow2p1.h: Likewise.
1087         * src/modinteger/cl_MI_rshift.cc: Likewise.
1088         * src/modinteger/cl_MI_std.h: Likewise.
1089         * src/numtheory/cl_IF_millerrabin.cc: Likewise.
1090         * src/numtheory/cl_nt_isprobprime.cc: Likewise.
1091         * src/numtheory/cl_nt_sqrtmodp.cc: Likewise.
1092         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1093         * src/real/conv/cl_F_from_R_f.cc: Likewise.
1094         * src/real/format-output/cl_fmt_floatstring.cc: Likewise.
1095         * src/real/input/cl_R_read.cc: Likewise.
1096         * src/vector/cl_GV_I.cc: Likewise.
1097         * src/vector/cl_GV_I_copy.cc: Likewise.
1098         * src/vector/cl_GV_number.cc: Likewise.
1099         * src/vector/cl_GV_number_copy.cc: Likewise.
1100         * src/vector/cl_SV_copy.cc: Likewise.
1101         * src/vector/cl_SV_number.cc: Likewise.
1102         * src/vector/cl_SV_ringelt.cc: Likewise.
1103         * tests/main.cc: Likewise.
1104         * tests/test_I_ilength.cc: Likewise.
1105         * tests/test_I_ord2.cc: Likewise.
1106
1107 2006-04-19  Bruno Haible  <bruno@clisp.org>
1108
1109         Prepare for autoconf-2.60.
1110         * general.m4 (CL_CC_WORKS): Include <stdlib.h>, for exit() declaration.
1111         * longdouble.m4 (CL_LONGDOUBLE): Likewise.
1112         * longlong.m4 (CL_LONGLONG): Likewise.
1113         * times.m4 (CL_TIMES_CLOCK): Likewise.
1114         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1115
1116 2005-12-04  Bruno Haible  <bruno@clisp.org>
1117
1118         * src/integer/conv/cl_I_to_digits.cc (I_to_digits_noshrink): Set
1119         erg->len at the end.
1120
1121 2005-12-04  Bruno Haible  <bruno@clisp.org>
1122
1123         Extend the fixnum range from 32 bits to 61 bits on 64-bit platforms.
1124         * doc/cln.tex (gcd, jacobi): Take 'long' instead of 'int32' arguments.
1125         * include/cln/object.h (cl_value_shift): Define as 3, not 32, in the
1126         64-bit case.
1127         * include/cln/types.h (intVsize): New macro.
1128         (sintV, uintV): New types.
1129         * include/cln/integer.h (gcd): Take uintV arguments.
1130         * include/cln/numtheory.h (jacobi): Take sintV arguments.
1131         * src/complex/input/cl_N_read.cc (read_complex): Call FN_to_UV instead
1132         of FN_to_UL.
1133         * src/complex/transcendental/cl_C_expt_C.cc: Likewise.
1134         * src/float/dfloat/elem/cl_DF_scale_I.cc: Use uintV instead of uintL
1135         * src/float/dfloat/elem/cl_DF_from_RA.cc: Don't assume values >= 2^53
1136         and < 2^55 are always bignums.
1137         where appropriate.
1138         * src/float/ffloat/conv/cl_RA_to_float.cc: Call FN_to_UV instead of
1139         FN_to_UL.
1140         * src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
1141         * src/float/ffloat/elem/cl_FF_scale_I.cc: Call FN_to_V instead of
1142         FN_to_L.
1143         * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
1144         * src/float/output/cl_F_dprint.cc: Likewise.
1145         * src/float/sfloat/elem/cl_SF_from_RA.cc: Call FN_to_UV instead of
1146         FN_to_UL.
1147         * src/float/sfloat/elem/cl_SF_scale_I.cc: Call FN_to_V instead of
1148         FN_to_L.
1149         * src/integer/cl_I.h (FN_to_UV): Renamed from FN_to_UL, change return
1150         type.
1151         (FN_to_V): Renamed from FN_to_L, change return type.
1152         (FN_V_zerop): Renamed from FN_L_zerop.
1153         (FN_V_minusp): Renamed from FN_L_minusp.
1154         (cl_I_constructor_from_L2, cl_I_constructor_from_UL2): Define as an
1155         inline function on 64-bit platforms.
1156         (V_to_I, UV_to_I): New macros.
1157         (pFN_maxlength_digits_at): Return an uintV instead of an uint32.
1158         (set_pFN_maxlength_digits_at): Take an uintV instead of an uint32.
1159         * src/integer/algebraic/cl_I_sqrtp.cc: Call FN_to_UV instead of
1160         FN_to_UL.
1161         * src/integer/bitwise/cl_I_ash_I.cc: Call FN_to_V instead of FN_to_L.
1162         * src/integer/bitwise/cl_I_ilength.cc: Likewise.
1163         * src/integer/bitwise/cl_I_log_aux.cc: Likewise.
1164         * src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
1165         * src/integer/bitwise/cl_I_logcount.cc: Likewise.
1166         * src/integer/bitwise/cl_I_logtest.cc: Likewise.
1167         * src/integer/conv/cl_I_from_L2.cc: Don't produce code on 64-bit
1168         platforms.
1169         * src/integer/conv/cl_I_from_UL2.cc: Likewise.
1170         * src/integer/conv/cl_I_from_NDS.cc: Update.
1171         * src/integer/conv/cl_I_from_Q.cc: Remove cast to sint32.
1172         * src/integer/conv/cl_I_from_UQ.cc: Remove cast to uint32.
1173         * src/integer/conv/cl_I_to_L.cc: Check again fixnum that needs more
1174         than 32 bits.
1175         * src/integer/conv/cl_I_to_Q.cc: Call FN_to_V instead of FN_to_L.
1176         * src/integer/conv/cl_I_to_UL.cc: Likewise.
1177         * src/integer/conv/cl_I_to_UQ.cc: Likewise.
1178         * src/integer/elem/cl_I_div.cc: Treat fixnums that need more than 32
1179         bits like bignums.
1180         * src/integer/elem/cl_I_minus.cc: Call FN_to_V instead of FN_to_L.
1181         * src/integer/elem/cl_I_mul.cc: Likewise.
1182         * src/integer/elem/cl_I_plus.cc: Likewise.
1183         * src/integer/elem/cl_I_square.cc: Likewise.
1184         * src/integer/elem/cl_I_uminus.cc: Likewise.
1185         * src/integer/gcd/cl_I_gcd.cc: Likewise.
1186         * src/integer/gcd/cl_low_gcd.cc (gcd): Take uintV arguments.
1187         * src/integer/hash/cl_I_hashcode.cc: Call FN_to_V instead of FN_to_L.
1188         * src/integer/input/cl_I_read.cc (read_integer): Call FN_to_UV instead
1189         of FN_to_UL.
1190         * src/integer/misc/cl_I_ord2.cc (ord2): Call ord2_64 on 64-bit
1191         platforms.
1192         * src/integer/misc/cl_I_power2p.cc: Call FN_to_UV instead of FN_to_UL.
1193         * src/integer/misc/combin/cl_I_doublefactorial.cc (doublefakul_table):
1194         Extend table for larger fixnums.
1195         (doublefactorial): Update.
1196         * src/integer/misc/combin/cl_I_factorial.cc (fakul_table): Extend table
1197         for larger fixnums.
1198         (factorial): Update.
1199         * src/modinteger/cl_MI_fix16.h: Call FN_to_UV instead of FN_to_UL.
1200         * src/modinteger/cl_MI_fix29.h: Likewise.
1201         * src/modinteger/cl_MI_fix32.h: Likewise.
1202         * src/modinteger/cl_MI_std.h: Likewise.
1203         * src/numtheory/cl_nt_cornacchia4.cc: Call FN_to_V instead of FN_to_L.
1204         * src/numtheory/cl_nt_jacobi.cc: Likewise.
1205         * src/numtheory/cl_nt_jacobi_low.cc (jacobi_aux): Take uintV arguments
1206         instead of uint32 arguments.
1207         (jacobi): Take sintV argument instead of a sint32 argument.
1208         * src/rational/input/cl_RA_read.cc: Call FN_to_UV instead of FN_to_UL.
1209         * src/real/input/cl_R_read.cc: Likewise.
1210         * src/vector/cl_GV_I.cc: Likewise.
1211         * tests/timefact.cc: Call FN_to_V instead of FN_to_L.
1212
1213 2005-12-04  Bruno Haible  <bruno@clisp.org>
1214
1215         More complete 64-bit division macros.
1216         * src/base/cl_low.h (divu_6432_3232_w): Choose a different macro
1217         expansion on x86_64.
1218         (divu_6432_6432): New macro.
1219         (divu_6464_6464): Choose a different macro expansion for all CPUs
1220         except sparc64 and x86_64.
1221         (divu_12864_6464): Define NEED_VAR_divu_64_rest here.
1222         * src/base/low/cl_low_div.cc (divu_64_rest): Avoid defining it twice.
1223         (divu_6464_6464_): New function.
1224
1225 2005-12-04  Bruno Haible  <bruno@clisp.org>
1226
1227         * src/base/cl_low.h (ord2_64): New macro.
1228
1229 2005-12-02  Bruno Haible  <bruno@clisp.org>
1230
1231         * src/base/cl_low.h (mulu64) [x86_64]: Change asm restriction, since
1232         mulq doesn't accept immediate arguments.
1233
1234 2005-11-26  Bruno Haible  <bruno@clisp.org>
1235
1236         * src/base/cl_low.h (GENERIC_INTEGERLENGTH32): New macro.
1237         (integerlength64): Define using integerlength32 if integerlength32
1238         is not defined generically.
1239
1240 2005-11-26  Bruno Haible  <bruno@clisp.org>
1241
1242         * src/base/cl_low.h (mulu32) [SPARC64]: Remove rd instruction, since
1243         umul returns the complete 64-bit product in a register.
1244         (mulu32_w) [SPARC64]: Prefer umul over mulx instruction.
1245         (divu_6432_3232_w) [SPARC64]: Prefer umul/udiv over mulx/udivx
1246         instructions.
1247
1248 2005-11-26  Bruno Haible  <bruno@clisp.org>
1249
1250         * src/base/cl_low.h (divu_3216_1616): Prepend underscore to local
1251         variables.
1252
1253 2005-11-26  Bruno Haible  <bruno@clisp.org>
1254
1255         * src/base/cl_low.h (ord2_32): Parenthesize macro argument.
1256
1257 2005-12-17  Richard B. Kreckel  <kreckel@ginac.de>
1258
1259         * Created branch cln_1-1 for maintenance patches.
1260         This is the main branch, which will eventually become CLN 1.2.0.
1261
1262 2005-12-15  Dmitry V. Kustov  <kustov@telex221.ru>
1263
1264         * src/base/random/cl_random_from.cc: Add support for OpenBSD.
1265
1266 2005-11-23  Richard B. Kreckel  <kreckel@ginac.de>
1267
1268         * Version 1.1.11 released.
1269
1270 2005-11-20  Richard B. Kreckel  <kreckel@ginac.de>
1271
1272         * src/integer/conv/cl_I_cached_power.h: New file.
1273         * src/integer/conv/cl_I_cached_power.cc: New file.
1274         Contains power_table and cached_power_table previously...
1275         * src/integer/conv/cl_I_to_digits.cc: ...here.
1276         * src/integer/conv/cl_I_from_digits.cc: Use cached powers.
1277
1278 2005-11-02  Richard B. Kreckel  <kreckel@ginac.de>
1279
1280         * src/integer/conv/cl_I_from_digits.cc: Made input of all numbers in
1281         non-power-of-two base much faster.
1282         * tests/test_I_io.cc: New file...
1283         * tests/Makefile.in, tests/test_I.cc: ...used here.
1284
1285 2005-10-22  Richard B. Kreckel  <kreckel@ginac.de>
1286
1287         * Version 1.1.10 released.
1288
1289 2005-10-22  Richard B. Kreckel  <kreckel@ginac.de>
1290
1291         * src/Makefile.in: Accept CPPFLAGS from environment.
1292         * examples/Makefile.in: Likewise.
1293         * benchmarks/Makefile.in: Likewise.
1294         * tests/Makefile.in: Likewise.
1295
1296 2005-08-30  Richard B. Kreckel  <kreckel@ginac.de>
1297
1298         * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
1299         duplication of basic blocks on m68k.
1300
1301 2005-08-30  Richard B. Kreckel  <kreckel@ginac.de>
1302
1303         * include/cln/modules.h (CL_JUMP_TO): Fix mips* brokenness.
1304
1305 2005-08-27  Bruno Haible  <bruno@clisp.org>
1306
1307         Split aclocal.m4 into individual files.
1308         * m4/alloca.m4, m4/as-underscore.m4, m4/c++-constructors.m4:
1309         * m4/fpu_control.m4, m4/general.m4, m4/gettimeofday.m4:
1310         * m4/longdouble.m4, m4/longlong.m4, m4/param.m4, m4/perror.m4:
1311         * m4/proto.m4, m4/rusage.m4, m4/times.m4:
1312         New files, extracted from autoconf/aclocal.m4.
1313         * autoconf/aclocal.m4: m4_include them.
1314         * Makefile.devel (AUTOCONF_MACROS): New variable.
1315         (configure): Depend on it.
1316         (CLISP_M4DIR): Remove variable.
1317         (autoconf/aclocal.m4): Remove rule.
1318
1319 2005-08-27  Bruno Haible  <bruno@clisp.org>
1320
1321         * src/integer/bitwise/cl_I_ash_I.cc (ash): Avoid shifting a 32-bit
1322         zero value by more than 31 bits.
1323
1324 2005-08-27  Bruno Haible  <bruno@clisp.org>
1325
1326         Make the long-float overflow check work on 64-bit platforms.
1327         * src/float/lfloat/cl_LF.h (LF_exp_mid, LF_exp_high): Define as
1328         'unsigned int', not 'unsigned long'.
1329
1330 2005-08-27  Bruno Haible  <bruno@clisp.org>
1331
1332         * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
1333         duplication of basic blocks by g++ 4.0.
1334         See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23345>.
1335
1336 2005-08-27  Bruno Haible  <bruno@clisp.org>
1337
1338         Make it possible to cross-compile CLN.
1339         * m4/intparam.m4: New file.
1340         * m4/floatparam.m4: New file.
1341         * autoconf/aclocal.m4: Include both.
1342         (CL_MACHINE): Add an additional CROSS_MACRO parameter.
1343         * configure.ac (CL_MACHINE): When cross-compiling, use
1344         CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
1345
1346 2005-08-27  Bruno Haible  <bruno@clisp.org>
1347
1348         Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
1349         * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
1350         compiling, use the test code from gnulib.
1351
1352 2005-08-27  Bruno Haible  <bruno@clisp.org>
1353
1354         * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
1355
1356 2005-08-16  Richard B. Kreckel  <kreckel@ginac.de>
1357
1358         The patch of 2005-05-01 made it impossible to test the type of a cl_UP
1359         by comparing with &cl_class_univpoly_ring. We need an alternative:
1360         * include/cln/object.h (cl_class_flags_modint_ring): New #define...
1361         * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
1362         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1363         * src/polynomial/elem/cl_UP_MI.h: Likewise.
1364         * src/polynomial/elem/cl_UP_gen.h: Likewise.
1365         * src/polynomial/elem/cl_UP_number.h: Likewise.
1366
1367 2005-08-15  Richard B. Kreckel  <kreckel@ginac.de>
1368
1369         * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
1370         * configure.ac: ...used here for setting ASMFLAGS...
1371         * src/Makefile.in: ...which are used here.
1372
1373 2005-08-02  Andreas Jochens  <aj@andaco.de>
1374
1375         * include/cln/config.h.in: Add support for PowerPC 64 CPU.
1376         * include/cln/modules.h: Likewise.
1377         * include/cln/object.h: Likewise.
1378         * include/cln/types.h: Likewise.
1379
1380 2005-07-24  Richard B. Kreckel  <kreckel@ginac.de>
1381
1382         Make out of the box build on x86_64 system with complete 32 bit
1383         userland possible
1384         * include/cln/config.h.in: Don't #define __x86_64__ when
1385         __i386__ is defined.
1386         * src/base/digitseq/cl_asm_x86_64_.cc: New file.
1387         * doc/cln.tex: Revert workaround description introduced 2005-05-02.
1388
1389 2005-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1390
1391         * Makefile.in: Don't enter nonexisting directories.
1392
1393 2005-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1394
1395         Speed up the linking step
1396         * src/Makefile.in: Use -objectlist for linking libcln.la.
1397
1398 2005-05-15  Richard B. Kreckel  <kreckel@ginac.de>
1399
1400         * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
1401         * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
1402
1403 2005-05-02  Richard B. Kreckel  <kreckel@ginac.de>
1404
1405         * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
1406         userland.
1407
1408 2005-05-01  Richard B. Kreckel  <kreckel@ginac.de>
1409
1410         Fix crashes in find_univpoly_ring and related functions
1411         * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
1412         remove declaration of cl_class cl_class_modint_ring.
1413         * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
1414         remove declaration of cl_class_univpoly_ring.
1415         * include/cln/object.h: cl_class_flags_modint_ring: New #define...
1416         * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
1417         * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
1418         * src/modinteger/cl_MI_fix29.h: Likewise.
1419         * src/modinteger/cl_MI_fix32.h: Likewise.
1420         * src/modinteger/cl_MI_int32.h: Likewise.
1421         * src/modinteger/cl_MI_montgom.h: Likewise.
1422         * src/modinteger/cl_MI_pow2: Likewise.
1423         * src/modinteger/cl_MI_pow2m1.h: Likewise.
1424         * src/modinteger/cl_MI_pow2p1.h: Likewise.
1425         * src/modinteger/cl_MI_std.h: Likewise.
1426         * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
1427         cl_class_flags_modint_ring, not with cl_class_modint_ring.
1428         * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
1429         * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
1430         * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
1431         * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
1432         Reported by Ralf Goertz <R_Goertz@web.de>.
1433
1434 2005-04-29  Richard B. Kreckel  <kreckel@ginac.de>
1435             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1436
1437         * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
1438
1439 2005-04-24  Richard B. Kreckel  <kreckel@ginac.de>
1440
1441         Make GCC compiler flags default to -O
1442         * m4/cc.m4: New file...
1443         * configure.ac: ...used here.
1444         * autoconf/aclocal.m4: Regenerate.
1445
1446 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1447
1448         * include/cln/string.h: Declare cl_string.
1449
1450 2005-03-17  Richard B. Kreckel  <kreckel@ginac.de>
1451
1452         * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
1453         * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
1454         * autoconf/aclocal.m4: Regenerate.
1455
1456 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1457
1458         * src/Makefile.in: Use $CXX instead of $CC when linking.
1459
1460 2005-02-27  Richard B. Kreckel  <kreckel@ginac.de>
1461         
1462         * examples/perfnum.cc: update to presumed 42st Mersenne prime.
1463
1464 2004-11-28  Richard B. Kreckel  <kreckel@ginac.de>
1465
1466         Disambiguate binary operators of CLN types with float/double
1467         * include/cln/dfloat.h: Add binary operator overloads for arguments of
1468         type double.
1469         * include/cln/ffloat.h: Likewise, for arguments of type float.
1470         * include/cln/float.h: Likewise, both for arguments of types double and
1471         float.
1472         * include/cln/real.h: Likewise.
1473         Reported by Isidro Cachadiña Gutiérrez <icacha@unex.es>.
1474
1475 2004-11-03  Richard B. Kreckel  <kreckel@ginac.de>
1476
1477         * Version 1.1.9 released.
1478
1479 2004-10-28  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1480
1481         * src/Makefile.in: Let config.status set LDFLAGS.
1482
1483 2004-10-27  Peter Breitenlohner  <peb@mppmu.mpg.de>
1484
1485         * cln.pc.in: Fix typo.
1486         * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
1487         cln-config.  Allows us to do special things to binaries, like
1488         installing them with install -s.
1489         * doc/Makefile.in: add/remove the cln.info from the installed
1490         $(infodir)/dir unless this is debian install-info (code copied from
1491         what GNU automake would produce).
1492
1493 2004-10-26  Richard B. Kreckel  <kreckel@ginac.de>
1494
1495         * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
1496         that caused radix specifiers to not work when reading from a stream.
1497         * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
1498         * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
1499         * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
1500         * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
1501
1502 2004-10-25  Richard B. Kreckel  <kreckel@ginac.de>
1503
1504         * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
1505
1506 2004-10-24  Richard B. Kreckel  <kreckel@ginac.de>
1507
1508         * src/base/cl_low.h: Add mul and div macros for x86_64.
1509
1510 2004-10-23  Richard B. Kreckel  <kreckel@ginac.de>
1511
1512         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
1513         new code for base power of two.
1514
1515 2004-10-22  Richard B. Kreckel  <kreckel@ginac.de>
1516
1517         * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
1518         overwriting problem. That was the real cause for Debian bug#246319.
1519         * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
1520         for the bug fixed above.
1521
1522 2004-10-20  Richard B. Kreckel  <kreckel@ginac.de>
1523
1524         * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
1525
1526 2004-10-12  Richard B. Kreckel  <kreckel@ginac.de>
1527
1528         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
1529         the base is a power of two.
1530
1531 2004-10-05  Richard B. Kreckel  <kreckel@ginac.de>
1532
1533         * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
1534
1535 2004-09-27  Richard B. Kreckel  <kreckel@ginac.de>
1536
1537         Support for little-endian Mips, second shot
1538         * src/base/digitseq/cl_asm_mipsel_.cc: New file...
1539         * src/base/digitseq/cl_asm_cc: ...used here.
1540         * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
1541         * include/cln/object.h: Set alignment for mipsel explicitly.
1542
1543 2004-09-05  Richard B. Kreckel  <kreckel@ginac.de>
1544
1545         Support for little-endian Mips
1546         * include/cln/config.h.in: Add __mipsel__.
1547         * include/cln/modules.h: For Mips, this is endianness-agnostic.
1548         * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
1549         Mask out assembler for little-endian Mips.
1550
1551 2004-08-30  Bruno Haible  <bruno@clisp.org>
1552
1553         * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
1554         * benchmarks/timebench2.results: Add recent PowerPC G4 results.
1555
1556 2004-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1557
1558         * examples/e.cc: remove extra semicolon.
1559
1560 2004-08-25  Bruno Haible  <bruno@clisp.org>
1561
1562         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
1563         * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
1564         2004-08-22  Bruno Haible  <bruno@clisp.org>
1565           * m4/libtool.m4: Add support for Comeau C++ on Linux.
1566           Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
1567         * autoconf/aclocal.m4: Regenerate.
1568
1569 2004-08-19  Bruno Haible  <bruno@clisp.org>
1570
1571         * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
1572         converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
1573         MacOS X.
1574         Reported by Darren Bane <darren.bane@ul.ie>.
1575
1576 2004-07-01  Richard B. Kreckel  <kreckel@ginac.de>
1577
1578         * Version 1.1.8 released.
1579
1580 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1581
1582         * src/base/cl_macros.h: alloca(3) has size_t argument type.
1583
1584 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1585
1586         * include/cln/floatformat.h: Do define a type here.
1587
1588 2004-06-27  Richard B. Kreckel  <kreckel@ginac.de>
1589
1590         * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
1591
1592 2004-06-23  Bruno Haible  <bruno@clisp.org>
1593
1594         * configure.ac: Pretend ftime() is not available. Needed by
1595         CL_TIMES_CLOCK.
1596
1597 2004-06-21  Ralf Stephan  <ralf@ark.in-berlin.de>
1598
1599         * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
1600
1601 2004-06-18  Richard B. Kreckel  <kreckel@ginac.de>
1602
1603         * rational/transcendental/cl_RA_logp.cc: fix bug where base is
1604         reciprocal of an integer.
1605         Reported by Niklas Knutsson <nq@altern.org>.
1606
1607 2004-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1608
1609         * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
1610         src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
1611         Make template specializations explicit.
1612
1613 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1614
1615         * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
1616         src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
1617         src/real/input/cl_R_read.cc:  Remove unused labels.
1618
1619 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1620
1621         * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
1622         benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
1623         benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
1624         examples/atan_recip.cc, examples/atanh_recip.cc,
1625         examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
1626         examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
1627         include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
1628         include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
1629         src/base/cl_alloca.h, src/base/cl_malloc.cc,
1630         src/base/random/cl_random_from.cc,
1631         src/base/string/cl_spushstring_append.cc,
1632         src/base/string/cl_spushstring_push.cc,
1633         src/base/string/cl_st_debug.cc,
1634         src/base/string/input/cl_st_gettoken.cc,
1635         src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
1636         src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
1637         src/rational/input/cl_RA_read.cc,
1638         src/real/format-output/cl_fmt_integer.cc,
1639         src/real/format-output/cl_fmt_paddedstring.cc,
1640         src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
1641         src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
1642         tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
1643         tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
1644         tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
1645         tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
1646         tests/timeLFln-compare.cc, tests/timeLFln.cc,
1647         tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
1648         tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
1649         tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
1650         tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
1651         tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
1652         tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
1653         tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
1654         tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
1655         tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
1656         tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
1657         tests/timezeta3.cc: Change all C include headers to ISO style
1658         within C++ code.
1659
1660 2004-06-10  Richard B. Kreckel  <kreckel@ginac.de>
1661
1662         * examples/perfnum.cc: update to presumed 41st Mersenne prime.
1663
1664 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
1665
1666         * Version 1.1.7 released.
1667
1668 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
1669
1670         * examples/pi.cc and examples/pi.1: New files.
1671         * examples/Makefile.in: Build the pi executable.
1672
1673 2004-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1674
1675         * src/Makefile.in: Fix for parallel build: wait for subdir objects to
1676         be finished before creating the library.
1677
1678 2004-04-30  Richard B. Kreckel  <kreckel@ginac.de>
1679
1680         * src/integer/output/cl_I_print.cc (print_integer): workaround
1681         GCC compiler bug (cf. Debian bug#246319).
1682
1683 2004-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1684
1685         * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
1686         enabled.
1687
1688 2004-03-08  Bruno Haible  <bruno@clisp.org>
1689
1690         * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
1691         underflow condition.
1692         * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
1693         uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
1694
1695 2004-03-04  Richard B. Kreckel  <kreckel@ginac.de>
1696
1697         * Makefile.in (install): Add ${srcdir} for cln.m4.
1698         * m4/gmp.m4: quote macro names.
1699         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1700
1701 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
1702
1703         * Version 1.1.6 released.
1704
1705 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
1706
1707         * include/cln/univpoly.h, include/cln/univpoly_complex.h,
1708           include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
1709           include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
1710           src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
1711           src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
1712           src/polynomial/elem/cl_UP_number.h (ldegree): New function.
1713         * doc/cln.tex: Document `ldegree'.
1714
1715 2003-12-29  Richard B. Kreckel  <kreckel@ginac.de>
1716
1717         Rework of autoconfiscation infrastructure
1718         * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
1719         * autoconf/ltmain.sh: Update to GNU version 1.4.3.
1720         * autoconf/autoconf: Remove (from now on we assume autoconf is
1721           installed properly on the sytem).
1722         * autoconf/autoconf.m4: Likewise.
1723         * autoconf/autoconf.m4f: Likewise.
1724         * autoconf/acgeneral.m4: Likewise.
1725         * autoconf/acspecific.m4: Likewise.
1726         * autoconf/aclocal.m4: Regenerate.
1727         * autoconf/acinclude.m4: Remove (while moving the macros...)
1728         * m4/gmp.m4: New file (...to here).
1729         * Makefile.devel: Update to new scheme.
1730         * configure.ac: Likewise.
1731         * include/cln/GV_integer.h: Assume template specializations work.
1732         * include/cln/GV_modinteger.h: Likewise.
1733         * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
1734         * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
1735         * src/base/random/cl_random_from.cc: Likewise.
1736         * src/timing/cl_base_config.h.in: Likewise.
1737         * src/timing/cl_t_current.cc: Likewise.
1738
1739 2003-12-27  Richard B. Kreckel  <kreckel@ginac.de>
1740
1741         * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
1742           argument is zero.
1743         * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
1744         * src/polynomial/cl_UP_number.h (num_minus): Likewise.
1745         Reported by Munagala Ramanath <amberarrow@yahoo.com>.
1746
1747 2003-12-02  Richard B. Kreckel  <kreckel@ginac.de>
1748
1749         * examples/perfnum.cc: update to presumed 40th Mersenne prime.
1750
1751 2003-11-20  Christian Bauer  <cbauer@ginac.de>
1752
1753         Added pkg-config support
1754         * cln.pc.in: New file.
1755         * Makefile.in: Take care of cln.pc.
1756         * configure.ac: Likewise.
1757
1758 2003-08-06  Richard B. Kreckel  <kreckel@ginac.de>
1759
1760         * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
1761         Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
1762
1763 2003-08-01  Richard Kreckel  <kreckel@ginac.de>
1764
1765         More dependent base resolution issues
1766         * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()): 
1767         portable syntactic simplification.
1768         * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
1769         * src/base/hash/cl_hash1.h: Likewise for member functions.
1770         * src/base/hash/cl_hash2.h: Likewise.
1771         * src/base/hash/cl_hashuniq.h: Likewise.
1772         * src/base/hash/cl_hashuniqweak.h: Likewise.
1773         * src/base/hash/cl_hash.h: Revert explicit static member function
1774         lookup since that was GCC's fault.
1775         * src/base/hash/cl_hash2weak.h: Likewise.
1776         * src/base/hash/cl_hashuniqweak.h: Likewise.
1777
1778 2003-06-29  Richard Kreckel  <kreckel@ginac.de>
1779
1780         Dependent base resolution needed for GCC-3.4
1781         * include/cln/GV.h: Preceed inherited members with this->.
1782         * include/cln/SV.h: Likewise.
1783         * include/cln/object.h: Likewise.
1784         * src/base/hash/cl_hash1.h: Likewise.
1785         * src/base/hash/cl_hash1weak.h: Likewise.
1786         * src/base/hash/cl_hash2.h: Likewise.
1787         * src/base/hash/cl_hashuniq.h: Likewise.
1788         * src/base/hash/cl_hash.h: Make lookup of static member function 
1789         explicit.
1790         * src/base/hash/cl_hash2weak.h: Likewise.
1791         * src/base/hash/cl_hashuniqweak.h: Likewise.
1792         * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
1793
1794 2003-02-24  Bruno Haible  <bruno@clisp.org>
1795
1796         * src/base/random/cl_random_from.cc (random_state::random_state): Add
1797         support for MacOS X.
1798         * src/modinteger/cl_MI.cc: #undef _R.
1799         Reported by Erann Gat <gat@jpl.nasa.gov>.
1800
1801 2002-08-03  Joerg Arndt  <jj@suse.de>
1802
1803         * include/cln/config.h.in: Add support for x86_64 CPU.
1804         * include/cln/modules.h: Likewise.
1805         * include/cln/types.h: Likewise.
1806         * include/cln/object.h: Likewise.
1807
1808 2002-06-08  Richard Kreckel  <kreckel@ginac.de>
1809
1810         * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
1811         m68k Assembler routines.
1812         * src/base/digitseq/cl_asm_.cc: Likewise.
1813
1814 2002-05-28  Richard Kreckel  <kreckel@ginac.de>
1815
1816         * Version 1.1.5 released.
1817
1818 2002-05-27  Richard Kreckel  <kreckel@ginac.de>
1819
1820         * include/cln/modules.h (CL_CONCATENATE): New macro.
1821
1822 2002-05-10  Richard Kreckel  <kreckel@ginac.de>
1823
1824         * doc/cln.tex (Building the library): Update recommendations for 
1825         compiling on Tru64 using g++ 3.0 and 3.1.
1826         * README: Update homepage.
1827
1828 2002-05-05  Bruno Haible  <bruno@clisp.org>
1829
1830         * doc/cln.tex (Building the library): Give some recommendations for
1831         g++ 3.0 and 3.1.
1832
1833         Force link-time references despite optimizations done by g++ 2.95
1834         and newer.
1835         * include/cln/modules.h (CL_FORCE_LINK): New macro.
1836         * Use CL_FORCE_LINK.
1837         * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
1838         * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
1839         * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
1840         * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
1841         * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
1842         * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
1843         Likewise.
1844         * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
1845         Likewise.
1846         * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
1847         * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
1848         * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
1849         * include/cln/real.h (cl_R_debug_dummy): Likewise.
1850         * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
1851         * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
1852         Likewise.
1853         * include/cln/string.h (cl_string_debug_dummy): Likewise.
1854         * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
1855         * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
1856
1857         Avoid g++ 3.1 warnings.
1858         * src/base/cl_offsetof.h (offsetof): Redefine each time.
1859         * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
1860
1861         Avoid g++ 3.1 warnings.
1862         * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
1863         where needed.
1864         * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
1865         htxentry as a shortcut.
1866         * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
1867         * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
1868         * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
1869         Likewise.
1870
1871 2002-03-15  Bruno Haible  <bruno@clisp.org>
1872
1873         * cln.tex: Document problem with GNU make 3.77.
1874         Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
1875
1876 2002-02-16  Richard Kreckel  <kreckel@ginac.de>
1877
1878         * cln.m4: quote macro name.
1879           Pointed out by Roberto Bagnara.
1880
1881 2002-01-20  Richard Kreckel  <kreckel@ginac.de>
1882
1883         * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
1884           (the old one was broken on Linux/Mips.)
1885
1886 2002-01-04  Richard Kreckel  <kreckel@ginac.de>
1887
1888         * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
1889         * Version 1.1.4 released.
1890
1891 2002-01-03  Richard Kreckel  <kreckel@ginac.de>
1892
1893         * autoconf/acinclude.m4: revamp MPN-matcher.
1894         * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
1895           sync with CLisp from CVS.
1896         * autoconf/autoconf: Likewise.
1897         * autoconf/autoconf.m4f: Likewise (new file).
1898         * configure.ac: Likewise (new file, replaces configure.in).
1899         * configure.in: Likewise (deleted, replaced by configure.ac).
1900         * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
1901         * src/Makefile.in: made VPATH safe for autoconf-2.52.
1902         * include/cln/config.h.in: Add __s390__.
1903
1904 2001-12-31  Richard Kreckel  <kreckel@ginac.de>
1905
1906         * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
1907           any more since GMP4 has some C++ support in it.
1908
1909 2001-12-14  Richard Kreckel  <kreckel@ginac.de>
1910
1911         * include/cln/modules.h, include/cln/object.h: add support for
1912           s390.
1913         * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
1914           on s390, provided by Gerhard Tonn.
1915
1916 2001-11-05  Richard Kreckel  <kreckel@ginac.de>
1917
1918         * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
1919         * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
1920         * Version 1.1.3 released.
1921
1922 2001-11-04  Bruno Haible  <haible@clisp.cons.org>
1923
1924         Interoperability with gcc-3.0 -fuse-cxa-atexit.
1925         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
1926           global destructors actually exist.
1927         * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
1928           Don't hack the global destructors if there is no global destructors
1929           function.
1930
1931 2001-11-03  Richard Kreckel  <kreckel@ginac.de>
1932
1933         * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
1934           values of x, return square(x) instead of x.
1935         * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
1936
1937 2001-07-25  Richard Kreckel  <kreckel@ginac.de>
1938
1939         * Version 1.1.2 released.
1940
1941 2001-07-24  Richard Kreckel  <kreckel@ginac.de>
1942
1943         * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
1944           friend of cl_heap_hashtable<htentry>.
1945
1946 2001-07-22  Richard Kreckel  <kreckel@ginac.de>
1947
1948         * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
1949           _FPU_IEEE is really defined.
1950         * include/cln/modules.h: change assembler labels from `label' to
1951           `label:' on hppa, needed by Linux (see comment).
1952         * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
1953         * Makefile.devel: adjusted.
1954         * autoconf/aclocal.m4: regenerate.
1955         * src/base/low/cl_low_mul.cc: moved POD variables that are declared
1956           extern "C" elsewhere out of the namespace.
1957         * src/base/low/cl_low_div.cc: Likewise.
1958
1959 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
1960
1961         * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
1962         * autoconf/aclocal.m4: Upgrade to libtool-1.4.
1963         * autoconf/ltmain.sh: Likewise.
1964         * autoconf/ltconfig: Remove file.
1965         * autoconf/install-sh: New file.
1966         * configure.in: Add AC_CONFIG_AUX_DIR call.
1967
1968 2001-06-05  Richard Kreckel  <kreckel@ginac.de>
1969
1970         * tests/tests.cc: resolve namespace ambiguity about strcmp().
1971
1972 2001-05-31  Richard Kreckel  <kreckel@ginac.de>
1973
1974         * Version 1.1.1 released.
1975
1976 2001-05-28  Richard Kreckel  <kreckel@ginac.de>
1977
1978         * cln/cln.tex: documented problems with shared library on Sparc
1979           using gcc older than 2.95.3.
1980         * configure.in: Fixed typos in versioning docu.
1981
1982 2001-05-25  Bruno Haible  <haible@clisp.cons.org>
1983
1984         * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
1985           hexadecimal constants.
1986
1987 2001-05-25  Richard Kreckel  <kreckel@ginac.de>
1988
1989         * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
1990         * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
1991         * Removed LiDIA interface since that is now outdated (namespace cln)
1992           and maintained elsewhere.
1993         * Adjusted dates and final touches for 1.1.1.
1994
1995 2001-05-19  Richard Kreckel  <kreckel@ginac.de>
1996
1997         * INSTALL: Update toolchain info: no egcs, some more platforms.
1998         * doc/cln.tex: Likewise.
1999
2000 2001-05-18  Richard Kreckel  <kreckel@ginac.de>
2001
2002         * src/base/cl_low.h: prepended variables declared inside macros
2003           with underscore.  Fixes equal_hashcode() on various platforms.
2004
2005 2001-04-25  Richard Kreckel  <kreckel@ginac.de>
2006
2007         * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
2008           this definition becomes actually useful.  This is needed for 
2009           compilation on Arm until somebody fixes the assembler files for Arm.
2010         * src/base/digitseq/cl_asm.h: Likewise.
2011         * src/base/digitseq/cl_asm_.cc: Likewise.
2012         * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
2013            one can say `make CPPFLAGS=-DFOOBAR'.
2014
2015 2001-03-26  Arvid Norberg <c99ang@cs.umu.se>
2016
2017         * src/base/random/cl_random_from.cc: ported to beos.
2018
2019 2001-03-05  Richard Kreckel  <kreckel@ginac.de>
2020
2021         * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
2022
2023 2001-01-28  Richard Kreckel  <kreckel@ginac.de>
2024
2025         * include/cln/number.h (cl_as_N): Remove bogus comment.
2026
2027 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
2028
2029         * configure.in: Make build in separate builddir possible (again).
2030
2031 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
2032
2033         * include/cln/*.h: Change signatures of all classes' methods
2034           cln::cl_foo::operator new(size_t, cl_foo*) to
2035           cln::cl_foo::operator new(size_t, void*) so one can declare
2036           std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
2037           certain STL implementations (like libstdc++-v3).
2038
2039 2000-12-14  Richard Kreckel  <kreckel@ginac.de>
2040
2041         * Version 1.1 released.
2042
2043 2000-12-13  Richard Kreckel  <kreckel@ginac.de>
2044
2045         * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
2046
2047 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
2048
2049         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
2050         * include/cln/version.h.in, src/base/verion.cc: New files.
2051         * configure.in: Generate include/cln/version.h.
2052         * cln.m4: Rewrote it. Check result of cln-config without compiling.
2053           Do cross-check library version and header version information.
2054
2055 2000-12-02  Christian Bauer  <cbauer@ginac.de>
2056
2057         * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
2058         * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
2059           building.
2060
2061 2000-11-24  Richard Kreckel  <kreckel@ginac.de>
2062
2063         * */*: Removed problematic stdin, stdout and stderr definitions.  
2064           Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
2065
2066 2000-11-20  Bruno Haible
2067
2068         * cln-config.1: change title.
2069
2070 2000-11-18  Richard Kreckel  <kreckel@ginac.de>
2071
2072         * cln.m4: New file.
2073         * doc/cln.tex: Document package tools cln-config and cln.m4.
2074         * Makefile.in: Care about cln.m4.
2075
2076 2000-11-17  Richard Kreckel  <kreckel@ginac.de>
2077
2078         * cln-config.1: added manpage, as required by a couple of distros.
2079         * Makefile.in, doc/Makefile.in: target install depends on installdirs.
2080
2081 2000-11-16  Richard Kreckel  <kreckel@ginac.de>
2082
2083         * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
2084         * configure.in: ...used here.
2085         * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
2086         * include/cln/types.h: ...used here.
2087         * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
2088
2089 2000-11-13  Richard Kreckel  <kreckel@ginac.de>
2090
2091         * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
2092           in order to guard against an accidented configuration.
2093         * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of 
2094           struct power_table_entry initialized as ULL instead of as UL, if 
2095           intDsize==64 (caused misprinting on MIPS w/ GMP).
2096         * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if 
2097           HAVE_FAST_LONGLONG.
2098         * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
2099         * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival 
2100           generation of Bignum for intDsize==64 and a notreached-check at end.
2101         * autoconf/config.guess, autoconf/config.sub: updated from FSF.
2102         * include/cln/config.h.in: Prepared support for IA64.
2103         * include/cln/types.h: Likewise.
2104         * include/cln/object.h: Likewise.
2105         * include/cln/modules.h: Likewise.
2106         * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's 
2107           compiler claims __GNUC_MINOR__==9).
2108
2109 2000-11-03  Richard Kreckel  <kreckel@ginac.de>
2110
2111         * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
2112           HAVE_DD to HAVE_FAST_LONGLONG.
2113         * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
2114         * src/base/cl_low.h: actually no need to include "cln/types.h" here.
2115         * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
2116         * src/base/random/cl_UL_random.cc (random32): a is always ULL.
2117
2118 2000-11-01  Richard Kreckel  <kreckel@ginac.de>
2119
2120         * include/cln/object.h (cl_combine): define additional signatures, if
2121           HAVE_LONGLONG is defined, in order to keep the compiler happy.
2122         * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
2123         * src/base/cl_macros.h (bit): ...for this macro...
2124         * src/base/cl_macros.h (minus_bit): ...and this one.
2125         * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
2126         * src/base/cl_low.h (logcount_64): ...for this macro.
2127         * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
2128         * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
2129           that turned up when intDsize==32 and cl_word_size==64.
2130         * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
2131           to uint64 that turned up when intDsize==32 and cl_word_size==64.
2132
2133 2000-10-29  Richard Kreckel  <kreckel@ginac.de>
2134
2135         * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
2136           #undef stderr, if it's defined so cln::stderr isn't confused.
2137         * src/base/input/cl_read_globals.cc: stdin should not be extern.
2138
2139 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
2140
2141         * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
2142           to the appropiate method instead of prefixing `as_'.
2143         * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
2144         * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
2145         * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
2146         * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
2147         * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
2148         * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
2149         * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
2150         * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
2151         * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
2152
2153 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
2154
2155         * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
2156           the 0^y cases.
2157
2158 2000-08-30  Richard Kreckel  <kreckel@ginac.de>
2159
2160         * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
2161           Rearranged for a clearer distinction between macros and remaining
2162           identifiers, so Cint can parse it smoothly.
2163
2164 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
2165
2166         * include/cln/number.h, the(const cl_number& x): New template
2167           function.
2168
2169 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
2170
2171         * */*: Pushed CLN into a namespace `cln'.  While doing so, the
2172           following identifiers got their poor-man's namespace (i.e. the 
2173           prefix `cl_') stripped off:
2174           cl_catalanconst()        ->  catalanconst()
2175           cl_compare()             ->  compare()
2176           cl_cos_sin()             ->  cos_sin()
2177           cl_cos_sin_t             ->  cos_sin_t
2178           cl_cosh_sinh()           ->  cosh_sinh()
2179           cl_cosh_sinh_t           ->  cosh_sinh_t
2180           cl_decoded_dfloat        ->  decoded_dfloat
2181           cl_decoded_ffloat        ->  decoded_ffloat
2182           cl_decoded_float         ->  decoded_float
2183           cl_decoded_lfloat        ->  decoded_lfloat
2184           cl_decoded_sfloat        ->  decoded_sfloat
2185           cl_default_float_format  ->  default_float_format
2186           cl_default_print_flags   ->  default_print_flags
2187           cl_default_random_state  ->  default_random_state
2188           cl_double_approx()       ->  double_approx()
2189           cl_equal()               ->  equal()
2190           cl_equal_hashcode()      ->  equal_hashcode()
2191           cl_eulerconst()          ->  eulerconst()
2192           cl_find_modint_ring()    ->  find_modint_ring()
2193           cl_find_univpoly_ring()  ->  find_univ_poly_ring()
2194           cl_float_approx()        ->  float_approx
2195           cl_float_format()        ->  float_format()
2196           cl_float_format_t        ->  float_format_t
2197           cl_free_hook()           ->  free_hook()
2198           cl_hermite()             ->  hermite()
2199           cl_laguerre()            ->  laguerre()
2200           cl_legendre()            ->  legandre()
2201           cl_malloc_hook()         ->  malloc_hook()
2202           cl_pi()                  ->  pi()
2203           cl_tschebychev()         ->  tschebychev()
2204           cl_zeta()                ->  zeta()
2205           NB: For functions these changes includes all signatures.
2206         * include/*: moved to include/cln/*, stripped `cl_' off filenames.
2207         * cln-config.in: new file.
2208
2209 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
2210
2211         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
2212           value, not parens.
2213
2214 2000-08-18  Bruno Haible  <haible@clisp.cons.org>
2215
2216         * include/cl_univpoly_modint.h: Fix typo.
2217
2218 2000-07-13  Bruno Haible  <haible@clisp.cons.org>
2219
2220         * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
2221           used as precision marker for floats.
2222           Reported by Keith Briggs (in 1998) and Thomas Roessler.
2223         * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
2224         * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
2225         * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
2226         * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
2227
2228 2000-06-22  Bruno Haible  <haible@clisp.cons.org>
2229
2230         * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
2231         * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
2232           with N32 ABI.
2233           (cl_word_size): New macro.
2234         * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
2235           cl_word_size.
2236
2237 2000-05-31  Bruno Haible  <haible@clisp.cons.org>
2238
2239         * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
2240           From a sample that fails with gcc-2.95.2 on Sparc.
2241         * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
2242
2243 2000-05-30  Richard Kreckel  <kreckel@ginac.de>
2244
2245         * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
2246           New macros.
2247         * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
2248           CL_VERSION_PATCHLEVEL): New definitions.
2249         * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
2250           autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
2251         * src/Makefile.in, configure.in: release-variables renamed from 
2252           CLN_* to CL_*.
2253         * configure.in: default to build both shared and static library
2254           (i.e. default to the most common behaviour).
2255
2256 2000-05-29  Richard Kreckel  <kreckel@ginac.de>
2257
2258         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
2259           environment around the patch of 2000-05-23.
2260
2261 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
2262
2263         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
2264           Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
2265
2266 2000-05-27  Richard Kreckel  <kreckel@ginac.de>
2267
2268         * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
2269           src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
2270
2271 2000-05-24  Richard Kreckel  <kreckel@ginac.de>
2272
2273         * autoconf/config.*: Updated to new version from FSF
2274           (the new libtool wants this).
2275         * src/Makefile.in: added $(LDFLAGS) to link step.
2276         * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted 
2277           break-even points.
2278
2279 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
2280
2281         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
2282           host_vendor, host_os correctly if $host has more than two hyphens.
2283
2284 2000-05-19  Richard Kreckel  <kreckel@ginac.de>
2285
2286         * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
2287           better match present-day CPUs whenever GMP3 is used.
2288         * src/base/digitseq/cl_DS_div.cc: dto. 
2289         * src/TUNING: Added comment about order of tuning.
2290         * configure, configure.in: Safer GMP3-detection.
2291         * INSTALL.generic: Clarified behaviour of --with-gmp.
2292         * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
2293
2294 2000-05-04  Richard Kreckel  <kreckel@ginac.de>
2295
2296         * gmp/: removed completely.  From now on we are going to link
2297           externally against libgmp3.0 or above!
2298         * configure, configure.in, Makefile.in, */Makeflags: removed support
2299           of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
2300           setting $CPPFLAGS instead.
2301         * Makefile.in: Added libtool inter-library dependency for -lgmp and
2302           conforming interface versioning (-version-info).
2303         * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
2304           from libtool 1.3.4.
2305
2306 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
2307
2308         * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
2309           parameter passing was changed for the MIPS n32 ABI.
2310
2311 2000-01-24  Richard Kreckel  <kreckel@ginac.de>
2312
2313         * gmp/*: Replaced the complete mpn sources with the ones from
2314           Debian since they are maintained while the ones from FSF
2315           aren't and there were problems on some architectures, PowerPC
2316           in particular.  See the file gmp/README.CLN.  This way the
2317           hard links in this directory have vanished, they were causing
2318           trouble for people working in AFS.  This became necessary for
2319           Debian, because there it woudn't compile on PPC.
2320
2321 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
2322
2323         * Version 1.0.3 released.
2324
2325 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
2326
2327         * src/base/cl_macros.h (nonreturning_function): For egcs and newer
2328           use __attribute__ ((__noreturn__)) instead of the __volatile__
2329           storage class.
2330           (nonreturning): Remove macro.
2331         * include/*: Minor fixes to stop -ansi -pedantic from complaining.
2332         * include/cl_integer.h: (doublefactorial): New declaration.
2333         * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
2334
2335 1999-12-18  Bruno Haible  <haible@clisp.cons.org>
2336
2337         * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
2338           "cat", not "echo".
2339         * autoconf/ltconfig: Improve support for recent FreeBSD 3.
2340         * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
2341           'const T', to match definition in src/vector/cl_GV_number.cc.
2342           Reported by Duncan Simpson <dps@io.stargate.co.uk>.
2343         * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
2344           yield return code 1.
2345
2346 1999-09-07  Bruno Haible  <haible@clisp.cons.org>
2347
2348         * Version 1.0.2 released.
2349
2350 1999-09-06  Bruno Haible  <haible@clisp.cons.org>
2351
2352         * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
2353           boolean expression, write alternatives ending with either
2354           "return cl_true;" or "return cl_false;". This way, g++ does a
2355           better job inlining it.
2356         * src/float/cl_F.h (longfloatp): Likewise.
2357         * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
2358         * src/complex/cl_C.h (realp, complexp): Likewise.
2359
2360 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
2361
2362         * include/cl_integer.h (cl_equal_hashcode): New declaration.
2363         * include/cl_rational.h (cl_equal_hashcode): New declaration.
2364         * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
2365         * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
2366         * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
2367         * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
2368         * include/cl_float.h (cl_equal_hashcode): New declaration.
2369         * include/cl_real.h (cl_equal_hashcode): New declaration.
2370         * include/cl_complex.h (cl_equal_hashcode): New declaration.
2371         * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
2372         * src/integer/misc/cl_I_eqhashcode.cc: New file.
2373         * src/rational/misc/cl_RA_eqhashcode.cc: New file.
2374         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
2375         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
2376         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
2377         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
2378         * src/float/misc/cl_F_eqhashcode.cc: New file.
2379         * src/real/misc/cl_R_eqhashcode.cc: New file.
2380         * src/complex/misc/cl_C_eqhashcode.cc: New file.
2381         * doc/cln.tex: Document `cl_equal_hashcode'.
2382
2383 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
2384
2385         * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
2386           (cl_number_ring): New class.
2387           (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
2388           (instanceof): New function.
2389         * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
2390         * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
2391         * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
2392         * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
2393         * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
2394         * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
2395         * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
2396         * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
2397         * doc/cln.tex: Document `instanceof'.
2398
2399 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
2400
2401         * include/cl_rational.h (numerator, denominator): New declarations.
2402         * src/rational/elem/cl_RA_numerator.cc: New file.
2403         * src/rational/elem/cl_RA_denominator.cc: New file.
2404         * include/cl_integer.h (numerator, denominator): New inline functions.
2405         * doc/cln.tex: Document `numerator' and `denominator'.
2406
2407 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
2408
2409         * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
2410           in the integer case.
2411         * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
2412
2413 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
2414
2415         * include/cl_config.h.in: Support for sparc64 CPU.
2416         * include/cl_modules.h: Likewise.
2417         * include/cl_types.h: Likewise.
2418         * include/cl_object.h: Likewise.
2419         * include/cl_GV.h: Likewise.
2420         * src/Makefile.in: Likewise.
2421         * src/base/cl_alloca.h: Likewise.
2422         * src/base/cl_macros.h: Likewise.
2423         * src/base/cl_sysdep.h: Likewise.
2424         * src/base/cl_low.h: Likewise.
2425         * src/base/digitseq/cl_asm.h: Likewise.
2426         * src/base/digitseq/cl_asm_.cc: Likewise.
2427         * src/base/digitseq/cl_asm_sparc64.h: New file.
2428         * src/base/digitseq/cl_asm_sparc64_.cc: New file.
2429         * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
2430         * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
2431         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
2432         * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
2433
2434 1999-09-04  Bruno Haible  <haible@clisp.cons.org>
2435
2436         * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
2437           Use the `orn' instruction.
2438
2439 1999-08-14  Bruno Haible  <haible@clisp.cons.org>
2440
2441         Assume all platforms have <stdlib.h> and clock_t.
2442         * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
2443         * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
2444         * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
2445         * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
2446         * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
2447
2448 1999-07-18  Bruno Haible  <haible@clisp.cons.org>
2449
2450         * gmp/config.guess: Link to autoconf/config.guess.
2451           gmp/config.sub: Link to autoconf/config.sub.
2452           Needed for Win32 platforms.
2453
2454 1999-07-17  Bruno Haible  <haible@clisp.cons.org>
2455
2456         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
2457           "sparc64" according to the C compiler, not the uname result.
2458
2459 1999-06-17  Bruno Haible  <haible@clisp.cons.org>
2460
2461         * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
2462           COUNTER_LOOPS version, fortunately not used yet.
2463
2464         * include/cl_modules.h: Prepare for gcc version 3.
2465
2466 1999-06-12  Bruno Haible  <haible@clisp.cons.org>
2467
2468         * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
2469           Change the last call from I_I_to_RT to I_I_to_RA.
2470
2471 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
2472
2473         * Version 1.0.1 released.
2474
2475 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
2476
2477         * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
2478           intDsize==64.
2479
2480 1999-06-08  Bruno Haible  <haible@clisp.cons.org>
2481
2482         * autoconf/intparam.c (printf_underscored): Change argument type to
2483           `const char*'.
2484         * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
2485           (CL_PROVIDE, CL_PROVIDE_END): Use them.
2486         * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
2487         * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
2488         * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
2489           cast a cl_I to void here. Works around a bug in g++-2.95.
2490         * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
2491         * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
2492            dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
2493           in g++-2.95.
2494         * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
2495           macro.
2496         * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
2497         * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
2498            DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
2499         * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
2500           Likewise.
2501
2502 1999-06-01  Bruno Haible  <haible@clisp.cons.org>
2503
2504         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
2505           variants to alpha.
2506
2507 1999-05-29  Bruno Haible  <haible@clisp.cons.org>
2508
2509         * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
2510           OpenBSD like NetBSD.
2511         * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
2512         * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
2513           OpenBSD like NetBSD, and Linux/ELF like SVR4.
2514
2515 1999-05-16  Bruno Haible  <haible@clisp.cons.org>
2516
2517         * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
2518           syntax on AIX systems and new assembler syntax on non-AIX systems.
2519
2520 1999-05-01  Bruno Haible  <haible@clisp.cons.org>
2521
2522         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
2523           version from GNU CVS.
2524
2525 1999-04-24  Bruno Haible  <haible@clisp.cons.org>
2526
2527         * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
2528           either operand is a positive fixnum, O(1) instead of O(N).
2529         * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
2530         * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
2531           first operand.
2532
2533 1999-04-14  Bruno Haible  <haible@clisp.cons.org>
2534
2535         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
2536           ctor/dtor needs to be exported.
2537         * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
2538         * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
2539           CL_GLOBALIZE_LABEL.
2540           (CL_GLOBALIZE_LABEL): New macro.
2541           (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
2542           (CL_PROVIDE): Update.
2543
2544 1999-04-12  Bruno Haible  <haible@clisp.cons.org>
2545
2546         * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
2547           errors ("unterminated string or character constant").
2548           ($(ASMFILES_LO)): On HPPA, try with various settings of
2549           COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
2550
2551 1999-04-11  Bruno Haible  <haible@clisp.cons.org>
2552
2553         * INSTALL: Mention gmp problems on MIPS.
2554         * doc/cln.tex: Likewise.
2555
2556 1999-03-24  Mumit Khan  <khan@xraylith.wisc.edu>
2557
2558         * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
2559           the source tree.
2560         * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
2561           (CL_GLOBALIZE_ASM_LABEL): New macro.
2562           (CL_PROVIDE): Use it.
2563         * src/base/random/cl_random_from.cc: Handle WIN32.
2564         * src/timing/cl_t_current.cc: Likewise.
2565
2566 1999-03-15  Bruno Haible  <haible@clisp.cons.org>
2567
2568         * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
2569           (main8): Adapt for C++.
2570
2571 1999-03-09  Bruno Haible  <haible@clisp.cons.org>
2572
2573         * INSTALL: Mention egcs-1.1 problems on Sparc.
2574         * doc/cln.tex: Likewise.
2575
2576 1999-03-08  Bruno Haible  <haible@clisp.cons.org>
2577
2578         * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
2579           messages.
2580
2581 1999-02-25  Bruno Haible  <haible@clisp.cons.org>
2582
2583         * autoconf/aclocal.m4: In test programs, declare `int main()', not
2584           `main()'.
2585
2586         * lidia-interface/src/interfaces/integers/cln/bigint.c
2587           (bigint_to_string): Fix for negative arguments.
2588
2589         * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
2590         * src/base/cl_alloca.h: Likewise.
2591
2592         * src/base/cl_low.h: Eliminate CLISP style "# " comments.
2593         * src/base/digitseq/cl_asm_arm_.cc,
2594           src/base/digitseq/cl_asm_mips_.cc,
2595           src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
2596
2597         * src/modinteger/cl_MI_pow2.h,
2598           src/modinteger/cl_MI_pow2m1.h,
2599           src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
2600
2601 1999-01-18  Bruno Haible  <haible@clisp.cons.org>
2602
2603         * autoconf/acgeneral.m4,
2604           autoconf/acspecific.m4: Upgrade to autoconf-2.13.
2605         * autoconf/config.guess, autoconf/config.sub: Likewise.
2606         * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
2607           a macro. Use ${ac_objext}.
2608         * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
2609           conforming with CL_ALLOCA.
2610
2611 1999-01-12  Bruno Haible  <haible@clisp.cons.org>
2612
2613         * Version 1.0 released.
2614