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