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