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