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