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