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