]> www.ginac.de Git - cln.git/blob - ChangeLog
Make it possible to cross-compile CLN.
[cln.git] / ChangeLog
1 2005-08-27  Bruno Haible  <bruno@clisp.org>
2
3         Make it possible to cross-compile CLN.
4         * m4/intparam.m4: New file.
5         * m4/floatparam.m4: New file.
6         * autoconf/aclocal.m4: Include both.
7         (CL_MACHINE): Add an additional CROSS_MACRO parameter.
8         * configure.ac (CL_MACHINE): When cross-compiling, use
9         CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
10
11 2005-08-27  Bruno Haible  <bruno@clisp.org>
12
13         Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
14         * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
15         compiling, use the test code from gnulib.
16
17 2005-08-27  Bruno Haible  <bruno@clisp.org>
18
19         * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
20
21 2005-08-16  Richard B. Kreckel  <kreckel@ginac.de>
22
23         The patch of 2005-05-01 made it impossible to test the type of a cl_UP
24         by comparing with &cl_class_univpoly_ring. We need an alternative:
25         * include/cln/object.h (cl_class_flags_modint_ring): New #define...
26         * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
27         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
28         * src/polynomial/elem/cl_UP_MI.h: Likewise.
29         * src/polynomial/elem/cl_UP_gen.h: Likewise.
30         * src/polynomial/elem/cl_UP_number.h: Likewise.
31
32 2005-08-15  Richard B. Kreckel  <kreckel@ginac.de>
33
34         * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
35         * configure.ac: ...used here for setting ASMFLAGS...
36         * src/Makefile.in: ...which are used here.
37
38 2005-08-02  Andreas Jochens  <aj@andaco.de>
39
40         * include/cln/config.h.in: Add support for PowerPC 64 CPU.
41         * include/cln/modules.h: Likewise.
42         * include/cln/object.h: Likewise.
43         * include/cln/types.h: Likewise.
44
45 2005-07-24  Richard B. Kreckel  <kreckel@ginac.de>
46
47         Make out of the box build on x86_64 system with complete 32 bit
48         userland possible
49         * include/cln/config.h.in: Don't #define __x86_64__ when
50         __i386__ is defined.
51         * src/base/digitseq/cl_asm_x86_64_.cc: New file.
52         * doc/cln.tex: Revert workaround description introduced 2005-05-02.
53
54 2005-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
55
56         * Makefile.in: Don't enter nonexisting directories.
57
58 2005-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
59
60         Speed up the linking step
61         * src/Makefile.in: Use -objectlist for linking libcln.la.
62
63 2005-05-15  Richard B. Kreckel  <kreckel@ginac.de>
64
65         * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
66         * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
67
68 2005-05-02  Richard B. Kreckel  <kreckel@ginac.de>
69
70         * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
71         userland.
72
73 2005-05-01  Richard B. Kreckel  <kreckel@ginac.de>
74
75         Fix crashes in find_univpoly_ring and related functions
76         * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
77         remove declaration of cl_class cl_class_modint_ring.
78         * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
79         remove declaration of cl_class_univpoly_ring.
80         * include/cln/object.h: cl_class_flags_modint_ring: New #define...
81         * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
82         * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
83         * src/modinteger/cl_MI_fix29.h: Likewise.
84         * src/modinteger/cl_MI_fix32.h: Likewise.
85         * src/modinteger/cl_MI_int32.h: Likewise.
86         * src/modinteger/cl_MI_montgom.h: Likewise.
87         * src/modinteger/cl_MI_pow2: Likewise.
88         * src/modinteger/cl_MI_pow2m1.h: Likewise.
89         * src/modinteger/cl_MI_pow2p1.h: Likewise.
90         * src/modinteger/cl_MI_std.h: Likewise.
91         * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
92         cl_class_flags_modint_ring, not with cl_class_modint_ring.
93         * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
94         * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
95         * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
96         * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
97         Reported by Ralf Goertz <R_Goertz@web.de>.
98
99 2005-04-29  Richard B. Kreckel  <kreckel@ginac.de>
100             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
101
102         * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
103
104 2005-04-24  Richard B. Kreckel  <kreckel@ginac.de>
105
106         Make GCC compiler flags default to -O
107         * m4/cc.m4: New file...
108         * configure.ac: ...used here.
109         * autoconf/aclocal.m4: Regenerate.
110
111 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
112
113         * include/cln/string.h: Declare cl_string.
114
115 2005-03-17  Richard B. Kreckel  <kreckel@ginac.de>
116
117         * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
118         * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
119         * autoconf/aclocal.m4: Regenerate.
120
121 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
122
123         * src/Makefile.in: Use $CXX instead of $CC when linking.
124
125 2005-02-27  Richard B. Kreckel  <kreckel@ginac.de>
126         
127         * examples/perfnum.cc: update to presumed 42st Mersenne prime.
128
129 2004-11-28  Richard B. Kreckel  <kreckel@ginac.de>
130
131         Disambiguate binary operators of CLN types with float/double
132         * include/cln/dfloat.h: Add binary operator overloads for arguments of
133         type double.
134         * include/cln/ffloat.h: Likewise, for arguments of type float.
135         * include/cln/float.h: Likewise, both for arguments of types double and
136         float.
137         * include/cln/real.h: Likewise.
138         Reported by Isidro CachadiƱa GutiĆ©rrez <icacha@unex.es>.
139
140 2004-11-03  Richard B. Kreckel  <kreckel@ginac.de>
141
142         * Version 1.1.9 released.
143
144 2004-10-28  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
145
146         * src/Makefile.in: Let config.status set LDFLAGS.
147
148 2004-10-27  Peter Breitenlohner  <peb@mppmu.mpg.de>
149
150         * cln.pc.in: Fix typo.
151         * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
152         cln-config.  Allows us to do special things to binaries, like
153         installing them with install -s.
154         * doc/Makefile.in: add/remove the cln.info from the installed
155         $(infodir)/dir unless this is debian install-info (code copied from
156         what GNU automake would produce).
157
158 2004-10-26  Richard B. Kreckel  <kreckel@ginac.de>
159
160         * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
161         that caused radix specifiers to not work when reading from a stream.
162         * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
163         * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
164         * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
165         * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
166
167 2004-10-25  Richard B. Kreckel  <kreckel@ginac.de>
168
169         * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
170
171 2004-10-24  Richard B. Kreckel  <kreckel@ginac.de>
172
173         * src/base/cl_low.h: Add mul and div macros for x86_64.
174
175 2004-10-23  Richard B. Kreckel  <kreckel@ginac.de>
176
177         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
178         new code for base power of two.
179
180 2004-10-22  Richard B. Kreckel  <kreckel@ginac.de>
181
182         * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
183         overwriting problem. That was the real cause for Debian bug#246319.
184         * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
185         for the bug fixed above.
186
187 2004-10-20  Richard B. Kreckel  <kreckel@ginac.de>
188
189         * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
190
191 2004-10-12  Richard B. Kreckel  <kreckel@ginac.de>
192
193         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
194         the base is a power of two.
195
196 2004-10-05  Richard B. Kreckel  <kreckel@ginac.de>
197
198         * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
199
200 2004-09-27  Richard B. Kreckel  <kreckel@ginac.de>
201
202         Support for little-endian Mips, second shot
203         * src/base/digitseq/cl_asm_mipsel_.cc: New file...
204         * src/base/digitseq/cl_asm_cc: ...used here.
205         * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
206         * include/cln/object.h: Set alignment for mipsel explicitly.
207
208 2004-09-05  Richard B. Kreckel  <kreckel@ginac.de>
209
210         Support for little-endian Mips
211         * include/cln/config.h.in: Add __mipsel__.
212         * include/cln/modules.h: For Mips, this is endianness-agnostic.
213         * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
214         Mask out assembler for little-endian Mips.
215
216 2004-08-30  Bruno Haible  <bruno@clisp.org>
217
218         * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
219         * benchmarks/timebench2.results: Add recent PowerPC G4 results.
220
221 2004-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
222
223         * examples/e.cc: remove extra semicolon.
224
225 2004-08-25  Bruno Haible  <bruno@clisp.org>
226
227         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
228         * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
229         2004-08-22  Bruno Haible  <bruno@clisp.org>
230                 * m4/libtool.m4: Add support for Comeau C++ on Linux.
231                 Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
232         * autoconf/aclocal.m4: Regenerate.
233
234 2004-08-19  Bruno Haible  <bruno@clisp.org>
235
236         * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
237         converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
238         MacOS X.
239         Reported by Darren Bane <darren.bane@ul.ie>.
240
241 2004-07-01  Richard B. Kreckel  <kreckel@ginac.de>
242
243         * Version 1.1.8 released.
244
245 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
246
247         * src/base/cl_macros.h: alloca(3) has size_t argument type.
248
249 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
250
251         * include/cln/floatformat.h: Do define a type here.
252
253 2004-06-27  Richard B. Kreckel  <kreckel@ginac.de>
254
255         * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
256
257 2004-06-23  Bruno Haible  <bruno@clisp.org>
258
259         * configure.ac: Pretend ftime() is not available. Needed by
260         CL_TIMES_CLOCK.
261
262 2004-06-21  Ralf Stephan  <ralf@ark.in-berlin.de>
263
264         * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
265
266 2004-06-18  Richard B. Kreckel  <kreckel@ginac.de>
267
268         * rational/transcendental/cl_RA_logp.cc: fix bug where base is
269         reciprocal of an integer.
270         Reported by Niklas Knutsson <nq@altern.org>.
271
272 2004-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
273
274         * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
275         src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
276         Make template specializations explicit.
277
278 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
279
280         * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
281         src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
282         src/real/input/cl_R_read.cc:  Remove unused labels.
283
284 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
285
286         * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
287         benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
288         benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
289         examples/atan_recip.cc, examples/atanh_recip.cc,
290         examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
291         examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
292         include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
293         include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
294         src/base/cl_alloca.h, src/base/cl_malloc.cc,
295         src/base/random/cl_random_from.cc,
296         src/base/string/cl_spushstring_append.cc,
297         src/base/string/cl_spushstring_push.cc,
298         src/base/string/cl_st_debug.cc,
299         src/base/string/input/cl_st_gettoken.cc,
300         src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
301         src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
302         src/rational/input/cl_RA_read.cc,
303         src/real/format-output/cl_fmt_integer.cc,
304         src/real/format-output/cl_fmt_paddedstring.cc,
305         src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
306         src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
307         tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
308         tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
309         tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
310         tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
311         tests/timeLFln-compare.cc, tests/timeLFln.cc,
312         tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
313         tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
314         tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
315         tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
316         tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
317         tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
318         tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
319         tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
320         tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
321         tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
322         tests/timezeta3.cc: Change all C include headers to ISO style
323         within C++ code.
324
325 2004-06-10  Richard B. Kreckel  <kreckel@ginac.de>
326
327         * examples/perfnum.cc: update to presumed 41st Mersenne prime.
328
329 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
330
331         * Version 1.1.7 released.
332
333 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
334
335         * examples/pi.cc and examples/pi.1: New files.
336         * examples/Makefile.in: Build the pi executable.
337
338 2004-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
339
340         * src/Makefile.in: Fix for parallel build: wait for subdir objects to
341         be finished before creating the library.
342
343 2004-04-30  Richard B. Kreckel  <kreckel@ginac.de>
344
345         * src/integer/output/cl_I_print.cc (print_integer): workaround
346         GCC compiler bug (cf. Debian bug#246319).
347
348 2004-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
349
350         * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
351         enabled.
352
353 2004-03-08  Bruno Haible  <bruno@clisp.org>
354
355         * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
356         underflow condition.
357         * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
358         uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
359
360 2004-03-04  Richard B. Kreckel  <kreckel@ginac.de>
361
362         * Makefile.in (install): Add ${srcdir} for cln.m4.
363         * m4/gmp.m4: quote macro names.
364         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
365
366 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
367
368         * Version 1.1.6 released.
369
370 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
371
372         * include/cln/univpoly.h, include/cln/univpoly_complex.h,
373           include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
374           include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
375           src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
376           src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
377           src/polynomial/elem/cl_UP_number.h (ldegree): New function.
378         * doc/cln.tex: Document `ldegree'.
379
380 2003-12-29  Richard B. Kreckel  <kreckel@ginac.de>
381
382         Rework of autoconfiscation infrastructure
383         * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
384         * autoconf/ltmain.sh: Update to GNU version 1.4.3.
385         * autoconf/autoconf: Remove (from now on we assume autoconf is
386           installed properly on the sytem).
387         * autoconf/autoconf.m4: Likewise.
388         * autoconf/autoconf.m4f: Likewise.
389         * autoconf/acgeneral.m4: Likewise.
390         * autoconf/acspecific.m4: Likewise.
391         * autoconf/aclocal.m4: Regenerate.
392         * autoconf/acinclude.m4: Remove (while moving the macros...)
393         * m4/gmp.m4: New file (...to here).
394         * Makefile.devel: Update to new scheme.
395         * configure.ac: Likewise.
396         * include/cln/GV_integer.h: Assume template specializations work.
397         * include/cln/GV_modinteger.h: Likewise.
398         * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
399         * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
400         * src/base/random/cl_random_from.cc: Likewise.
401         * src/timing/cl_base_config.h.in: Likewise.
402         * src/timing/cl_t_current.cc: Likewise.
403
404 2003-12-27  Richard B. Kreckel  <kreckel@ginac.de>
405
406         * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
407           argument is zero.
408         * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
409         * src/polynomial/cl_UP_number.h (num_minus): Likewise.
410         Reported by Munagala Ramanath <amberarrow@yahoo.com>.
411
412 2003-12-02  Richard B. Kreckel  <kreckel@ginac.de>
413
414         * examples/perfnum.cc: update to presumed 40th Mersenne prime.
415
416 2003-11-20  Christian Bauer  <cbauer@ginac.de>
417
418         Added pkg-config support
419         * cln.pc.in: New file.
420         * Makefile.in: Take care of cln.pc.
421         * configure.ac: Likewise.
422
423 2003-08-06  Richard B. Kreckel  <kreckel@ginac.de>
424
425         * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
426         Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
427
428 2003-08-01  Richard Kreckel  <kreckel@ginac.de>
429
430         More dependent base resolution issues
431         * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()): 
432         portable syntactic simplification.
433         * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
434         * src/base/hash/cl_hash1.h: Likewise for member functions.
435         * src/base/hash/cl_hash2.h: Likewise.
436         * src/base/hash/cl_hashuniq.h: Likewise.
437         * src/base/hash/cl_hashuniqweak.h: Likewise.
438         * src/base/hash/cl_hash.h: Revert explicit static member function
439         lookup since that was GCC's fault.
440         * src/base/hash/cl_hash2weak.h: Likewise.
441         * src/base/hash/cl_hashuniqweak.h: Likewise.
442
443 2003-06-29  Richard Kreckel  <kreckel@ginac.de>
444
445         Dependent base resolution needed for GCC-3.4
446         * include/cln/GV.h: Preceed inherited members with this->.
447         * include/cln/SV.h: Likewise.
448         * include/cln/object.h: Likewise.
449         * src/base/hash/cl_hash1.h: Likewise.
450         * src/base/hash/cl_hash1weak.h: Likewise.
451         * src/base/hash/cl_hash2.h: Likewise.
452         * src/base/hash/cl_hashuniq.h: Likewise.
453         * src/base/hash/cl_hash.h: Make lookup of static member function 
454         explicit.
455         * src/base/hash/cl_hash2weak.h: Likewise.
456         * src/base/hash/cl_hashuniqweak.h: Likewise.
457         * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
458
459 2003-02-24  Bruno Haible  <bruno@clisp.org>
460
461         * src/base/random/cl_random_from.cc (random_state::random_state): Add
462         support for MacOS X.
463         * src/modinteger/cl_MI.cc: #undef _R.
464         Reported by Erann Gat <gat@jpl.nasa.gov>.
465
466 2002-08-03  Joerg Arndt  <jj@suse.de>
467
468         * include/cln/config.h.in: Add support for x86_64 CPU.
469         * include/cln/modules.h: Likewise.
470         * include/cln/types.h: Likewise.
471         * include/cln/object.h: Likewise.
472
473 2002-06-08  Richard Kreckel  <kreckel@ginac.de>
474
475         * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
476         m68k Assembler routines.
477         * src/base/digitseq/cl_asm_.cc: Likewise.
478
479 2002-05-28  Richard Kreckel  <kreckel@ginac.de>
480
481         * Version 1.1.5 released.
482
483 2002-05-27  Richard Kreckel  <kreckel@ginac.de>
484
485         * include/cln/modules.h (CL_CONCATENATE): New macro.
486
487 2002-05-10  Richard Kreckel  <kreckel@ginac.de>
488
489         * doc/cln.tex (Building the library): Update recommendations for 
490         compiling on Tru64 using g++ 3.0 and 3.1.
491         * README: Update homepage.
492
493 2002-05-05  Bruno Haible  <bruno@clisp.org>
494
495         * doc/cln.tex (Building the library): Give some recommendations for
496         g++ 3.0 and 3.1.
497
498         Force link-time references despite optimizations done by g++ 2.95
499         and newer.
500         * include/cln/modules.h (CL_FORCE_LINK): New macro.
501         * Use CL_FORCE_LINK.
502         * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
503         * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
504         * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
505         * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
506         * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
507         * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
508         Likewise.
509         * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
510         Likewise.
511         * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
512         * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
513         * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
514         * include/cln/real.h (cl_R_debug_dummy): Likewise.
515         * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
516         * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
517         Likewise.
518         * include/cln/string.h (cl_string_debug_dummy): Likewise.
519         * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
520         * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
521
522         Avoid g++ 3.1 warnings.
523         * src/base/cl_offsetof.h (offsetof): Redefine each time.
524         * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
525
526         Avoid g++ 3.1 warnings.
527         * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
528         where needed.
529         * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
530         htxentry as a shortcut.
531         * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
532         * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
533         * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
534         Likewise.
535
536 2002-03-15  Bruno Haible  <bruno@clisp.org>
537
538         * cln.tex: Document problem with GNU make 3.77.
539         Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
540
541 2002-02-16  Richard Kreckel  <kreckel@ginac.de>
542
543         * cln.m4: quote macro name.
544           Pointed out by Roberto Bagnara.
545
546 2002-01-20  Richard Kreckel  <kreckel@ginac.de>
547
548         * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
549           (the old one was broken on Linux/Mips.)
550
551 2002-01-04  Richard Kreckel  <kreckel@ginac.de>
552
553         * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
554         * Version 1.1.4 released.
555
556 2002-01-03  Richard Kreckel  <kreckel@ginac.de>
557
558         * autoconf/acinclude.m4: revamp MPN-matcher.
559         * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
560           sync with CLisp from CVS.
561         * autoconf/autoconf: Likewise.
562         * autoconf/autoconf.m4f: Likewise (new file).
563         * configure.ac: Likewise (new file, replaces configure.in).
564         * configure.in: Likewise (deleted, replaced by configure.ac).
565         * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
566         * src/Makefile.in: made VPATH safe for autoconf-2.52.
567         * include/cln/config.h.in: Add __s390__.
568
569 2001-12-31  Richard Kreckel  <kreckel@ginac.de>
570
571         * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
572           any more since GMP4 has some C++ support in it.
573
574 2001-12-14  Richard Kreckel  <kreckel@ginac.de>
575
576         * include/cln/modules.h, include/cln/object.h: add support for
577           s390.
578         * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
579           on s390, provided by Gerhard Tonn.
580
581 2001-11-05  Richard Kreckel  <kreckel@ginac.de>
582
583         * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
584         * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
585         * Version 1.1.3 released.
586
587 2001-11-04  Bruno Haible  <haible@clisp.cons.org>
588
589         Interoperability with gcc-3.0 -fuse-cxa-atexit.
590         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
591           global destructors actually exist.
592         * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
593           Don't hack the global destructors if there is no global destructors
594           function.
595
596 2001-11-03  Richard Kreckel  <kreckel@ginac.de>
597
598         * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
599           values of x, return square(x) instead of x.
600         * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
601
602 2001-07-25  Richard Kreckel  <kreckel@ginac.de>
603
604         * Version 1.1.2 released.
605
606 2001-07-24  Richard Kreckel  <kreckel@ginac.de>
607
608         * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
609           friend of cl_heap_hashtable<htentry>.
610
611 2001-07-22  Richard Kreckel  <kreckel@ginac.de>
612
613         * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
614           _FPU_IEEE is really defined.
615         * include/cln/modules.h: change assembler labels from `label' to
616           `label:' on hppa, needed by Linux (see comment).
617         * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
618         * Makefile.devel: adjusted.
619         * autoconf/aclocal.m4: regenerate.
620         * src/base/low/cl_low_mul.cc: moved POD variables that are declared
621           extern "C" elsewhere out of the namespace.
622         * src/base/low/cl_low_div.cc: Likewise.
623
624 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
625
626         * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
627         * autoconf/aclocal.m4: Upgrade to libtool-1.4.
628         * autoconf/ltmain.sh: Likewise.
629         * autoconf/ltconfig: Remove file.
630         * autoconf/install-sh: New file.
631         * configure.in: Add AC_CONFIG_AUX_DIR call.
632
633 2001-06-05  Richard Kreckel  <kreckel@ginac.de>
634
635         * tests/tests.cc: resolve namespace ambiguity about strcmp().
636
637 2001-05-31  Richard Kreckel  <kreckel@ginac.de>
638
639         * Version 1.1.1 released.
640
641 2001-05-28  Richard Kreckel  <kreckel@ginac.de>
642
643         * cln/cln.tex: documented problems with shared library on Sparc
644           using gcc older than 2.95.3.
645         * configure.in: Fixed typos in versioning docu.
646
647 2001-05-25  Bruno Haible  <haible@clisp.cons.org>
648
649         * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
650           hexadecimal constants.
651
652 2001-05-25  Richard Kreckel  <kreckel@ginac.de>
653
654         * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
655         * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
656         * Removed LiDIA interface since that is now outdated (namespace cln)
657           and maintained elsewhere.
658         * Adjusted dates and final touches for 1.1.1.
659
660 2001-05-19  Richard Kreckel  <kreckel@ginac.de>
661
662         * INSTALL: Update toolchain info: no egcs, some more platforms.
663         * doc/cln.tex: Likewise.
664
665 2001-05-18  Richard Kreckel  <kreckel@ginac.de>
666
667         * src/base/cl_low.h: prepended variables declared inside macros
668           with underscore.  Fixes equal_hashcode() on various platforms.
669
670 2001-04-25  Richard Kreckel  <kreckel@ginac.de>
671
672         * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
673           this definition becomes actually useful.  This is needed for 
674           compilation on Arm until somebody fixes the assembler files for Arm.
675         * src/base/digitseq/cl_asm.h: Likewise.
676         * src/base/digitseq/cl_asm_.cc: Likewise.
677         * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
678            one can say `make CPPFLAGS=-DFOOBAR'.
679
680 2001-03-26  Arvid Norberg <c99ang@cs.umu.se>
681
682         * src/base/random/cl_random_from.cc: ported to beos.
683
684 2001-03-05  Richard Kreckel  <kreckel@ginac.de>
685
686         * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
687
688 2001-01-28  Richard Kreckel  <kreckel@ginac.de>
689
690         * include/cln/number.h (cl_as_N): Remove bogus comment.
691
692 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
693
694         * configure.in: Make build in separate builddir possible (again).
695
696 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
697
698         * include/cln/*.h: Change signatures of all classes' methods
699           cln::cl_foo::operator new(size_t, cl_foo*) to
700           cln::cl_foo::operator new(size_t, void*) so one can declare
701           std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
702           certain STL implementations (like libstdc++-v3).
703
704 2000-12-14  Richard Kreckel  <kreckel@ginac.de>
705
706         * Version 1.1 released.
707
708 2000-12-13  Richard Kreckel  <kreckel@ginac.de>
709
710         * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
711
712 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
713
714         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
715         * include/cln/version.h.in, src/base/verion.cc: New files.
716         * configure.in: Generate include/cln/version.h.
717         * cln.m4: Rewrote it. Check result of cln-config without compiling.
718           Do cross-check library version and header version information.
719
720 2000-12-02  Christian Bauer  <cbauer@ginac.de>
721
722         * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
723         * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
724           building.
725
726 2000-11-24  Richard Kreckel  <kreckel@ginac.de>
727
728         * */*: Removed problematic stdin, stdout and stderr definitions.  
729           Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
730
731 2000-11-20  Bruno Haible
732
733         * cln-config.1: change title.
734
735 2000-11-18  Richard Kreckel  <kreckel@ginac.de>
736
737         * cln.m4: New file.
738         * doc/cln.tex: Document package tools cln-config and cln.m4.
739         * Makefile.in: Care about cln.m4.
740
741 2000-11-17  Richard Kreckel  <kreckel@ginac.de>
742
743         * cln-config.1: added manpage, as required by a couple of distros.
744         * Makefile.in, doc/Makefile.in: target install depends on installdirs.
745
746 2000-11-16  Richard Kreckel  <kreckel@ginac.de>
747
748         * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
749         * configure.in: ...used here.
750         * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
751         * include/cln/types.h: ...used here.
752         * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
753
754 2000-11-13  Richard Kreckel  <kreckel@ginac.de>
755
756         * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
757           in order to guard against an accidented configuration.
758         * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of 
759           struct power_table_entry initialized as ULL instead of as UL, if 
760           intDsize==64 (caused misprinting on MIPS w/ GMP).
761         * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if 
762           HAVE_FAST_LONGLONG.
763         * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
764         * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival 
765           generation of Bignum for intDsize==64 and a notreached-check at end.
766         * autoconf/config.guess, autoconf/config.sub: updated from FSF.
767         * include/cln/config.h.in: Prepared support for IA64.
768         * include/cln/types.h: Likewise.
769         * include/cln/object.h: Likewise.
770         * include/cln/modules.h: Likewise.
771         * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's 
772           compiler claims __GNUC_MINOR__==9).
773
774 2000-11-03  Richard Kreckel  <kreckel@ginac.de>
775
776         * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
777           HAVE_DD to HAVE_FAST_LONGLONG.
778         * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
779         * src/base/cl_low.h: actually no need to include "cln/types.h" here.
780         * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
781         * src/base/random/cl_UL_random.cc (random32): a is always ULL.
782
783 2000-11-01  Richard Kreckel  <kreckel@ginac.de>
784
785         * include/cln/object.h (cl_combine): define additional signatures, if
786           HAVE_LONGLONG is defined, in order to keep the compiler happy.
787         * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
788         * src/base/cl_macros.h (bit): ...for this macro...
789         * src/base/cl_macros.h (minus_bit): ...and this one.
790         * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
791         * src/base/cl_low.h (logcount_64): ...for this macro.
792         * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
793         * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
794           that turned up when intDsize==32 and cl_word_size==64.
795         * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
796           to uint64 that turned up when intDsize==32 and cl_word_size==64.
797
798 2000-10-29  Richard Kreckel  <kreckel@ginac.de>
799
800         * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
801           #undef stderr, if it's defined so cln::stderr isn't confused.
802         * src/base/input/cl_read_globals.cc: stdin should not be extern.
803
804 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
805
806         * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
807           to the appropiate method instead of prefixing `as_'.
808         * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
809         * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
810         * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
811         * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
812         * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
813         * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
814         * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
815         * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
816         * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
817
818 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
819
820         * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
821           the 0^y cases.
822
823 2000-08-30  Richard Kreckel  <kreckel@ginac.de>
824
825         * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
826           Rearranged for a clearer distinction between macros and remaining
827           identifiers, so Cint can parse it smoothly.
828
829 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
830
831         * include/cln/number.h, the(const cl_number& x): New template
832           function.
833
834 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
835
836         * */*: Pushed CLN into a namespace `cln'.  While doing so, the
837           following identifiers got their poor-man's namespace (i.e. the 
838           prefix `cl_') stripped off:
839           cl_catalanconst()        ->  catalanconst()
840           cl_compare()             ->  compare()
841           cl_cos_sin()             ->  cos_sin()
842           cl_cos_sin_t             ->  cos_sin_t
843           cl_cosh_sinh()           ->  cosh_sinh()
844           cl_cosh_sinh_t           ->  cosh_sinh_t
845           cl_decoded_dfloat        ->  decoded_dfloat
846           cl_decoded_ffloat        ->  decoded_ffloat
847           cl_decoded_float         ->  decoded_float
848           cl_decoded_lfloat        ->  decoded_lfloat
849           cl_decoded_sfloat        ->  decoded_sfloat
850           cl_default_float_format  ->  default_float_format
851           cl_default_print_flags   ->  default_print_flags
852           cl_default_random_state  ->  default_random_state
853           cl_double_approx()       ->  double_approx()
854           cl_equal()               ->  equal()
855           cl_equal_hashcode()      ->  equal_hashcode()
856           cl_eulerconst()          ->  eulerconst()
857           cl_find_modint_ring()    ->  find_modint_ring()
858           cl_find_univpoly_ring()  ->  find_univ_poly_ring()
859           cl_float_approx()        ->  float_approx
860           cl_float_format()        ->  float_format()
861           cl_float_format_t        ->  float_format_t
862           cl_free_hook()           ->  free_hook()
863           cl_hermite()             ->  hermite()
864           cl_laguerre()            ->  laguerre()
865           cl_legendre()            ->  legandre()
866           cl_malloc_hook()         ->  malloc_hook()
867           cl_pi()                  ->  pi()
868           cl_tschebychev()         ->  tschebychev()
869           cl_zeta()                ->  zeta()
870           NB: For functions these changes includes all signatures.
871         * include/*: moved to include/cln/*, stripped `cl_' off filenames.
872         * cln-config.in: new file.
873
874 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
875
876         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
877           value, not parens.
878
879 2000-08-18  Bruno Haible  <haible@clisp.cons.org>
880
881         * include/cl_univpoly_modint.h: Fix typo.
882
883 2000-07-13  Bruno Haible  <haible@clisp.cons.org>
884
885         * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
886           used as precision marker for floats.
887           Reported by Keith Briggs (in 1998) and Thomas Roessler.
888         * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
889         * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
890         * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
891         * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
892
893 2000-06-22  Bruno Haible  <haible@clisp.cons.org>
894
895         * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
896         * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
897           with N32 ABI.
898           (cl_word_size): New macro.
899         * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
900           cl_word_size.
901
902 2000-05-31  Bruno Haible  <haible@clisp.cons.org>
903
904         * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
905           From a sample that fails with gcc-2.95.2 on Sparc.
906         * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
907
908 2000-05-30  Richard Kreckel  <kreckel@ginac.de>
909
910         * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
911           New macros.
912         * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
913           CL_VERSION_PATCHLEVEL): New definitions.
914         * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
915           autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
916         * src/Makefile.in, configure.in: release-variables renamed from 
917           CLN_* to CL_*.
918         * configure.in: default to build both shared and static library
919           (i.e. default to the most common behaviour).
920
921 2000-05-29  Richard Kreckel  <kreckel@ginac.de>
922
923         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
924           environment around the patch of 2000-05-23.
925
926 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
927
928         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
929           Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
930
931 2000-05-27  Richard Kreckel  <kreckel@ginac.de>
932
933         * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
934           src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
935
936 2000-05-24  Richard Kreckel  <kreckel@ginac.de>
937
938         * autoconf/config.*: Updated to new version from FSF
939           (the new libtool wants this).
940         * src/Makefile.in: added $(LDFLAGS) to link step.
941         * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted 
942           break-even points.
943
944 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
945
946         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
947           host_vendor, host_os correctly if $host has more than two hyphens.
948
949 2000-05-19  Richard Kreckel  <kreckel@ginac.de>
950
951         * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
952           better match present-day CPUs whenever GMP3 is used.
953         * src/base/digitseq/cl_DS_div.cc: dto. 
954         * src/TUNING: Added comment about order of tuning.
955         * configure, configure.in: Safer GMP3-detection.
956         * INSTALL.generic: Clarified behaviour of --with-gmp.
957         * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
958
959 2000-05-04  Richard Kreckel  <kreckel@ginac.de>
960
961         * gmp/: removed completely.  From now on we are going to link
962           externally against libgmp3.0 or above!
963         * configure, configure.in, Makefile.in, */Makeflags: removed support
964           of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
965           setting $CPPFLAGS instead.
966         * Makefile.in: Added libtool inter-library dependency for -lgmp and
967           conforming interface versioning (-version-info).
968         * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
969           from libtool 1.3.4.
970
971 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
972
973         * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
974           parameter passing was changed for the MIPS n32 ABI.
975
976 2000-01-24  Richard Kreckel  <kreckel@ginac.de>
977
978         * gmp/*: Replaced the complete mpn sources with the ones from
979           Debian since they are maintained while the ones from FSF
980           aren't and there were problems on some architectures, PowerPC
981           in particular.  See the file gmp/README.CLN.  This way the
982           hard links in this directory have vanished, they were causing
983           trouble for people working in AFS.  This became necessary for
984           Debian, because there it woudn't compile on PPC.
985
986 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
987
988         * Version 1.0.3 released.
989
990 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
991
992         * src/base/cl_macros.h (nonreturning_function): For egcs and newer
993           use __attribute__ ((__noreturn__)) instead of the __volatile__
994           storage class.
995           (nonreturning): Remove macro.
996         * include/*: Minor fixes to stop -ansi -pedantic from complaining.
997         * include/cl_integer.h: (doublefactorial): New declaration.
998         * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
999
1000 1999-12-18  Bruno Haible  <haible@clisp.cons.org>
1001
1002         * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
1003           "cat", not "echo".
1004         * autoconf/ltconfig: Improve support for recent FreeBSD 3.
1005         * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
1006           'const T', to match definition in src/vector/cl_GV_number.cc.
1007           Reported by Duncan Simpson <dps@io.stargate.co.uk>.
1008         * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
1009           yield return code 1.
1010
1011 1999-09-07  Bruno Haible  <haible@clisp.cons.org>
1012
1013         * Version 1.0.2 released.
1014
1015 1999-09-06  Bruno Haible  <haible@clisp.cons.org>
1016
1017         * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
1018           boolean expression, write alternatives ending with either
1019           "return cl_true;" or "return cl_false;". This way, g++ does a
1020           better job inlining it.
1021         * src/float/cl_F.h (longfloatp): Likewise.
1022         * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
1023         * src/complex/cl_C.h (realp, complexp): Likewise.
1024
1025 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1026
1027         * include/cl_integer.h (cl_equal_hashcode): New declaration.
1028         * include/cl_rational.h (cl_equal_hashcode): New declaration.
1029         * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
1030         * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
1031         * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
1032         * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
1033         * include/cl_float.h (cl_equal_hashcode): New declaration.
1034         * include/cl_real.h (cl_equal_hashcode): New declaration.
1035         * include/cl_complex.h (cl_equal_hashcode): New declaration.
1036         * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
1037         * src/integer/misc/cl_I_eqhashcode.cc: New file.
1038         * src/rational/misc/cl_RA_eqhashcode.cc: New file.
1039         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
1040         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
1041         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
1042         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
1043         * src/float/misc/cl_F_eqhashcode.cc: New file.
1044         * src/real/misc/cl_R_eqhashcode.cc: New file.
1045         * src/complex/misc/cl_C_eqhashcode.cc: New file.
1046         * doc/cln.tex: Document `cl_equal_hashcode'.
1047
1048 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1049
1050         * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
1051           (cl_number_ring): New class.
1052           (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
1053           (instanceof): New function.
1054         * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
1055         * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
1056         * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
1057         * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
1058         * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
1059         * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
1060         * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
1061         * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
1062         * doc/cln.tex: Document `instanceof'.
1063
1064 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1065
1066         * include/cl_rational.h (numerator, denominator): New declarations.
1067         * src/rational/elem/cl_RA_numerator.cc: New file.
1068         * src/rational/elem/cl_RA_denominator.cc: New file.
1069         * include/cl_integer.h (numerator, denominator): New inline functions.
1070         * doc/cln.tex: Document `numerator' and `denominator'.
1071
1072 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1073
1074         * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
1075           in the integer case.
1076         * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
1077
1078 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1079
1080         * include/cl_config.h.in: Support for sparc64 CPU.
1081         * include/cl_modules.h: Likewise.
1082         * include/cl_types.h: Likewise.
1083         * include/cl_object.h: Likewise.
1084         * include/cl_GV.h: Likewise.
1085         * src/Makefile.in: Likewise.
1086         * src/base/cl_alloca.h: Likewise.
1087         * src/base/cl_macros.h: Likewise.
1088         * src/base/cl_sysdep.h: Likewise.
1089         * src/base/cl_low.h: Likewise.
1090         * src/base/digitseq/cl_asm.h: Likewise.
1091         * src/base/digitseq/cl_asm_.cc: Likewise.
1092         * src/base/digitseq/cl_asm_sparc64.h: New file.
1093         * src/base/digitseq/cl_asm_sparc64_.cc: New file.
1094         * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
1095         * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
1096         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1097         * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
1098
1099 1999-09-04  Bruno Haible  <haible@clisp.cons.org>
1100
1101         * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
1102           Use the `orn' instruction.
1103
1104 1999-08-14  Bruno Haible  <haible@clisp.cons.org>
1105
1106         Assume all platforms have <stdlib.h> and clock_t.
1107         * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
1108         * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
1109         * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
1110         * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
1111         * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
1112
1113 1999-07-18  Bruno Haible  <haible@clisp.cons.org>
1114
1115         * gmp/config.guess: Link to autoconf/config.guess.
1116           gmp/config.sub: Link to autoconf/config.sub.
1117           Needed for Win32 platforms.
1118
1119 1999-07-17  Bruno Haible  <haible@clisp.cons.org>
1120
1121         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
1122           "sparc64" according to the C compiler, not the uname result.
1123
1124 1999-06-17  Bruno Haible  <haible@clisp.cons.org>
1125
1126         * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
1127           COUNTER_LOOPS version, fortunately not used yet.
1128
1129         * include/cl_modules.h: Prepare for gcc version 3.
1130
1131 1999-06-12  Bruno Haible  <haible@clisp.cons.org>
1132
1133         * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
1134           Change the last call from I_I_to_RT to I_I_to_RA.
1135
1136 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1137
1138         * Version 1.0.1 released.
1139
1140 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1141
1142         * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
1143           intDsize==64.
1144
1145 1999-06-08  Bruno Haible  <haible@clisp.cons.org>
1146
1147         * autoconf/intparam.c (printf_underscored): Change argument type to
1148           `const char*'.
1149         * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
1150           (CL_PROVIDE, CL_PROVIDE_END): Use them.
1151         * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
1152         * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
1153         * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
1154           cast a cl_I to void here. Works around a bug in g++-2.95.
1155         * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
1156         * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
1157            dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
1158           in g++-2.95.
1159         * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
1160           macro.
1161         * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
1162         * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
1163            DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
1164         * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
1165           Likewise.
1166
1167 1999-06-01  Bruno Haible  <haible@clisp.cons.org>
1168
1169         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
1170           variants to alpha.
1171
1172 1999-05-29  Bruno Haible  <haible@clisp.cons.org>
1173
1174         * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
1175           OpenBSD like NetBSD.
1176         * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
1177         * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
1178           OpenBSD like NetBSD, and Linux/ELF like SVR4.
1179
1180 1999-05-16  Bruno Haible  <haible@clisp.cons.org>
1181
1182         * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
1183           syntax on AIX systems and new assembler syntax on non-AIX systems.
1184
1185 1999-05-01  Bruno Haible  <haible@clisp.cons.org>
1186
1187         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
1188           version from GNU CVS.
1189
1190 1999-04-24  Bruno Haible  <haible@clisp.cons.org>
1191
1192         * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
1193           either operand is a positive fixnum, O(1) instead of O(N).
1194         * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
1195         * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
1196           first operand.
1197
1198 1999-04-14  Bruno Haible  <haible@clisp.cons.org>
1199
1200         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
1201           ctor/dtor needs to be exported.
1202         * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
1203         * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
1204           CL_GLOBALIZE_LABEL.
1205           (CL_GLOBALIZE_LABEL): New macro.
1206           (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
1207           (CL_PROVIDE): Update.
1208
1209 1999-04-12  Bruno Haible  <haible@clisp.cons.org>
1210
1211         * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
1212           errors ("unterminated string or character constant").
1213           ($(ASMFILES_LO)): On HPPA, try with various settings of
1214           COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
1215
1216 1999-04-11  Bruno Haible  <haible@clisp.cons.org>
1217
1218         * INSTALL: Mention gmp problems on MIPS.
1219         * doc/cln.tex: Likewise.
1220
1221 1999-03-24  Mumit Khan  <khan@xraylith.wisc.edu>
1222
1223         * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
1224           the source tree.
1225         * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
1226           (CL_GLOBALIZE_ASM_LABEL): New macro.
1227           (CL_PROVIDE): Use it.
1228         * src/base/random/cl_random_from.cc: Handle WIN32.
1229         * src/timing/cl_t_current.cc: Likewise.
1230
1231 1999-03-15  Bruno Haible  <haible@clisp.cons.org>
1232
1233         * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
1234           (main8): Adapt for C++.
1235
1236 1999-03-09  Bruno Haible  <haible@clisp.cons.org>
1237
1238         * INSTALL: Mention egcs-1.1 problems on Sparc.
1239         * doc/cln.tex: Likewise.
1240
1241 1999-03-08  Bruno Haible  <haible@clisp.cons.org>
1242
1243         * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
1244           messages.
1245
1246 1999-02-25  Bruno Haible  <haible@clisp.cons.org>
1247
1248         * autoconf/aclocal.m4: In test programs, declare `int main()', not
1249           `main()'.
1250
1251         * lidia-interface/src/interfaces/integers/cln/bigint.c
1252           (bigint_to_string): Fix for negative arguments.
1253
1254         * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
1255         * src/base/cl_alloca.h: Likewise.
1256
1257         * src/base/cl_low.h: Eliminate CLISP style "# " comments.
1258         * src/base/digitseq/cl_asm_arm_.cc,
1259           src/base/digitseq/cl_asm_mips_.cc,
1260           src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
1261
1262         * src/modinteger/cl_MI_pow2.h,
1263           src/modinteger/cl_MI_pow2m1.h,
1264           src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
1265
1266 1999-01-18  Bruno Haible  <haible@clisp.cons.org>
1267
1268         * autoconf/acgeneral.m4,
1269           autoconf/acspecific.m4: Upgrade to autoconf-2.13.
1270         * autoconf/config.guess, autoconf/config.sub: Likewise.
1271         * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
1272           a macro. Use ${ac_objext}.
1273         * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
1274           conforming with CL_ALLOCA.
1275
1276 1999-01-12  Bruno Haible  <haible@clisp.cons.org>
1277
1278         * Version 1.0 released.
1279