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