X-Git-Url: https://ginac.de/CLN/cln.git//cln.git?a=blobdiff_plain;ds=inline;f=ChangeLog;h=903ea6613bd4576cc28c85e9001c186ed3a2293c;hb=bcf970403e0a455f0dd2eeab49324acd9f2d9948;hp=47c2e1d0bc25c295a09070380dabf90f9419f9eb;hpb=661c44494608099b9f97e2724427feda30614be7;p=cln.git diff --git a/ChangeLog b/ChangeLog index 47c2e1d..903ea66 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,440 @@ +2002-05-05 Bruno Haible + + * doc/cln.tex (Building the library): Give some recommendations for + g++ 3.0 and 3.1. + + Force link-time references despite optimizations done by g++ 2.95 + and newer. + * include/cln/modules.h (CL_FORCE_LINK): New macro. + * Use CL_FORCE_LINK. + * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise. + * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise. + * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise. + * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise. + * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise. + * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy): + Likewise. + * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy): + Likewise. + * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise. + * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise. + * include/cln/rational.h (cl_RA_debug_dummy): Likewise. + * include/cln/real.h (cl_R_debug_dummy): Likewise. + * include/cln/ring.h (cl_ring_debug_dummy): Likewise. + * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy): + Likewise. + * include/cln/string.h (cl_string_debug_dummy): Likewise. + * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise. + * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise. + + Avoid g++ 3.1 warnings. + * src/base/cl_offsetof.h (offsetof): Redefine each time. + * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after . + + Avoid g++ 3.1 warnings. + * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename + where needed. + * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef + htxentry as a shortcut. + * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise. + * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise. + * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq): + Likewise. + +2002-03-15 Bruno Haible + + * cln.tex: Document problem with GNU make 3.77. + Reported by Michael Somos . + +2002-02-16 Richard Kreckel + + * cln.m4: quote macro name. + Pointed out by Roberto Bagnara. + +2002-01-20 Richard Kreckel + + * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02. + (the old one was broken on Linux/Mips.) + +2002-01-04 Richard Kreckel + + * autoconf/autoconf.m4f: get brutal in order to adhere to FHS. + * Version 1.1.4 released. + +2002-01-03 Richard Kreckel + + * autoconf/acinclude.m4: revamp MPN-matcher. + * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure, + sync with CLisp from CVS. + * autoconf/autoconf: Likewise. + * autoconf/autoconf.m4f: Likewise (new file). + * configure.ac: Likewise (new file, replaces configure.in). + * configure.in: Likewise (deleted, replaced by configure.ac). + * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13. + * src/Makefile.in: made VPATH safe for autoconf-2.52. + * include/cln/config.h.in: Add __s390__. + +2001-12-31 Richard Kreckel + + * src/base/digitseq/cl_DS.h: is not included extern "C" + any more since GMP4 has some C++ support in it. + +2001-12-14 Richard Kreckel + + * include/cln/modules.h, include/cln/object.h: add support for + s390. + * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug + on s390, provided by Gerhard Tonn. + +2001-11-05 Richard Kreckel + + * autoconf/ltmain.sh: Upgrade to libtool-1.4.2. + * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07. + * Version 1.1.3 released. + +2001-11-04 Bruno Haible + + Interoperability with gcc-3.0 -fuse-cxa-atexit. + * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether + global destructors actually exist. + * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END): + Don't hack the global destructors if there is no global destructors + function. + +2001-11-03 Richard Kreckel + + * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small + values of x, return square(x) instead of x. + * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise. + +2001-07-25 Richard Kreckel + + * Version 1.1.2 released. + +2001-07-24 Richard Kreckel + + * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator a + friend of cl_heap_hashtable. + +2001-07-22 Richard Kreckel + + * src/float/base/cl_ieee.cc: try to do magic to the FPU only if + _FPU_IEEE is really defined. + * include/cln/modules.h: change assembler labels from `label' to + `label:' on hppa, needed by Linux (see comment). + * autoconf/acinclude.m4: new file (for storing CLN-specific macros). + * Makefile.devel: adjusted. + * autoconf/aclocal.m4: regenerate. + * src/base/low/cl_low_mul.cc: moved POD variables that are declared + extern "C" elsewhere out of the namespace. + * src/base/low/cl_low_div.cc: Likewise. + +2001-06-08 Bruno Haible + + * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11. + * autoconf/aclocal.m4: Upgrade to libtool-1.4. + * autoconf/ltmain.sh: Likewise. + * autoconf/ltconfig: Remove file. + * autoconf/install-sh: New file. + * configure.in: Add AC_CONFIG_AUX_DIR call. + +2001-06-05 Richard Kreckel + + * tests/tests.cc: resolve namespace ambiguity about strcmp(). + +2001-05-31 Richard Kreckel + + * Version 1.1.1 released. + +2001-05-28 Richard Kreckel + + * cln/cln.tex: documented problems with shared library on Sparc + using gcc older than 2.95.3. + * configure.in: Fixed typos in versioning docu. + +2001-05-25 Bruno Haible + + * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate + hexadecimal constants. + +2001-05-25 Richard Kreckel + + * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol. + * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p. + * Removed LiDIA interface since that is now outdated (namespace cln) + and maintained elsewhere. + * Adjusted dates and final touches for 1.1.1. + +2001-05-19 Richard Kreckel + + * INSTALL: Update toolchain info: no egcs, some more platforms. + * doc/cln.tex: Likewise. + +2001-05-18 Richard Kreckel + + * src/base/cl_low.h: prepended variables declared inside macros + with underscore. Fixes equal_hashcode() on various platforms. + +2001-04-25 Richard Kreckel + + * src/base/cl_low.h: Added several checks if NO_ASM is defined, so + this definition becomes actually useful. This is needed for + compilation on Arm until somebody fixes the assembler files for Arm. + * src/base/digitseq/cl_asm.h: Likewise. + * src/base/digitseq/cl_asm_.cc: Likewise. + * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so + one can say `make CPPFLAGS=-DFOOBAR'. + +2001-03-26 Arvid Norberg + + * src/base/random/cl_random_from.cc: ported to beos. + +2001-03-05 Richard Kreckel + + * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness. + +2001-01-28 Richard Kreckel + + * include/cln/number.h (cl_as_N): Remove bogus comment. + +2001-01-22 Richard Kreckel + + * configure.in: Make build in separate builddir possible (again). + +2001-01-22 Richard Kreckel + + * include/cln/*.h: Change signatures of all classes' methods + cln::cl_foo::operator new(size_t, cl_foo*) to + cln::cl_foo::operator new(size_t, void*) so one can declare + std::vector, std::list etc. for + certain STL implementations (like libstdc++-v3). + +2000-12-14 Richard Kreckel + + * Version 1.1 released. + +2000-12-13 Richard Kreckel + + * */*: cl_istream -> std::istream, cl_ostream -> std::ostream. + +2000-12-05 Richard Kreckel + + * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p. + * include/cln/version.h.in, src/base/verion.cc: New files. + * configure.in: Generate include/cln/version.h. + * cln.m4: Rewrote it. Check result of cln-config without compiling. + Do cross-check library version and header version information. + +2000-12-02 Christian Bauer + + * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR. + * cln.m4, cln.spec.in: some minor fixes with respect to RPM package + building. + +2000-11-24 Richard Kreckel + + * */*: Removed problematic stdin, stdout and stderr definitions. + Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29). + +2000-11-20 Bruno Haible + + * cln-config.1: change title. + +2000-11-18 Richard Kreckel + + * cln.m4: New file. + * doc/cln.tex: Document package tools cln-config and cln.m4. + * Makefile.in: Care about cln.m4. + +2000-11-17 Richard Kreckel + + * cln-config.1: added manpage, as required by a couple of distros. + * Makefile.in, doc/Makefile.in: target install depends on installdirs. + +2000-11-16 Richard Kreckel + + * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro... + * configure.in: ...used here. + * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD... + * include/cln/types.h: ...used here. + * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS. + +2000-11-13 Richard Kreckel + + * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA, + in order to guard against an accidented configuration. + * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of + struct power_table_entry initialized as ULL instead of as UL, if + intDsize==64 (caused misprinting on MIPS w/ GMP). + * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if + HAVE_FAST_LONGLONG. + * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise. + * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival + generation of Bignum for intDsize==64 and a notreached-check at end. + * autoconf/config.guess, autoconf/config.sub: updated from FSF. + * include/cln/config.h.in: Prepared support for IA64. + * include/cln/types.h: Likewise. + * include/cln/object.h: Likewise. + * include/cln/modules.h: Likewise. + * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's + compiler claims __GNUC_MINOR__==9). + +2000-11-03 Richard Kreckel + + * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from + HAVE_DD to HAVE_FAST_LONGLONG. + * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG. + * src/base/cl_low.h: actually no need to include "cln/types.h" here. + * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD. + * src/base/random/cl_UL_random.cc (random32): a is always ULL. + +2000-11-01 Richard Kreckel + + * include/cln/object.h (cl_combine): define additional signatures, if + HAVE_LONGLONG is defined, in order to keep the compiler happy. + * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD... + * src/base/cl_macros.h (bit): ...for this macro... + * src/base/cl_macros.h (minus_bit): ...and this one. + * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD... + * src/base/cl_low.h (logcount_64): ...for this macro. + * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL. + * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug. + that turned up when intDsize==32 and cl_word_size==64. + * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast + to uint64 that turned up when intDsize==32 and cl_word_size==64. + +2000-10-29 Richard Kreckel + + * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc: + #undef stderr, if it's defined so cln::stderr isn't confused. + * src/base/input/cl_read_globals.cc: stdin should not be extern. + +2000-09-05 Richard Kreckel + + * include/cln/number.h (As): Fix it in namespace by suffixing `_As' + to the appropiate method instead of prefixing `as_'. + * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise. + * src/real/misc/cl_R_as.cc (cl_R_As): Likewise. + * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise. + * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise. + * src/float/misc/cl_F_as.cc (cl_F_As): Likewise. + * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise. + * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise. + * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise. + * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise. + +2000-09-05 Richard Kreckel + + * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for + the 0^y cases. + +2000-08-30 Richard Kreckel + + * include/cln/number.h, cl_number::_as_cl_private_thing(): removed. + Rearranged for a clearer distinction between macros and remaining + identifiers, so Cint can parse it smoothly. + +2000-08-29 Richard Kreckel + + * include/cln/number.h, the(const cl_number& x): New template + function. + +2000-08-29 Richard Kreckel + + * */*: Pushed CLN into a namespace `cln'. While doing so, the + following identifiers got their poor-man's namespace (i.e. the + prefix `cl_') stripped off: + cl_catalanconst() -> catalanconst() + cl_compare() -> compare() + cl_cos_sin() -> cos_sin() + cl_cos_sin_t -> cos_sin_t + cl_cosh_sinh() -> cosh_sinh() + cl_cosh_sinh_t -> cosh_sinh_t + cl_decoded_dfloat -> decoded_dfloat + cl_decoded_ffloat -> decoded_ffloat + cl_decoded_float -> decoded_float + cl_decoded_lfloat -> decoded_lfloat + cl_decoded_sfloat -> decoded_sfloat + cl_default_float_format -> default_float_format + cl_default_print_flags -> default_print_flags + cl_default_random_state -> default_random_state + cl_double_approx() -> double_approx() + cl_equal() -> equal() + cl_equal_hashcode() -> equal_hashcode() + cl_eulerconst() -> eulerconst() + cl_find_modint_ring() -> find_modint_ring() + cl_find_univpoly_ring() -> find_univ_poly_ring() + cl_float_approx() -> float_approx + cl_float_format() -> float_format() + cl_float_format_t -> float_format_t + cl_free_hook() -> free_hook() + cl_hermite() -> hermite() + cl_laguerre() -> laguerre() + cl_legendre() -> legandre() + cl_malloc_hook() -> malloc_hook() + cl_pi() -> pi() + cl_tschebychev() -> tschebychev() + cl_zeta() -> zeta() + NB: For functions these changes includes all signatures. + * include/*: moved to include/cln/*, stripped `cl_' off filenames. + * cln-config.in: new file. + +2000-08-26 Bruno Haible + + * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default + value, not parens. + +2000-08-18 Bruno Haible + + * include/cl_univpoly_modint.h: Fix typo. + +2000-07-13 Bruno Haible + + * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_', + used as precision marker for floats. + Reported by Keith Briggs (in 1998) and Thomas Roessler. + * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise. + * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise. + * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise. + * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise. + +2000-06-22 Bruno Haible + + * include/cl_object.h: Rename cl_word_size to cl_pointer_size. + * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6 + with N32 ABI. + (cl_word_size): New macro. + * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of + cl_word_size. + +2000-05-31 Bruno Haible + + * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry. + From a sample that fails with gcc-2.95.2 on Sparc. + * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise. + +2000-05-30 Richard Kreckel + + * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK): + New macros. + * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR, + CL_VERSION_PATCHLEVEL): New definitions. + * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig, + autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc). + * src/Makefile.in, configure.in: release-variables renamed from + CLN_* to CL_*. + * configure.in: default to build both shared and static library + (i.e. default to the most common behaviour). + +2000-05-29 Richard Kreckel + + * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote + environment around the patch of 2000-05-23. + 2000-05-29 Bruno Haible * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo. - Reported by Thomas Klausner . + Reported by Thomas Klausner . 2000-05-27 Richard Kreckel @@ -31,12 +464,6 @@ * INSTALL.generic: Clarified behaviour of --with-gmp. * autoconf/config.guess: updated from Clisp-2000-03-06 sources. -2000-05-05 Richard Kreckel - - * doc/cln.tex: Added index entries. - * doc/texinfo.tex: Upgraded to newer version 1999-10-01.07. - * doc/*: Changes triggered. - 2000-05-04 Richard Kreckel * gmp/: removed completely. From now on we are going to link