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