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