1 2004-05-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3 * src/Makefile.in: Fix for parallel build: wait for subdir objects to
4 be finished before creating the library.
6 2004-04-30 Richard B. Kreckel <kreckel@ginac.de>
8 * src/integer/output/cl_I_print.cc (print_integer): workaround
9 GCC compiler bug (cf. Debian bug#246319).
11 2004-03-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13 * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
16 2004-03-08 Bruno Haible <bruno@clisp.org>
18 * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
20 * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
21 uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
23 2004-03-04 Richard B. Kreckel <kreckel@ginac.de>
25 * Makefile.in (install): Add ${srcdir} for cln.m4.
26 * m4/gmp.m4: quote macro names.
27 Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
29 2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
31 * Version 1.1.6 released.
33 2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
35 * include/cln/univpoly.h, include/cln/univpoly_complex.h,
36 include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
37 include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
38 src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
39 src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
40 src/polynomial/elem/cl_UP_number.h (ldegree): New function.
41 * doc/cln.tex: Document `ldegree'.
43 2003-12-29 Richard B. Kreckel <kreckel@ginac.de>
45 Rework of autoconfiscation infrastructure
46 * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
47 * autoconf/ltmain.sh: Update to GNU version 1.4.3.
48 * autoconf/autoconf: Remove (from now on we assume autoconf is
49 installed properly on the sytem).
50 * autoconf/autoconf.m4: Likewise.
51 * autoconf/autoconf.m4f: Likewise.
52 * autoconf/acgeneral.m4: Likewise.
53 * autoconf/acspecific.m4: Likewise.
54 * autoconf/aclocal.m4: Regenerate.
55 * autoconf/acinclude.m4: Remove (while moving the macros...)
56 * m4/gmp.m4: New file (...to here).
57 * Makefile.devel: Update to new scheme.
58 * configure.ac: Likewise.
59 * include/cln/GV_integer.h: Assume template specializations work.
60 * include/cln/GV_modinteger.h: Likewise.
61 * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
62 * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
63 * src/base/random/cl_random_from.cc: Likewise.
64 * src/timing/cl_base_config.h.in: Likewise.
65 * src/timing/cl_t_current.cc: Likewise.
67 2003-12-27 Richard B. Kreckel <kreckel@ginac.de>
69 * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
71 * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
72 * src/polynomial/cl_UP_number.h (num_minus): Likewise.
73 Reported by Munagala Ramanath <amberarrow@yahoo.com>.
75 2003-12-02 Richard B. Kreckel <kreckel@ginac.de>
77 * examples/perfnum.cc: update to presumed 40th Mersenne prime.
79 2003-11-20 Christian Bauer <cbauer@ginac.de>
81 Added pkg-config support
82 * cln.pc.in: New file.
83 * Makefile.in: Take care of cln.pc.
84 * configure.ac: Likewise.
86 2003-08-06 Richard B. Kreckel <kreckel@ginac.de>
88 * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
89 Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
91 2003-08-01 Richard Kreckel <kreckel@ginac.de>
93 More dependent base resolution issues
94 * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()):
95 portable syntactic simplification.
96 * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
97 * src/base/hash/cl_hash1.h: Likewise for member functions.
98 * src/base/hash/cl_hash2.h: Likewise.
99 * src/base/hash/cl_hashuniq.h: Likewise.
100 * src/base/hash/cl_hashuniqweak.h: Likewise.
101 * src/base/hash/cl_hash.h: Revert explicit static member function
102 lookup since that was GCC's fault.
103 * src/base/hash/cl_hash2weak.h: Likewise.
104 * src/base/hash/cl_hashuniqweak.h: Likewise.
106 2003-06-29 Richard Kreckel <kreckel@ginac.de>
108 Dependent base resolution needed for GCC-3.4
109 * include/cln/GV.h: Preceed inherited members with this->.
110 * include/cln/SV.h: Likewise.
111 * include/cln/object.h: Likewise.
112 * src/base/hash/cl_hash1.h: Likewise.
113 * src/base/hash/cl_hash1weak.h: Likewise.
114 * src/base/hash/cl_hash2.h: Likewise.
115 * src/base/hash/cl_hashuniq.h: Likewise.
116 * src/base/hash/cl_hash.h: Make lookup of static member function
118 * src/base/hash/cl_hash2weak.h: Likewise.
119 * src/base/hash/cl_hashuniqweak.h: Likewise.
120 * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
122 2003-02-24 Bruno Haible <bruno@clisp.org>
124 * src/base/random/cl_random_from.cc (random_state::random_state): Add
126 * src/modinteger/cl_MI.cc: #undef _R.
127 Reported by Erann Gat <gat@jpl.nasa.gov>.
129 2002-08-03 Joerg Arndt <jj@suse.de>
131 * include/cln/config.h.in: Add support for x86_64 CPU.
132 * include/cln/modules.h: Likewise.
133 * include/cln/types.h: Likewise.
134 * include/cln/object.h: Likewise.
136 2002-06-08 Richard Kreckel <kreckel@ginac.de>
138 * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
139 m68k Assembler routines.
140 * src/base/digitseq/cl_asm_.cc: Likewise.
142 2002-05-28 Richard Kreckel <kreckel@ginac.de>
144 * Version 1.1.5 released.
146 2002-05-27 Richard Kreckel <kreckel@ginac.de>
148 * include/cln/modules.h (CL_CONCATENATE): New macro.
150 2002-05-10 Richard Kreckel <kreckel@ginac.de>
152 * doc/cln.tex (Building the library): Update recommendations for
153 compiling on Tru64 using g++ 3.0 and 3.1.
154 * README: Update homepage.
156 2002-05-05 Bruno Haible <bruno@clisp.org>
158 * doc/cln.tex (Building the library): Give some recommendations for
161 Force link-time references despite optimizations done by g++ 2.95
163 * include/cln/modules.h (CL_FORCE_LINK): New macro.
165 * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
166 * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
167 * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
168 * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
169 * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
170 * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
172 * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
174 * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
175 * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
176 * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
177 * include/cln/real.h (cl_R_debug_dummy): Likewise.
178 * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
179 * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
181 * include/cln/string.h (cl_string_debug_dummy): Likewise.
182 * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
183 * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
185 Avoid g++ 3.1 warnings.
186 * src/base/cl_offsetof.h (offsetof): Redefine each time.
187 * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
189 Avoid g++ 3.1 warnings.
190 * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
192 * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
193 htxentry as a shortcut.
194 * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
195 * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
196 * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
199 2002-03-15 Bruno Haible <bruno@clisp.org>
201 * cln.tex: Document problem with GNU make 3.77.
202 Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
204 2002-02-16 Richard Kreckel <kreckel@ginac.de>
206 * cln.m4: quote macro name.
207 Pointed out by Roberto Bagnara.
209 2002-01-20 Richard Kreckel <kreckel@ginac.de>
211 * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
212 (the old one was broken on Linux/Mips.)
214 2002-01-04 Richard Kreckel <kreckel@ginac.de>
216 * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
217 * Version 1.1.4 released.
219 2002-01-03 Richard Kreckel <kreckel@ginac.de>
221 * autoconf/acinclude.m4: revamp MPN-matcher.
222 * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
223 sync with CLisp from CVS.
224 * autoconf/autoconf: Likewise.
225 * autoconf/autoconf.m4f: Likewise (new file).
226 * configure.ac: Likewise (new file, replaces configure.in).
227 * configure.in: Likewise (deleted, replaced by configure.ac).
228 * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
229 * src/Makefile.in: made VPATH safe for autoconf-2.52.
230 * include/cln/config.h.in: Add __s390__.
232 2001-12-31 Richard Kreckel <kreckel@ginac.de>
234 * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
235 any more since GMP4 has some C++ support in it.
237 2001-12-14 Richard Kreckel <kreckel@ginac.de>
239 * include/cln/modules.h, include/cln/object.h: add support for
241 * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
242 on s390, provided by Gerhard Tonn.
244 2001-11-05 Richard Kreckel <kreckel@ginac.de>
246 * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
247 * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
248 * Version 1.1.3 released.
250 2001-11-04 Bruno Haible <haible@clisp.cons.org>
252 Interoperability with gcc-3.0 -fuse-cxa-atexit.
253 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
254 global destructors actually exist.
255 * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
256 Don't hack the global destructors if there is no global destructors
259 2001-11-03 Richard Kreckel <kreckel@ginac.de>
261 * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
262 values of x, return square(x) instead of x.
263 * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
265 2001-07-25 Richard Kreckel <kreckel@ginac.de>
267 * Version 1.1.2 released.
269 2001-07-24 Richard Kreckel <kreckel@ginac.de>
271 * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
272 friend of cl_heap_hashtable<htentry>.
274 2001-07-22 Richard Kreckel <kreckel@ginac.de>
276 * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
277 _FPU_IEEE is really defined.
278 * include/cln/modules.h: change assembler labels from `label' to
279 `label:' on hppa, needed by Linux (see comment).
280 * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
281 * Makefile.devel: adjusted.
282 * autoconf/aclocal.m4: regenerate.
283 * src/base/low/cl_low_mul.cc: moved POD variables that are declared
284 extern "C" elsewhere out of the namespace.
285 * src/base/low/cl_low_div.cc: Likewise.
287 2001-06-08 Bruno Haible <haible@clisp.cons.org>
289 * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
290 * autoconf/aclocal.m4: Upgrade to libtool-1.4.
291 * autoconf/ltmain.sh: Likewise.
292 * autoconf/ltconfig: Remove file.
293 * autoconf/install-sh: New file.
294 * configure.in: Add AC_CONFIG_AUX_DIR call.
296 2001-06-05 Richard Kreckel <kreckel@ginac.de>
298 * tests/tests.cc: resolve namespace ambiguity about strcmp().
300 2001-05-31 Richard Kreckel <kreckel@ginac.de>
302 * Version 1.1.1 released.
304 2001-05-28 Richard Kreckel <kreckel@ginac.de>
306 * cln/cln.tex: documented problems with shared library on Sparc
307 using gcc older than 2.95.3.
308 * configure.in: Fixed typos in versioning docu.
310 2001-05-25 Bruno Haible <haible@clisp.cons.org>
312 * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
313 hexadecimal constants.
315 2001-05-25 Richard Kreckel <kreckel@ginac.de>
317 * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
318 * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
319 * Removed LiDIA interface since that is now outdated (namespace cln)
320 and maintained elsewhere.
321 * Adjusted dates and final touches for 1.1.1.
323 2001-05-19 Richard Kreckel <kreckel@ginac.de>
325 * INSTALL: Update toolchain info: no egcs, some more platforms.
326 * doc/cln.tex: Likewise.
328 2001-05-18 Richard Kreckel <kreckel@ginac.de>
330 * src/base/cl_low.h: prepended variables declared inside macros
331 with underscore. Fixes equal_hashcode() on various platforms.
333 2001-04-25 Richard Kreckel <kreckel@ginac.de>
335 * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
336 this definition becomes actually useful. This is needed for
337 compilation on Arm until somebody fixes the assembler files for Arm.
338 * src/base/digitseq/cl_asm.h: Likewise.
339 * src/base/digitseq/cl_asm_.cc: Likewise.
340 * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
341 one can say `make CPPFLAGS=-DFOOBAR'.
343 2001-03-26 Arvid Norberg <c99ang@cs.umu.se>
345 * src/base/random/cl_random_from.cc: ported to beos.
347 2001-03-05 Richard Kreckel <kreckel@ginac.de>
349 * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
351 2001-01-28 Richard Kreckel <kreckel@ginac.de>
353 * include/cln/number.h (cl_as_N): Remove bogus comment.
355 2001-01-22 Richard Kreckel <kreckel@ginac.de>
357 * configure.in: Make build in separate builddir possible (again).
359 2001-01-22 Richard Kreckel <kreckel@ginac.de>
361 * include/cln/*.h: Change signatures of all classes' methods
362 cln::cl_foo::operator new(size_t, cl_foo*) to
363 cln::cl_foo::operator new(size_t, void*) so one can declare
364 std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
365 certain STL implementations (like libstdc++-v3).
367 2000-12-14 Richard Kreckel <kreckel@ginac.de>
369 * Version 1.1 released.
371 2000-12-13 Richard Kreckel <kreckel@ginac.de>
373 * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
375 2000-12-05 Richard Kreckel <kreckel@ginac.de>
377 * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
378 * include/cln/version.h.in, src/base/verion.cc: New files.
379 * configure.in: Generate include/cln/version.h.
380 * cln.m4: Rewrote it. Check result of cln-config without compiling.
381 Do cross-check library version and header version information.
383 2000-12-02 Christian Bauer <cbauer@ginac.de>
385 * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
386 * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
389 2000-11-24 Richard Kreckel <kreckel@ginac.de>
391 * */*: Removed problematic stdin, stdout and stderr definitions.
392 Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
394 2000-11-20 Bruno Haible
396 * cln-config.1: change title.
398 2000-11-18 Richard Kreckel <kreckel@ginac.de>
401 * doc/cln.tex: Document package tools cln-config and cln.m4.
402 * Makefile.in: Care about cln.m4.
404 2000-11-17 Richard Kreckel <kreckel@ginac.de>
406 * cln-config.1: added manpage, as required by a couple of distros.
407 * Makefile.in, doc/Makefile.in: target install depends on installdirs.
409 2000-11-16 Richard Kreckel <kreckel@ginac.de>
411 * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
412 * configure.in: ...used here.
413 * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
414 * include/cln/types.h: ...used here.
415 * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
417 2000-11-13 Richard Kreckel <kreckel@ginac.de>
419 * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
420 in order to guard against an accidented configuration.
421 * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of
422 struct power_table_entry initialized as ULL instead of as UL, if
423 intDsize==64 (caused misprinting on MIPS w/ GMP).
424 * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if
426 * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
427 * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival
428 generation of Bignum for intDsize==64 and a notreached-check at end.
429 * autoconf/config.guess, autoconf/config.sub: updated from FSF.
430 * include/cln/config.h.in: Prepared support for IA64.
431 * include/cln/types.h: Likewise.
432 * include/cln/object.h: Likewise.
433 * include/cln/modules.h: Likewise.
434 * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's
435 compiler claims __GNUC_MINOR__==9).
437 2000-11-03 Richard Kreckel <kreckel@ginac.de>
439 * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
440 HAVE_DD to HAVE_FAST_LONGLONG.
441 * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
442 * src/base/cl_low.h: actually no need to include "cln/types.h" here.
443 * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
444 * src/base/random/cl_UL_random.cc (random32): a is always ULL.
446 2000-11-01 Richard Kreckel <kreckel@ginac.de>
448 * include/cln/object.h (cl_combine): define additional signatures, if
449 HAVE_LONGLONG is defined, in order to keep the compiler happy.
450 * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
451 * src/base/cl_macros.h (bit): ...for this macro...
452 * src/base/cl_macros.h (minus_bit): ...and this one.
453 * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
454 * src/base/cl_low.h (logcount_64): ...for this macro.
455 * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
456 * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
457 that turned up when intDsize==32 and cl_word_size==64.
458 * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
459 to uint64 that turned up when intDsize==32 and cl_word_size==64.
461 2000-10-29 Richard Kreckel <kreckel@ginac.de>
463 * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
464 #undef stderr, if it's defined so cln::stderr isn't confused.
465 * src/base/input/cl_read_globals.cc: stdin should not be extern.
467 2000-09-05 Richard Kreckel <kreckel@ginac.de>
469 * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
470 to the appropiate method instead of prefixing `as_'.
471 * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
472 * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
473 * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
474 * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
475 * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
476 * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
477 * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
478 * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
479 * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
481 2000-09-05 Richard Kreckel <kreckel@ginac.de>
483 * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
486 2000-08-30 Richard Kreckel <kreckel@ginac.de>
488 * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
489 Rearranged for a clearer distinction between macros and remaining
490 identifiers, so Cint can parse it smoothly.
492 2000-08-29 Richard Kreckel <kreckel@ginac.de>
494 * include/cln/number.h, the(const cl_number& x): New template
497 2000-08-29 Richard Kreckel <kreckel@ginac.de>
499 * */*: Pushed CLN into a namespace `cln'. While doing so, the
500 following identifiers got their poor-man's namespace (i.e. the
501 prefix `cl_') stripped off:
502 cl_catalanconst() -> catalanconst()
503 cl_compare() -> compare()
504 cl_cos_sin() -> cos_sin()
505 cl_cos_sin_t -> cos_sin_t
506 cl_cosh_sinh() -> cosh_sinh()
507 cl_cosh_sinh_t -> cosh_sinh_t
508 cl_decoded_dfloat -> decoded_dfloat
509 cl_decoded_ffloat -> decoded_ffloat
510 cl_decoded_float -> decoded_float
511 cl_decoded_lfloat -> decoded_lfloat
512 cl_decoded_sfloat -> decoded_sfloat
513 cl_default_float_format -> default_float_format
514 cl_default_print_flags -> default_print_flags
515 cl_default_random_state -> default_random_state
516 cl_double_approx() -> double_approx()
517 cl_equal() -> equal()
518 cl_equal_hashcode() -> equal_hashcode()
519 cl_eulerconst() -> eulerconst()
520 cl_find_modint_ring() -> find_modint_ring()
521 cl_find_univpoly_ring() -> find_univ_poly_ring()
522 cl_float_approx() -> float_approx
523 cl_float_format() -> float_format()
524 cl_float_format_t -> float_format_t
525 cl_free_hook() -> free_hook()
526 cl_hermite() -> hermite()
527 cl_laguerre() -> laguerre()
528 cl_legendre() -> legandre()
529 cl_malloc_hook() -> malloc_hook()
531 cl_tschebychev() -> tschebychev()
533 NB: For functions these changes includes all signatures.
534 * include/*: moved to include/cln/*, stripped `cl_' off filenames.
535 * cln-config.in: new file.
537 2000-08-26 Bruno Haible <haible@clisp.cons.org>
539 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
542 2000-08-18 Bruno Haible <haible@clisp.cons.org>
544 * include/cl_univpoly_modint.h: Fix typo.
546 2000-07-13 Bruno Haible <haible@clisp.cons.org>
548 * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
549 used as precision marker for floats.
550 Reported by Keith Briggs (in 1998) and Thomas Roessler.
551 * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
552 * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
553 * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
554 * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
556 2000-06-22 Bruno Haible <haible@clisp.cons.org>
558 * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
559 * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
561 (cl_word_size): New macro.
562 * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
565 2000-05-31 Bruno Haible <haible@clisp.cons.org>
567 * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
568 From a sample that fails with gcc-2.95.2 on Sparc.
569 * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
571 2000-05-30 Richard Kreckel <kreckel@ginac.de>
573 * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
575 * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
576 CL_VERSION_PATCHLEVEL): New definitions.
577 * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
578 autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
579 * src/Makefile.in, configure.in: release-variables renamed from
581 * configure.in: default to build both shared and static library
582 (i.e. default to the most common behaviour).
584 2000-05-29 Richard Kreckel <kreckel@ginac.de>
586 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
587 environment around the patch of 2000-05-23.
589 2000-05-29 Bruno Haible <haible@clisp.cons.org>
591 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
592 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
594 2000-05-27 Richard Kreckel <kreckel@ginac.de>
596 * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
597 src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
599 2000-05-24 Richard Kreckel <kreckel@ginac.de>
601 * autoconf/config.*: Updated to new version from FSF
602 (the new libtool wants this).
603 * src/Makefile.in: added $(LDFLAGS) to link step.
604 * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted
607 2000-05-23 Bruno Haible <haible@clisp.cons.org>
609 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
610 host_vendor, host_os correctly if $host has more than two hyphens.
612 2000-05-19 Richard Kreckel <kreckel@ginac.de>
614 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
615 better match present-day CPUs whenever GMP3 is used.
616 * src/base/digitseq/cl_DS_div.cc: dto.
617 * src/TUNING: Added comment about order of tuning.
618 * configure, configure.in: Safer GMP3-detection.
619 * INSTALL.generic: Clarified behaviour of --with-gmp.
620 * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
622 2000-05-04 Richard Kreckel <kreckel@ginac.de>
624 * gmp/: removed completely. From now on we are going to link
625 externally against libgmp3.0 or above!
626 * configure, configure.in, Makefile.in, */Makeflags: removed support
627 of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
628 setting $CPPFLAGS instead.
629 * Makefile.in: Added libtool inter-library dependency for -lgmp and
630 conforming interface versioning (-version-info).
631 * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
634 2000-02-22 Bruno Haible <haible@clisp.cons.org>
636 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
637 parameter passing was changed for the MIPS n32 ABI.
639 2000-01-24 Richard Kreckel <kreckel@ginac.de>
641 * gmp/*: Replaced the complete mpn sources with the ones from
642 Debian since they are maintained while the ones from FSF
643 aren't and there were problems on some architectures, PowerPC
644 in particular. See the file gmp/README.CLN. This way the
645 hard links in this directory have vanished, they were causing
646 trouble for people working in AFS. This became necessary for
647 Debian, because there it woudn't compile on PPC.
649 2000-01-13 Richard Kreckel <kreckel@ginac.de>
651 * Version 1.0.3 released.
653 2000-01-13 Richard Kreckel <kreckel@ginac.de>
655 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
656 use __attribute__ ((__noreturn__)) instead of the __volatile__
658 (nonreturning): Remove macro.
659 * include/*: Minor fixes to stop -ansi -pedantic from complaining.
660 * include/cl_integer.h: (doublefactorial): New declaration.
661 * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
663 1999-12-18 Bruno Haible <haible@clisp.cons.org>
665 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
667 * autoconf/ltconfig: Improve support for recent FreeBSD 3.
668 * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
669 'const T', to match definition in src/vector/cl_GV_number.cc.
670 Reported by Duncan Simpson <dps@io.stargate.co.uk>.
671 * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
674 1999-09-07 Bruno Haible <haible@clisp.cons.org>
676 * Version 1.0.2 released.
678 1999-09-06 Bruno Haible <haible@clisp.cons.org>
680 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
681 boolean expression, write alternatives ending with either
682 "return cl_true;" or "return cl_false;". This way, g++ does a
683 better job inlining it.
684 * src/float/cl_F.h (longfloatp): Likewise.
685 * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
686 * src/complex/cl_C.h (realp, complexp): Likewise.
688 1999-09-05 Bruno Haible <haible@clisp.cons.org>
690 * include/cl_integer.h (cl_equal_hashcode): New declaration.
691 * include/cl_rational.h (cl_equal_hashcode): New declaration.
692 * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
693 * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
694 * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
695 * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
696 * include/cl_float.h (cl_equal_hashcode): New declaration.
697 * include/cl_real.h (cl_equal_hashcode): New declaration.
698 * include/cl_complex.h (cl_equal_hashcode): New declaration.
699 * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
700 * src/integer/misc/cl_I_eqhashcode.cc: New file.
701 * src/rational/misc/cl_RA_eqhashcode.cc: New file.
702 * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
703 * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
704 * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
705 * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
706 * src/float/misc/cl_F_eqhashcode.cc: New file.
707 * src/real/misc/cl_R_eqhashcode.cc: New file.
708 * src/complex/misc/cl_C_eqhashcode.cc: New file.
709 * doc/cln.tex: Document `cl_equal_hashcode'.
711 1999-09-05 Bruno Haible <haible@clisp.cons.org>
713 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
714 (cl_number_ring): New class.
715 (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
716 (instanceof): New function.
717 * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
718 * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
719 * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
720 * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
721 * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
722 * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
723 * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
724 * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
725 * doc/cln.tex: Document `instanceof'.
727 1999-09-05 Bruno Haible <haible@clisp.cons.org>
729 * include/cl_rational.h (numerator, denominator): New declarations.
730 * src/rational/elem/cl_RA_numerator.cc: New file.
731 * src/rational/elem/cl_RA_denominator.cc: New file.
732 * include/cl_integer.h (numerator, denominator): New inline functions.
733 * doc/cln.tex: Document `numerator' and `denominator'.
735 1999-09-05 Bruno Haible <haible@clisp.cons.org>
737 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
739 * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
741 1999-09-05 Bruno Haible <haible@clisp.cons.org>
743 * include/cl_config.h.in: Support for sparc64 CPU.
744 * include/cl_modules.h: Likewise.
745 * include/cl_types.h: Likewise.
746 * include/cl_object.h: Likewise.
747 * include/cl_GV.h: Likewise.
748 * src/Makefile.in: Likewise.
749 * src/base/cl_alloca.h: Likewise.
750 * src/base/cl_macros.h: Likewise.
751 * src/base/cl_sysdep.h: Likewise.
752 * src/base/cl_low.h: Likewise.
753 * src/base/digitseq/cl_asm.h: Likewise.
754 * src/base/digitseq/cl_asm_.cc: Likewise.
755 * src/base/digitseq/cl_asm_sparc64.h: New file.
756 * src/base/digitseq/cl_asm_sparc64_.cc: New file.
757 * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
758 * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
759 * src/polynomial/elem/cl_UP_GF2.h: Likewise.
760 * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
762 1999-09-04 Bruno Haible <haible@clisp.cons.org>
764 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
765 Use the `orn' instruction.
767 1999-08-14 Bruno Haible <haible@clisp.cons.org>
769 Assume all platforms have <stdlib.h> and clock_t.
770 * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
771 * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
772 * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
773 * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
774 * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
776 1999-07-18 Bruno Haible <haible@clisp.cons.org>
778 * gmp/config.guess: Link to autoconf/config.guess.
779 gmp/config.sub: Link to autoconf/config.sub.
780 Needed for Win32 platforms.
782 1999-07-17 Bruno Haible <haible@clisp.cons.org>
784 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
785 "sparc64" according to the C compiler, not the uname result.
787 1999-06-17 Bruno Haible <haible@clisp.cons.org>
789 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
790 COUNTER_LOOPS version, fortunately not used yet.
792 * include/cl_modules.h: Prepare for gcc version 3.
794 1999-06-12 Bruno Haible <haible@clisp.cons.org>
796 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
797 Change the last call from I_I_to_RT to I_I_to_RA.
799 1999-06-09 Bruno Haible <haible@clisp.cons.org>
801 * Version 1.0.1 released.
803 1999-06-09 Bruno Haible <haible@clisp.cons.org>
805 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
808 1999-06-08 Bruno Haible <haible@clisp.cons.org>
810 * autoconf/intparam.c (printf_underscored): Change argument type to
812 * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
813 (CL_PROVIDE, CL_PROVIDE_END): Use them.
814 * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
815 * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
816 * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
817 cast a cl_I to void here. Works around a bug in g++-2.95.
818 * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
819 * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
820 dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
822 * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
824 * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
825 * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
826 DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
827 * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
830 1999-06-01 Bruno Haible <haible@clisp.cons.org>
832 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
835 1999-05-29 Bruno Haible <haible@clisp.cons.org>
837 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
839 * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
840 * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
841 OpenBSD like NetBSD, and Linux/ELF like SVR4.
843 1999-05-16 Bruno Haible <haible@clisp.cons.org>
845 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
846 syntax on AIX systems and new assembler syntax on non-AIX systems.
848 1999-05-01 Bruno Haible <haible@clisp.cons.org>
850 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
851 version from GNU CVS.
853 1999-04-24 Bruno Haible <haible@clisp.cons.org>
855 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
856 either operand is a positive fixnum, O(1) instead of O(N).
857 * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
858 * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
861 1999-04-14 Bruno Haible <haible@clisp.cons.org>
863 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
864 ctor/dtor needs to be exported.
865 * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
866 * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
868 (CL_GLOBALIZE_LABEL): New macro.
869 (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
870 (CL_PROVIDE): Update.
872 1999-04-12 Bruno Haible <haible@clisp.cons.org>
874 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
875 errors ("unterminated string or character constant").
876 ($(ASMFILES_LO)): On HPPA, try with various settings of
877 COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
879 1999-04-11 Bruno Haible <haible@clisp.cons.org>
881 * INSTALL: Mention gmp problems on MIPS.
882 * doc/cln.tex: Likewise.
884 1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
886 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
888 * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
889 (CL_GLOBALIZE_ASM_LABEL): New macro.
890 (CL_PROVIDE): Use it.
891 * src/base/random/cl_random_from.cc: Handle WIN32.
892 * src/timing/cl_t_current.cc: Likewise.
894 1999-03-15 Bruno Haible <haible@clisp.cons.org>
896 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
897 (main8): Adapt for C++.
899 1999-03-09 Bruno Haible <haible@clisp.cons.org>
901 * INSTALL: Mention egcs-1.1 problems on Sparc.
902 * doc/cln.tex: Likewise.
904 1999-03-08 Bruno Haible <haible@clisp.cons.org>
906 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
909 1999-02-25 Bruno Haible <haible@clisp.cons.org>
911 * autoconf/aclocal.m4: In test programs, declare `int main()', not
914 * lidia-interface/src/interfaces/integers/cln/bigint.c
915 (bigint_to_string): Fix for negative arguments.
917 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
918 * src/base/cl_alloca.h: Likewise.
920 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
921 * src/base/digitseq/cl_asm_arm_.cc,
922 src/base/digitseq/cl_asm_mips_.cc,
923 src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
925 * src/modinteger/cl_MI_pow2.h,
926 src/modinteger/cl_MI_pow2m1.h,
927 src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
929 1999-01-18 Bruno Haible <haible@clisp.cons.org>
931 * autoconf/acgeneral.m4,
932 autoconf/acspecific.m4: Upgrade to autoconf-2.13.
933 * autoconf/config.guess, autoconf/config.sub: Likewise.
934 * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
935 a macro. Use ${ac_objext}.
936 * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
937 conforming with CL_ALLOCA.
939 1999-01-12 Bruno Haible <haible@clisp.cons.org>
941 * Version 1.0 released.