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