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