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