1 2002-03-15 Bruno Haible <bruno@clisp.org>
3 * cln.tex: Document problem with GNU make 3.77.
4 Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
6 2002-02-16 Richard Kreckel <kreckel@ginac.de>
8 * cln.m4: quote macro name.
9 Pointed out by Roberto Bagnara.
11 2002-01-20 Richard Kreckel <kreckel@ginac.de>
13 * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
14 (the old one was broken on Linux/Mips.)
16 2002-01-04 Richard Kreckel <kreckel@ginac.de>
18 * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
19 * Version 1.1.4 released.
21 2002-01-03 Richard Kreckel <kreckel@ginac.de>
23 * autoconf/acinclude.m4: revamp MPN-matcher.
24 * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
25 sync with CLisp from CVS.
26 * autoconf/autoconf: Likewise.
27 * autoconf/autoconf.m4f: Likewise (new file).
28 * configure.ac: Likewise (new file, replaces configure.in).
29 * configure.in: Likewise (deleted, replaced by configure.ac).
30 * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
31 * src/Makefile.in: made VPATH safe for autoconf-2.52.
32 * include/cln/config.h.in: Add __s390__.
34 2001-12-31 Richard Kreckel <kreckel@ginac.de>
36 * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
37 any more since GMP4 has some C++ support in it.
39 2001-12-14 Richard Kreckel <kreckel@ginac.de>
41 * include/cln/modules.h, include/cln/object.h: add support for
43 * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
44 on s390, provided by Gerhard Tonn.
46 2001-11-05 Richard Kreckel <kreckel@ginac.de>
48 * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
49 * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
50 * Version 1.1.3 released.
52 2001-11-04 Bruno Haible <haible@clisp.cons.org>
54 Interoperability with gcc-3.0 -fuse-cxa-atexit.
55 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
56 global destructors actually exist.
57 * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
58 Don't hack the global destructors if there is no global destructors
61 2001-11-03 Richard Kreckel <kreckel@ginac.de>
63 * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
64 values of x, return square(x) instead of x.
65 * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
67 2001-07-25 Richard Kreckel <kreckel@ginac.de>
69 * Version 1.1.2 released.
71 2001-07-24 Richard Kreckel <kreckel@ginac.de>
73 * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
74 friend of cl_heap_hashtable<htentry>.
76 2001-07-22 Richard Kreckel <kreckel@ginac.de>
78 * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
79 _FPU_IEEE is really defined.
80 * include/cln/modules.h: change assembler labels from `label' to
81 `label:' on hppa, needed by Linux (see comment).
82 * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
83 * Makefile.devel: adjusted.
84 * autoconf/aclocal.m4: regenerate.
85 * src/base/low/cl_low_mul.cc: moved POD variables that are declared
86 extern "C" elsewhere out of the namespace.
87 * src/base/low/cl_low_div.cc: Likewise.
89 2001-06-08 Bruno Haible <haible@clisp.cons.org>
91 * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
92 * autoconf/aclocal.m4: Upgrade to libtool-1.4.
93 * autoconf/ltmain.sh: Likewise.
94 * autoconf/ltconfig: Remove file.
95 * autoconf/install-sh: New file.
96 * configure.in: Add AC_CONFIG_AUX_DIR call.
98 2001-06-05 Richard Kreckel <kreckel@ginac.de>
100 * tests/tests.cc: resolve namespace ambiguity about strcmp().
102 2001-05-31 Richard Kreckel <kreckel@ginac.de>
104 * Version 1.1.1 released.
106 2001-05-28 Richard Kreckel <kreckel@ginac.de>
108 * cln/cln.tex: documented problems with shared library on Sparc
109 using gcc older than 2.95.3.
110 * configure.in: Fixed typos in versioning docu.
112 2001-05-25 Bruno Haible <haible@clisp.cons.org>
114 * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
115 hexadecimal constants.
117 2001-05-25 Richard Kreckel <kreckel@ginac.de>
119 * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
120 * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
121 * Removed LiDIA interface since that is now outdated (namespace cln)
122 and maintained elsewhere.
123 * Adjusted dates and final touches for 1.1.1.
125 2001-05-19 Richard Kreckel <kreckel@ginac.de>
127 * INSTALL: Update toolchain info: no egcs, some more platforms.
128 * doc/cln.tex: Likewise.
130 2001-05-18 Richard Kreckel <kreckel@ginac.de>
132 * src/base/cl_low.h: prepended variables declared inside macros
133 with underscore. Fixes equal_hashcode() on various platforms.
135 2001-04-25 Richard Kreckel <kreckel@ginac.de>
137 * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
138 this definition becomes actually useful. This is needed for
139 compilation on Arm until somebody fixes the assembler files for Arm.
140 * src/base/digitseq/cl_asm.h: Likewise.
141 * src/base/digitseq/cl_asm_.cc: Likewise.
142 * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
143 one can say `make CPPFLAGS=-DFOOBAR'.
145 2001-03-26 Arvid Norberg <c99ang@cs.umu.se>
147 * src/base/random/cl_random_from.cc: ported to beos.
149 2001-03-05 Richard Kreckel <kreckel@ginac.de>
151 * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
153 2001-01-28 Richard Kreckel <kreckel@ginac.de>
155 * include/cln/number.h (cl_as_N): Remove bogus comment.
157 2001-01-22 Richard Kreckel <kreckel@ginac.de>
159 * configure.in: Make build in separate builddir possible (again).
161 2001-01-22 Richard Kreckel <kreckel@ginac.de>
163 * include/cln/*.h: Change signatures of all classes' methods
164 cln::cl_foo::operator new(size_t, cl_foo*) to
165 cln::cl_foo::operator new(size_t, void*) so one can declare
166 std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
167 certain STL implementations (like libstdc++-v3).
169 2000-12-14 Richard Kreckel <kreckel@ginac.de>
171 * Version 1.1 released.
173 2000-12-13 Richard Kreckel <kreckel@ginac.de>
175 * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
177 2000-12-05 Richard Kreckel <kreckel@ginac.de>
179 * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
180 * include/cln/version.h.in, src/base/verion.cc: New files.
181 * configure.in: Generate include/cln/version.h.
182 * cln.m4: Rewrote it. Check result of cln-config without compiling.
183 Do cross-check library version and header version information.
185 2000-12-02 Christian Bauer <cbauer@ginac.de>
187 * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
188 * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
191 2000-11-24 Richard Kreckel <kreckel@ginac.de>
193 * */*: Removed problematic stdin, stdout and stderr definitions.
194 Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
196 2000-11-20 Bruno Haible
198 * cln-config.1: change title.
200 2000-11-18 Richard Kreckel <kreckel@ginac.de>
203 * doc/cln.tex: Document package tools cln-config and cln.m4.
204 * Makefile.in: Care about cln.m4.
206 2000-11-17 Richard Kreckel <kreckel@ginac.de>
208 * cln-config.1: added manpage, as required by a couple of distros.
209 * Makefile.in, doc/Makefile.in: target install depends on installdirs.
211 2000-11-16 Richard Kreckel <kreckel@ginac.de>
213 * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
214 * configure.in: ...used here.
215 * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
216 * include/cln/types.h: ...used here.
217 * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
219 2000-11-13 Richard Kreckel <kreckel@ginac.de>
221 * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
222 in order to guard against an accidented configuration.
223 * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of
224 struct power_table_entry initialized as ULL instead of as UL, if
225 intDsize==64 (caused misprinting on MIPS w/ GMP).
226 * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if
228 * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
229 * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival
230 generation of Bignum for intDsize==64 and a notreached-check at end.
231 * autoconf/config.guess, autoconf/config.sub: updated from FSF.
232 * include/cln/config.h.in: Prepared support for IA64.
233 * include/cln/types.h: Likewise.
234 * include/cln/object.h: Likewise.
235 * include/cln/modules.h: Likewise.
236 * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's
237 compiler claims __GNUC_MINOR__==9).
239 2000-11-03 Richard Kreckel <kreckel@ginac.de>
241 * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
242 HAVE_DD to HAVE_FAST_LONGLONG.
243 * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
244 * src/base/cl_low.h: actually no need to include "cln/types.h" here.
245 * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
246 * src/base/random/cl_UL_random.cc (random32): a is always ULL.
248 2000-11-01 Richard Kreckel <kreckel@ginac.de>
250 * include/cln/object.h (cl_combine): define additional signatures, if
251 HAVE_LONGLONG is defined, in order to keep the compiler happy.
252 * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
253 * src/base/cl_macros.h (bit): ...for this macro...
254 * src/base/cl_macros.h (minus_bit): ...and this one.
255 * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
256 * src/base/cl_low.h (logcount_64): ...for this macro.
257 * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
258 * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
259 that turned up when intDsize==32 and cl_word_size==64.
260 * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
261 to uint64 that turned up when intDsize==32 and cl_word_size==64.
263 2000-10-29 Richard Kreckel <kreckel@ginac.de>
265 * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
266 #undef stderr, if it's defined so cln::stderr isn't confused.
267 * src/base/input/cl_read_globals.cc: stdin should not be extern.
269 2000-09-05 Richard Kreckel <kreckel@ginac.de>
271 * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
272 to the appropiate method instead of prefixing `as_'.
273 * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
274 * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
275 * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
276 * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
277 * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
278 * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
279 * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
280 * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
281 * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
283 2000-09-05 Richard Kreckel <kreckel@ginac.de>
285 * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
288 2000-08-30 Richard Kreckel <kreckel@ginac.de>
290 * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
291 Rearranged for a clearer distinction between macros and remaining
292 identifiers, so Cint can parse it smoothly.
294 2000-08-29 Richard Kreckel <kreckel@ginac.de>
296 * include/cln/number.h, the(const cl_number& x): New template
299 2000-08-29 Richard Kreckel <kreckel@ginac.de>
301 * */*: Pushed CLN into a namespace `cln'. While doing so, the
302 following identifiers got their poor-man's namespace (i.e. the
303 prefix `cl_') stripped off:
304 cl_catalanconst() -> catalanconst()
305 cl_compare() -> compare()
306 cl_cos_sin() -> cos_sin()
307 cl_cos_sin_t -> cos_sin_t
308 cl_cosh_sinh() -> cosh_sinh()
309 cl_cosh_sinh_t -> cosh_sinh_t
310 cl_decoded_dfloat -> decoded_dfloat
311 cl_decoded_ffloat -> decoded_ffloat
312 cl_decoded_float -> decoded_float
313 cl_decoded_lfloat -> decoded_lfloat
314 cl_decoded_sfloat -> decoded_sfloat
315 cl_default_float_format -> default_float_format
316 cl_default_print_flags -> default_print_flags
317 cl_default_random_state -> default_random_state
318 cl_double_approx() -> double_approx()
319 cl_equal() -> equal()
320 cl_equal_hashcode() -> equal_hashcode()
321 cl_eulerconst() -> eulerconst()
322 cl_find_modint_ring() -> find_modint_ring()
323 cl_find_univpoly_ring() -> find_univ_poly_ring()
324 cl_float_approx() -> float_approx
325 cl_float_format() -> float_format()
326 cl_float_format_t -> float_format_t
327 cl_free_hook() -> free_hook()
328 cl_hermite() -> hermite()
329 cl_laguerre() -> laguerre()
330 cl_legendre() -> legandre()
331 cl_malloc_hook() -> malloc_hook()
333 cl_tschebychev() -> tschebychev()
335 NB: For functions these changes includes all signatures.
336 * include/*: moved to include/cln/*, stripped `cl_' off filenames.
337 * cln-config.in: new file.
339 2000-08-26 Bruno Haible <haible@clisp.cons.org>
341 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
344 2000-08-18 Bruno Haible <haible@clisp.cons.org>
346 * include/cl_univpoly_modint.h: Fix typo.
348 2000-07-13 Bruno Haible <haible@clisp.cons.org>
350 * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
351 used as precision marker for floats.
352 Reported by Keith Briggs (in 1998) and Thomas Roessler.
353 * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
354 * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
355 * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
356 * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
358 2000-06-22 Bruno Haible <haible@clisp.cons.org>
360 * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
361 * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
363 (cl_word_size): New macro.
364 * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
367 2000-05-31 Bruno Haible <haible@clisp.cons.org>
369 * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
370 From a sample that fails with gcc-2.95.2 on Sparc.
371 * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
373 2000-05-30 Richard Kreckel <kreckel@ginac.de>
375 * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
377 * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
378 CL_VERSION_PATCHLEVEL): New definitions.
379 * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
380 autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
381 * src/Makefile.in, configure.in: release-variables renamed from
383 * configure.in: default to build both shared and static library
384 (i.e. default to the most common behaviour).
386 2000-05-29 Richard Kreckel <kreckel@ginac.de>
388 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
389 environment around the patch of 2000-05-23.
391 2000-05-29 Bruno Haible <haible@clisp.cons.org>
393 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
394 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
396 2000-05-27 Richard Kreckel <kreckel@ginac.de>
398 * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
399 src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
401 2000-05-24 Richard Kreckel <kreckel@ginac.de>
403 * autoconf/config.*: Updated to new version from FSF
404 (the new libtool wants this).
405 * src/Makefile.in: added $(LDFLAGS) to link step.
406 * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted
409 2000-05-23 Bruno Haible <haible@clisp.cons.org>
411 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
412 host_vendor, host_os correctly if $host has more than two hyphens.
414 2000-05-19 Richard Kreckel <kreckel@ginac.de>
416 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
417 better match present-day CPUs whenever GMP3 is used.
418 * src/base/digitseq/cl_DS_div.cc: dto.
419 * src/TUNING: Added comment about order of tuning.
420 * configure, configure.in: Safer GMP3-detection.
421 * INSTALL.generic: Clarified behaviour of --with-gmp.
422 * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
424 2000-05-04 Richard Kreckel <kreckel@ginac.de>
426 * gmp/: removed completely. From now on we are going to link
427 externally against libgmp3.0 or above!
428 * configure, configure.in, Makefile.in, */Makeflags: removed support
429 of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
430 setting $CPPFLAGS instead.
431 * Makefile.in: Added libtool inter-library dependency for -lgmp and
432 conforming interface versioning (-version-info).
433 * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
436 2000-02-22 Bruno Haible <haible@clisp.cons.org>
438 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
439 parameter passing was changed for the MIPS n32 ABI.
441 2000-01-24 Richard Kreckel <kreckel@ginac.de>
443 * gmp/*: Replaced the complete mpn sources with the ones from
444 Debian since they are maintained while the ones from FSF
445 aren't and there were problems on some architectures, PowerPC
446 in particular. See the file gmp/README.CLN. This way the
447 hard links in this directory have vanished, they were causing
448 trouble for people working in AFS. This became necessary for
449 Debian, because there it woudn't compile on PPC.
451 2000-01-13 Richard Kreckel <kreckel@ginac.de>
453 * Version 1.0.3 released.
455 2000-01-13 Richard Kreckel <kreckel@ginac.de>
457 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
458 use __attribute__ ((__noreturn__)) instead of the __volatile__
460 (nonreturning): Remove macro.
461 * include/*: Minor fixes to stop -ansi -pedantic from complaining.
462 * include/cl_integer.h: (doublefactorial): New declaration.
463 * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
465 1999-12-18 Bruno Haible <haible@clisp.cons.org>
467 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
469 * autoconf/ltconfig: Improve support for recent FreeBSD 3.
470 * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
471 'const T', to match definition in src/vector/cl_GV_number.cc.
472 Reported by Duncan Simpson <dps@io.stargate.co.uk>.
473 * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
476 1999-09-07 Bruno Haible <haible@clisp.cons.org>
478 * Version 1.0.2 released.
480 1999-09-06 Bruno Haible <haible@clisp.cons.org>
482 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
483 boolean expression, write alternatives ending with either
484 "return cl_true;" or "return cl_false;". This way, g++ does a
485 better job inlining it.
486 * src/float/cl_F.h (longfloatp): Likewise.
487 * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
488 * src/complex/cl_C.h (realp, complexp): Likewise.
490 1999-09-05 Bruno Haible <haible@clisp.cons.org>
492 * include/cl_integer.h (cl_equal_hashcode): New declaration.
493 * include/cl_rational.h (cl_equal_hashcode): New declaration.
494 * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
495 * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
496 * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
497 * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
498 * include/cl_float.h (cl_equal_hashcode): New declaration.
499 * include/cl_real.h (cl_equal_hashcode): New declaration.
500 * include/cl_complex.h (cl_equal_hashcode): New declaration.
501 * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
502 * src/integer/misc/cl_I_eqhashcode.cc: New file.
503 * src/rational/misc/cl_RA_eqhashcode.cc: New file.
504 * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
505 * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
506 * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
507 * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
508 * src/float/misc/cl_F_eqhashcode.cc: New file.
509 * src/real/misc/cl_R_eqhashcode.cc: New file.
510 * src/complex/misc/cl_C_eqhashcode.cc: New file.
511 * doc/cln.tex: Document `cl_equal_hashcode'.
513 1999-09-05 Bruno Haible <haible@clisp.cons.org>
515 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
516 (cl_number_ring): New class.
517 (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
518 (instanceof): New function.
519 * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
520 * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
521 * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
522 * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
523 * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
524 * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
525 * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
526 * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
527 * doc/cln.tex: Document `instanceof'.
529 1999-09-05 Bruno Haible <haible@clisp.cons.org>
531 * include/cl_rational.h (numerator, denominator): New declarations.
532 * src/rational/elem/cl_RA_numerator.cc: New file.
533 * src/rational/elem/cl_RA_denominator.cc: New file.
534 * include/cl_integer.h (numerator, denominator): New inline functions.
535 * doc/cln.tex: Document `numerator' and `denominator'.
537 1999-09-05 Bruno Haible <haible@clisp.cons.org>
539 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
541 * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
543 1999-09-05 Bruno Haible <haible@clisp.cons.org>
545 * include/cl_config.h.in: Support for sparc64 CPU.
546 * include/cl_modules.h: Likewise.
547 * include/cl_types.h: Likewise.
548 * include/cl_object.h: Likewise.
549 * include/cl_GV.h: Likewise.
550 * src/Makefile.in: Likewise.
551 * src/base/cl_alloca.h: Likewise.
552 * src/base/cl_macros.h: Likewise.
553 * src/base/cl_sysdep.h: Likewise.
554 * src/base/cl_low.h: Likewise.
555 * src/base/digitseq/cl_asm.h: Likewise.
556 * src/base/digitseq/cl_asm_.cc: Likewise.
557 * src/base/digitseq/cl_asm_sparc64.h: New file.
558 * src/base/digitseq/cl_asm_sparc64_.cc: New file.
559 * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
560 * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
561 * src/polynomial/elem/cl_UP_GF2.h: Likewise.
562 * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
564 1999-09-04 Bruno Haible <haible@clisp.cons.org>
566 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
567 Use the `orn' instruction.
569 1999-08-14 Bruno Haible <haible@clisp.cons.org>
571 Assume all platforms have <stdlib.h> and clock_t.
572 * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
573 * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
574 * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
575 * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
576 * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
578 1999-07-18 Bruno Haible <haible@clisp.cons.org>
580 * gmp/config.guess: Link to autoconf/config.guess.
581 gmp/config.sub: Link to autoconf/config.sub.
582 Needed for Win32 platforms.
584 1999-07-17 Bruno Haible <haible@clisp.cons.org>
586 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
587 "sparc64" according to the C compiler, not the uname result.
589 1999-06-17 Bruno Haible <haible@clisp.cons.org>
591 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
592 COUNTER_LOOPS version, fortunately not used yet.
594 * include/cl_modules.h: Prepare for gcc version 3.
596 1999-06-12 Bruno Haible <haible@clisp.cons.org>
598 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
599 Change the last call from I_I_to_RT to I_I_to_RA.
601 1999-06-09 Bruno Haible <haible@clisp.cons.org>
603 * Version 1.0.1 released.
605 1999-06-09 Bruno Haible <haible@clisp.cons.org>
607 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
610 1999-06-08 Bruno Haible <haible@clisp.cons.org>
612 * autoconf/intparam.c (printf_underscored): Change argument type to
614 * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
615 (CL_PROVIDE, CL_PROVIDE_END): Use them.
616 * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
617 * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
618 * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
619 cast a cl_I to void here. Works around a bug in g++-2.95.
620 * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
621 * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
622 dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
624 * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
626 * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
627 * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
628 DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
629 * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
632 1999-06-01 Bruno Haible <haible@clisp.cons.org>
634 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
637 1999-05-29 Bruno Haible <haible@clisp.cons.org>
639 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
641 * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
642 * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
643 OpenBSD like NetBSD, and Linux/ELF like SVR4.
645 1999-05-16 Bruno Haible <haible@clisp.cons.org>
647 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
648 syntax on AIX systems and new assembler syntax on non-AIX systems.
650 1999-05-01 Bruno Haible <haible@clisp.cons.org>
652 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
653 version from GNU CVS.
655 1999-04-24 Bruno Haible <haible@clisp.cons.org>
657 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
658 either operand is a positive fixnum, O(1) instead of O(N).
659 * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
660 * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
663 1999-04-14 Bruno Haible <haible@clisp.cons.org>
665 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
666 ctor/dtor needs to be exported.
667 * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
668 * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
670 (CL_GLOBALIZE_LABEL): New macro.
671 (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
672 (CL_PROVIDE): Update.
674 1999-04-12 Bruno Haible <haible@clisp.cons.org>
676 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
677 errors ("unterminated string or character constant").
678 ($(ASMFILES_LO)): On HPPA, try with various settings of
679 COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
681 1999-04-11 Bruno Haible <haible@clisp.cons.org>
683 * INSTALL: Mention gmp problems on MIPS.
684 * doc/cln.tex: Likewise.
686 1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
688 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
690 * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
691 (CL_GLOBALIZE_ASM_LABEL): New macro.
692 (CL_PROVIDE): Use it.
693 * src/base/random/cl_random_from.cc: Handle WIN32.
694 * src/timing/cl_t_current.cc: Likewise.
696 1999-03-15 Bruno Haible <haible@clisp.cons.org>
698 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
699 (main8): Adapt for C++.
701 1999-03-09 Bruno Haible <haible@clisp.cons.org>
703 * INSTALL: Mention egcs-1.1 problems on Sparc.
704 * doc/cln.tex: Likewise.
706 1999-03-08 Bruno Haible <haible@clisp.cons.org>
708 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
711 1999-02-25 Bruno Haible <haible@clisp.cons.org>
713 * autoconf/aclocal.m4: In test programs, declare `int main()', not
716 * lidia-interface/src/interfaces/integers/cln/bigint.c
717 (bigint_to_string): Fix for negative arguments.
719 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
720 * src/base/cl_alloca.h: Likewise.
722 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
723 * src/base/digitseq/cl_asm_arm_.cc,
724 src/base/digitseq/cl_asm_mips_.cc,
725 src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
727 * src/modinteger/cl_MI_pow2.h,
728 src/modinteger/cl_MI_pow2m1.h,
729 src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
731 1999-01-18 Bruno Haible <haible@clisp.cons.org>
733 * autoconf/acgeneral.m4,
734 autoconf/acspecific.m4: Upgrade to autoconf-2.13.
735 * autoconf/config.guess, autoconf/config.sub: Likewise.
736 * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
737 a macro. Use ${ac_objext}.
738 * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
739 conforming with CL_ALLOCA.
741 1999-01-12 Bruno Haible <haible@clisp.cons.org>
743 * Version 1.0 released.