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