]> www.ginac.de Git - cln.git/blob - ChangeLog
b99032ea6f7e68216c9e56d9601aea331b0352af
[cln.git] / ChangeLog
1 2005-08-27  Bruno Haible  <bruno@clisp.org>
2
3         * modules.h (CL_OUTPUT_LABEL): Work around redundant duplication
4         of basic blocks by g++ 4.0.
5         See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23345>.
6
7 2005-08-27  Bruno Haible  <bruno@clisp.org>
8
9         Make it possible to cross-compile CLN.
10         * m4/intparam.m4: New file.
11         * m4/floatparam.m4: New file.
12         * autoconf/aclocal.m4: Include both.
13         (CL_MACHINE): Add an additional CROSS_MACRO parameter.
14         * configure.ac (CL_MACHINE): When cross-compiling, use
15         CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
16
17 2005-08-27  Bruno Haible  <bruno@clisp.org>
18
19         Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
20         * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
21         compiling, use the test code from gnulib.
22
23 2005-08-27  Bruno Haible  <bruno@clisp.org>
24
25         * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
26
27 2005-08-16  Richard B. Kreckel  <kreckel@ginac.de>
28
29         The patch of 2005-05-01 made it impossible to test the type of a cl_UP
30         by comparing with &cl_class_univpoly_ring. We need an alternative:
31         * include/cln/object.h (cl_class_flags_modint_ring): New #define...
32         * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
33         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
34         * src/polynomial/elem/cl_UP_MI.h: Likewise.
35         * src/polynomial/elem/cl_UP_gen.h: Likewise.
36         * src/polynomial/elem/cl_UP_number.h: Likewise.
37
38 2005-08-15  Richard B. Kreckel  <kreckel@ginac.de>
39
40         * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
41         * configure.ac: ...used here for setting ASMFLAGS...
42         * src/Makefile.in: ...which are used here.
43
44 2005-08-02  Andreas Jochens  <aj@andaco.de>
45
46         * include/cln/config.h.in: Add support for PowerPC 64 CPU.
47         * include/cln/modules.h: Likewise.
48         * include/cln/object.h: Likewise.
49         * include/cln/types.h: Likewise.
50
51 2005-07-24  Richard B. Kreckel  <kreckel@ginac.de>
52
53         Make out of the box build on x86_64 system with complete 32 bit
54         userland possible
55         * include/cln/config.h.in: Don't #define __x86_64__ when
56         __i386__ is defined.
57         * src/base/digitseq/cl_asm_x86_64_.cc: New file.
58         * doc/cln.tex: Revert workaround description introduced 2005-05-02.
59
60 2005-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
61
62         * Makefile.in: Don't enter nonexisting directories.
63
64 2005-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
65
66         Speed up the linking step
67         * src/Makefile.in: Use -objectlist for linking libcln.la.
68
69 2005-05-15  Richard B. Kreckel  <kreckel@ginac.de>
70
71         * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
72         * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
73
74 2005-05-02  Richard B. Kreckel  <kreckel@ginac.de>
75
76         * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
77         userland.
78
79 2005-05-01  Richard B. Kreckel  <kreckel@ginac.de>
80
81         Fix crashes in find_univpoly_ring and related functions
82         * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
83         remove declaration of cl_class cl_class_modint_ring.
84         * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
85         remove declaration of cl_class_univpoly_ring.
86         * include/cln/object.h: cl_class_flags_modint_ring: New #define...
87         * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
88         * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
89         * src/modinteger/cl_MI_fix29.h: Likewise.
90         * src/modinteger/cl_MI_fix32.h: Likewise.
91         * src/modinteger/cl_MI_int32.h: Likewise.
92         * src/modinteger/cl_MI_montgom.h: Likewise.
93         * src/modinteger/cl_MI_pow2: Likewise.
94         * src/modinteger/cl_MI_pow2m1.h: Likewise.
95         * src/modinteger/cl_MI_pow2p1.h: Likewise.
96         * src/modinteger/cl_MI_std.h: Likewise.
97         * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
98         cl_class_flags_modint_ring, not with cl_class_modint_ring.
99         * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
100         * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
101         * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
102         * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
103         Reported by Ralf Goertz <R_Goertz@web.de>.
104
105 2005-04-29  Richard B. Kreckel  <kreckel@ginac.de>
106             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
107
108         * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
109
110 2005-04-24  Richard B. Kreckel  <kreckel@ginac.de>
111
112         Make GCC compiler flags default to -O
113         * m4/cc.m4: New file...
114         * configure.ac: ...used here.
115         * autoconf/aclocal.m4: Regenerate.
116
117 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
118
119         * include/cln/string.h: Declare cl_string.
120
121 2005-03-17  Richard B. Kreckel  <kreckel@ginac.de>
122
123         * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
124         * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
125         * autoconf/aclocal.m4: Regenerate.
126
127 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
128
129         * src/Makefile.in: Use $CXX instead of $CC when linking.
130
131 2005-02-27  Richard B. Kreckel  <kreckel@ginac.de>
132         
133         * examples/perfnum.cc: update to presumed 42st Mersenne prime.
134
135 2004-11-28  Richard B. Kreckel  <kreckel@ginac.de>
136
137         Disambiguate binary operators of CLN types with float/double
138         * include/cln/dfloat.h: Add binary operator overloads for arguments of
139         type double.
140         * include/cln/ffloat.h: Likewise, for arguments of type float.
141         * include/cln/float.h: Likewise, both for arguments of types double and
142         float.
143         * include/cln/real.h: Likewise.
144         Reported by Isidro CachadiƱa GutiĆ©rrez <icacha@unex.es>.
145
146 2004-11-03  Richard B. Kreckel  <kreckel@ginac.de>
147
148         * Version 1.1.9 released.
149
150 2004-10-28  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
151
152         * src/Makefile.in: Let config.status set LDFLAGS.
153
154 2004-10-27  Peter Breitenlohner  <peb@mppmu.mpg.de>
155
156         * cln.pc.in: Fix typo.
157         * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
158         cln-config.  Allows us to do special things to binaries, like
159         installing them with install -s.
160         * doc/Makefile.in: add/remove the cln.info from the installed
161         $(infodir)/dir unless this is debian install-info (code copied from
162         what GNU automake would produce).
163
164 2004-10-26  Richard B. Kreckel  <kreckel@ginac.de>
165
166         * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
167         that caused radix specifiers to not work when reading from a stream.
168         * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
169         * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
170         * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
171         * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
172
173 2004-10-25  Richard B. Kreckel  <kreckel@ginac.de>
174
175         * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
176
177 2004-10-24  Richard B. Kreckel  <kreckel@ginac.de>
178
179         * src/base/cl_low.h: Add mul and div macros for x86_64.
180
181 2004-10-23  Richard B. Kreckel  <kreckel@ginac.de>
182
183         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
184         new code for base power of two.
185
186 2004-10-22  Richard B. Kreckel  <kreckel@ginac.de>
187
188         * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
189         overwriting problem. That was the real cause for Debian bug#246319.
190         * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
191         for the bug fixed above.
192
193 2004-10-20  Richard B. Kreckel  <kreckel@ginac.de>
194
195         * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
196
197 2004-10-12  Richard B. Kreckel  <kreckel@ginac.de>
198
199         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
200         the base is a power of two.
201
202 2004-10-05  Richard B. Kreckel  <kreckel@ginac.de>
203
204         * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
205
206 2004-09-27  Richard B. Kreckel  <kreckel@ginac.de>
207
208         Support for little-endian Mips, second shot
209         * src/base/digitseq/cl_asm_mipsel_.cc: New file...
210         * src/base/digitseq/cl_asm_cc: ...used here.
211         * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
212         * include/cln/object.h: Set alignment for mipsel explicitly.
213
214 2004-09-05  Richard B. Kreckel  <kreckel@ginac.de>
215
216         Support for little-endian Mips
217         * include/cln/config.h.in: Add __mipsel__.
218         * include/cln/modules.h: For Mips, this is endianness-agnostic.
219         * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
220         Mask out assembler for little-endian Mips.
221
222 2004-08-30  Bruno Haible  <bruno@clisp.org>
223
224         * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
225         * benchmarks/timebench2.results: Add recent PowerPC G4 results.
226
227 2004-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
228
229         * examples/e.cc: remove extra semicolon.
230
231 2004-08-25  Bruno Haible  <bruno@clisp.org>
232
233         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
234         * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
235         2004-08-22  Bruno Haible  <bruno@clisp.org>
236                 * m4/libtool.m4: Add support for Comeau C++ on Linux.
237                 Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
238         * autoconf/aclocal.m4: Regenerate.
239
240 2004-08-19  Bruno Haible  <bruno@clisp.org>
241
242         * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
243         converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
244         MacOS X.
245         Reported by Darren Bane <darren.bane@ul.ie>.
246
247 2004-07-01  Richard B. Kreckel  <kreckel@ginac.de>
248
249         * Version 1.1.8 released.
250
251 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
252
253         * src/base/cl_macros.h: alloca(3) has size_t argument type.
254
255 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
256
257         * include/cln/floatformat.h: Do define a type here.
258
259 2004-06-27  Richard B. Kreckel  <kreckel@ginac.de>
260
261         * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
262
263 2004-06-23  Bruno Haible  <bruno@clisp.org>
264
265         * configure.ac: Pretend ftime() is not available. Needed by
266         CL_TIMES_CLOCK.
267
268 2004-06-21  Ralf Stephan  <ralf@ark.in-berlin.de>
269
270         * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
271
272 2004-06-18  Richard B. Kreckel  <kreckel@ginac.de>
273
274         * rational/transcendental/cl_RA_logp.cc: fix bug where base is
275         reciprocal of an integer.
276         Reported by Niklas Knutsson <nq@altern.org>.
277
278 2004-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
279
280         * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
281         src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
282         Make template specializations explicit.
283
284 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
285
286         * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
287         src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
288         src/real/input/cl_R_read.cc:  Remove unused labels.
289
290 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
291
292         * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
293         benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
294         benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
295         examples/atan_recip.cc, examples/atanh_recip.cc,
296         examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
297         examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
298         include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
299         include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
300         src/base/cl_alloca.h, src/base/cl_malloc.cc,
301         src/base/random/cl_random_from.cc,
302         src/base/string/cl_spushstring_append.cc,
303         src/base/string/cl_spushstring_push.cc,
304         src/base/string/cl_st_debug.cc,
305         src/base/string/input/cl_st_gettoken.cc,
306         src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
307         src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
308         src/rational/input/cl_RA_read.cc,
309         src/real/format-output/cl_fmt_integer.cc,
310         src/real/format-output/cl_fmt_paddedstring.cc,
311         src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
312         src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
313         tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
314         tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
315         tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
316         tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
317         tests/timeLFln-compare.cc, tests/timeLFln.cc,
318         tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
319         tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
320         tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
321         tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
322         tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
323         tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
324         tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
325         tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
326         tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
327         tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
328         tests/timezeta3.cc: Change all C include headers to ISO style
329         within C++ code.
330
331 2004-06-10  Richard B. Kreckel  <kreckel@ginac.de>
332
333         * examples/perfnum.cc: update to presumed 41st Mersenne prime.
334
335 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
336
337         * Version 1.1.7 released.
338
339 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
340
341         * examples/pi.cc and examples/pi.1: New files.
342         * examples/Makefile.in: Build the pi executable.
343
344 2004-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
345
346         * src/Makefile.in: Fix for parallel build: wait for subdir objects to
347         be finished before creating the library.
348
349 2004-04-30  Richard B. Kreckel  <kreckel@ginac.de>
350
351         * src/integer/output/cl_I_print.cc (print_integer): workaround
352         GCC compiler bug (cf. Debian bug#246319).
353
354 2004-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
355
356         * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
357         enabled.
358
359 2004-03-08  Bruno Haible  <bruno@clisp.org>
360
361         * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
362         underflow condition.
363         * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
364         uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
365
366 2004-03-04  Richard B. Kreckel  <kreckel@ginac.de>
367
368         * Makefile.in (install): Add ${srcdir} for cln.m4.
369         * m4/gmp.m4: quote macro names.
370         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
371
372 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
373
374         * Version 1.1.6 released.
375
376 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
377
378         * include/cln/univpoly.h, include/cln/univpoly_complex.h,
379           include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
380           include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
381           src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
382           src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
383           src/polynomial/elem/cl_UP_number.h (ldegree): New function.
384         * doc/cln.tex: Document `ldegree'.
385
386 2003-12-29  Richard B. Kreckel  <kreckel@ginac.de>
387
388         Rework of autoconfiscation infrastructure
389         * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
390         * autoconf/ltmain.sh: Update to GNU version 1.4.3.
391         * autoconf/autoconf: Remove (from now on we assume autoconf is
392           installed properly on the sytem).
393         * autoconf/autoconf.m4: Likewise.
394         * autoconf/autoconf.m4f: Likewise.
395         * autoconf/acgeneral.m4: Likewise.
396         * autoconf/acspecific.m4: Likewise.
397         * autoconf/aclocal.m4: Regenerate.
398         * autoconf/acinclude.m4: Remove (while moving the macros...)
399         * m4/gmp.m4: New file (...to here).
400         * Makefile.devel: Update to new scheme.
401         * configure.ac: Likewise.
402         * include/cln/GV_integer.h: Assume template specializations work.
403         * include/cln/GV_modinteger.h: Likewise.
404         * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
405         * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
406         * src/base/random/cl_random_from.cc: Likewise.
407         * src/timing/cl_base_config.h.in: Likewise.
408         * src/timing/cl_t_current.cc: Likewise.
409
410 2003-12-27  Richard B. Kreckel  <kreckel@ginac.de>
411
412         * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
413           argument is zero.
414         * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
415         * src/polynomial/cl_UP_number.h (num_minus): Likewise.
416         Reported by Munagala Ramanath <amberarrow@yahoo.com>.
417
418 2003-12-02  Richard B. Kreckel  <kreckel@ginac.de>
419
420         * examples/perfnum.cc: update to presumed 40th Mersenne prime.
421
422 2003-11-20  Christian Bauer  <cbauer@ginac.de>
423
424         Added pkg-config support
425         * cln.pc.in: New file.
426         * Makefile.in: Take care of cln.pc.
427         * configure.ac: Likewise.
428
429 2003-08-06  Richard B. Kreckel  <kreckel@ginac.de>
430
431         * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
432         Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
433
434 2003-08-01  Richard Kreckel  <kreckel@ginac.de>
435
436         More dependent base resolution issues
437         * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()): 
438         portable syntactic simplification.
439         * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
440         * src/base/hash/cl_hash1.h: Likewise for member functions.
441         * src/base/hash/cl_hash2.h: Likewise.
442         * src/base/hash/cl_hashuniq.h: Likewise.
443         * src/base/hash/cl_hashuniqweak.h: Likewise.
444         * src/base/hash/cl_hash.h: Revert explicit static member function
445         lookup since that was GCC's fault.
446         * src/base/hash/cl_hash2weak.h: Likewise.
447         * src/base/hash/cl_hashuniqweak.h: Likewise.
448
449 2003-06-29  Richard Kreckel  <kreckel@ginac.de>
450
451         Dependent base resolution needed for GCC-3.4
452         * include/cln/GV.h: Preceed inherited members with this->.
453         * include/cln/SV.h: Likewise.
454         * include/cln/object.h: Likewise.
455         * src/base/hash/cl_hash1.h: Likewise.
456         * src/base/hash/cl_hash1weak.h: Likewise.
457         * src/base/hash/cl_hash2.h: Likewise.
458         * src/base/hash/cl_hashuniq.h: Likewise.
459         * src/base/hash/cl_hash.h: Make lookup of static member function 
460         explicit.
461         * src/base/hash/cl_hash2weak.h: Likewise.
462         * src/base/hash/cl_hashuniqweak.h: Likewise.
463         * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
464
465 2003-02-24  Bruno Haible  <bruno@clisp.org>
466
467         * src/base/random/cl_random_from.cc (random_state::random_state): Add
468         support for MacOS X.
469         * src/modinteger/cl_MI.cc: #undef _R.
470         Reported by Erann Gat <gat@jpl.nasa.gov>.
471
472 2002-08-03  Joerg Arndt  <jj@suse.de>
473
474         * include/cln/config.h.in: Add support for x86_64 CPU.
475         * include/cln/modules.h: Likewise.
476         * include/cln/types.h: Likewise.
477         * include/cln/object.h: Likewise.
478
479 2002-06-08  Richard Kreckel  <kreckel@ginac.de>
480
481         * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
482         m68k Assembler routines.
483         * src/base/digitseq/cl_asm_.cc: Likewise.
484
485 2002-05-28  Richard Kreckel  <kreckel@ginac.de>
486
487         * Version 1.1.5 released.
488
489 2002-05-27  Richard Kreckel  <kreckel@ginac.de>
490
491         * include/cln/modules.h (CL_CONCATENATE): New macro.
492
493 2002-05-10  Richard Kreckel  <kreckel@ginac.de>
494
495         * doc/cln.tex (Building the library): Update recommendations for 
496         compiling on Tru64 using g++ 3.0 and 3.1.
497         * README: Update homepage.
498
499 2002-05-05  Bruno Haible  <bruno@clisp.org>
500
501         * doc/cln.tex (Building the library): Give some recommendations for
502         g++ 3.0 and 3.1.
503
504         Force link-time references despite optimizations done by g++ 2.95
505         and newer.
506         * include/cln/modules.h (CL_FORCE_LINK): New macro.
507         * Use CL_FORCE_LINK.
508         * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
509         * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
510         * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
511         * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
512         * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
513         * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
514         Likewise.
515         * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
516         Likewise.
517         * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
518         * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
519         * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
520         * include/cln/real.h (cl_R_debug_dummy): Likewise.
521         * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
522         * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
523         Likewise.
524         * include/cln/string.h (cl_string_debug_dummy): Likewise.
525         * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
526         * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
527
528         Avoid g++ 3.1 warnings.
529         * src/base/cl_offsetof.h (offsetof): Redefine each time.
530         * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
531
532         Avoid g++ 3.1 warnings.
533         * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
534         where needed.
535         * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
536         htxentry as a shortcut.
537         * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
538         * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
539         * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
540         Likewise.
541
542 2002-03-15  Bruno Haible  <bruno@clisp.org>
543
544         * cln.tex: Document problem with GNU make 3.77.
545         Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
546
547 2002-02-16  Richard Kreckel  <kreckel@ginac.de>
548
549         * cln.m4: quote macro name.
550           Pointed out by Roberto Bagnara.
551
552 2002-01-20  Richard Kreckel  <kreckel@ginac.de>
553
554         * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
555           (the old one was broken on Linux/Mips.)
556
557 2002-01-04  Richard Kreckel  <kreckel@ginac.de>
558
559         * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
560         * Version 1.1.4 released.
561
562 2002-01-03  Richard Kreckel  <kreckel@ginac.de>
563
564         * autoconf/acinclude.m4: revamp MPN-matcher.
565         * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
566           sync with CLisp from CVS.
567         * autoconf/autoconf: Likewise.
568         * autoconf/autoconf.m4f: Likewise (new file).
569         * configure.ac: Likewise (new file, replaces configure.in).
570         * configure.in: Likewise (deleted, replaced by configure.ac).
571         * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
572         * src/Makefile.in: made VPATH safe for autoconf-2.52.
573         * include/cln/config.h.in: Add __s390__.
574
575 2001-12-31  Richard Kreckel  <kreckel@ginac.de>
576
577         * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
578           any more since GMP4 has some C++ support in it.
579
580 2001-12-14  Richard Kreckel  <kreckel@ginac.de>
581
582         * include/cln/modules.h, include/cln/object.h: add support for
583           s390.
584         * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
585           on s390, provided by Gerhard Tonn.
586
587 2001-11-05  Richard Kreckel  <kreckel@ginac.de>
588
589         * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
590         * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
591         * Version 1.1.3 released.
592
593 2001-11-04  Bruno Haible  <haible@clisp.cons.org>
594
595         Interoperability with gcc-3.0 -fuse-cxa-atexit.
596         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
597           global destructors actually exist.
598         * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
599           Don't hack the global destructors if there is no global destructors
600           function.
601
602 2001-11-03  Richard Kreckel  <kreckel@ginac.de>
603
604         * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
605           values of x, return square(x) instead of x.
606         * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
607
608 2001-07-25  Richard Kreckel  <kreckel@ginac.de>
609
610         * Version 1.1.2 released.
611
612 2001-07-24  Richard Kreckel  <kreckel@ginac.de>
613
614         * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
615           friend of cl_heap_hashtable<htentry>.
616
617 2001-07-22  Richard Kreckel  <kreckel@ginac.de>
618
619         * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
620           _FPU_IEEE is really defined.
621         * include/cln/modules.h: change assembler labels from `label' to
622           `label:' on hppa, needed by Linux (see comment).
623         * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
624         * Makefile.devel: adjusted.
625         * autoconf/aclocal.m4: regenerate.
626         * src/base/low/cl_low_mul.cc: moved POD variables that are declared
627           extern "C" elsewhere out of the namespace.
628         * src/base/low/cl_low_div.cc: Likewise.
629
630 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
631
632         * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
633         * autoconf/aclocal.m4: Upgrade to libtool-1.4.
634         * autoconf/ltmain.sh: Likewise.
635         * autoconf/ltconfig: Remove file.
636         * autoconf/install-sh: New file.
637         * configure.in: Add AC_CONFIG_AUX_DIR call.
638
639 2001-06-05  Richard Kreckel  <kreckel@ginac.de>
640
641         * tests/tests.cc: resolve namespace ambiguity about strcmp().
642
643 2001-05-31  Richard Kreckel  <kreckel@ginac.de>
644
645         * Version 1.1.1 released.
646
647 2001-05-28  Richard Kreckel  <kreckel@ginac.de>
648
649         * cln/cln.tex: documented problems with shared library on Sparc
650           using gcc older than 2.95.3.
651         * configure.in: Fixed typos in versioning docu.
652
653 2001-05-25  Bruno Haible  <haible@clisp.cons.org>
654
655         * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
656           hexadecimal constants.
657
658 2001-05-25  Richard Kreckel  <kreckel@ginac.de>
659
660         * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
661         * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
662         * Removed LiDIA interface since that is now outdated (namespace cln)
663           and maintained elsewhere.
664         * Adjusted dates and final touches for 1.1.1.
665
666 2001-05-19  Richard Kreckel  <kreckel@ginac.de>
667
668         * INSTALL: Update toolchain info: no egcs, some more platforms.
669         * doc/cln.tex: Likewise.
670
671 2001-05-18  Richard Kreckel  <kreckel@ginac.de>
672
673         * src/base/cl_low.h: prepended variables declared inside macros
674           with underscore.  Fixes equal_hashcode() on various platforms.
675
676 2001-04-25  Richard Kreckel  <kreckel@ginac.de>
677
678         * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
679           this definition becomes actually useful.  This is needed for 
680           compilation on Arm until somebody fixes the assembler files for Arm.
681         * src/base/digitseq/cl_asm.h: Likewise.
682         * src/base/digitseq/cl_asm_.cc: Likewise.
683         * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
684            one can say `make CPPFLAGS=-DFOOBAR'.
685
686 2001-03-26  Arvid Norberg <c99ang@cs.umu.se>
687
688         * src/base/random/cl_random_from.cc: ported to beos.
689
690 2001-03-05  Richard Kreckel  <kreckel@ginac.de>
691
692         * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
693
694 2001-01-28  Richard Kreckel  <kreckel@ginac.de>
695
696         * include/cln/number.h (cl_as_N): Remove bogus comment.
697
698 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
699
700         * configure.in: Make build in separate builddir possible (again).
701
702 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
703
704         * include/cln/*.h: Change signatures of all classes' methods
705           cln::cl_foo::operator new(size_t, cl_foo*) to
706           cln::cl_foo::operator new(size_t, void*) so one can declare
707           std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
708           certain STL implementations (like libstdc++-v3).
709
710 2000-12-14  Richard Kreckel  <kreckel@ginac.de>
711
712         * Version 1.1 released.
713
714 2000-12-13  Richard Kreckel  <kreckel@ginac.de>
715
716         * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
717
718 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
719
720         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
721         * include/cln/version.h.in, src/base/verion.cc: New files.
722         * configure.in: Generate include/cln/version.h.
723         * cln.m4: Rewrote it. Check result of cln-config without compiling.
724           Do cross-check library version and header version information.
725
726 2000-12-02  Christian Bauer  <cbauer@ginac.de>
727
728         * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
729         * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
730           building.
731
732 2000-11-24  Richard Kreckel  <kreckel@ginac.de>
733
734         * */*: Removed problematic stdin, stdout and stderr definitions.  
735           Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
736
737 2000-11-20  Bruno Haible
738
739         * cln-config.1: change title.
740
741 2000-11-18  Richard Kreckel  <kreckel@ginac.de>
742
743         * cln.m4: New file.
744         * doc/cln.tex: Document package tools cln-config and cln.m4.
745         * Makefile.in: Care about cln.m4.
746
747 2000-11-17  Richard Kreckel  <kreckel@ginac.de>
748
749         * cln-config.1: added manpage, as required by a couple of distros.
750         * Makefile.in, doc/Makefile.in: target install depends on installdirs.
751
752 2000-11-16  Richard Kreckel  <kreckel@ginac.de>
753
754         * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
755         * configure.in: ...used here.
756         * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
757         * include/cln/types.h: ...used here.
758         * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
759
760 2000-11-13  Richard Kreckel  <kreckel@ginac.de>
761
762         * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
763           in order to guard against an accidented configuration.
764         * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of 
765           struct power_table_entry initialized as ULL instead of as UL, if 
766           intDsize==64 (caused misprinting on MIPS w/ GMP).
767         * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if 
768           HAVE_FAST_LONGLONG.
769         * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
770         * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival 
771           generation of Bignum for intDsize==64 and a notreached-check at end.
772         * autoconf/config.guess, autoconf/config.sub: updated from FSF.
773         * include/cln/config.h.in: Prepared support for IA64.
774         * include/cln/types.h: Likewise.
775         * include/cln/object.h: Likewise.
776         * include/cln/modules.h: Likewise.
777         * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's 
778           compiler claims __GNUC_MINOR__==9).
779
780 2000-11-03  Richard Kreckel  <kreckel@ginac.de>
781
782         * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
783           HAVE_DD to HAVE_FAST_LONGLONG.
784         * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
785         * src/base/cl_low.h: actually no need to include "cln/types.h" here.
786         * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
787         * src/base/random/cl_UL_random.cc (random32): a is always ULL.
788
789 2000-11-01  Richard Kreckel  <kreckel@ginac.de>
790
791         * include/cln/object.h (cl_combine): define additional signatures, if
792           HAVE_LONGLONG is defined, in order to keep the compiler happy.
793         * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
794         * src/base/cl_macros.h (bit): ...for this macro...
795         * src/base/cl_macros.h (minus_bit): ...and this one.
796         * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
797         * src/base/cl_low.h (logcount_64): ...for this macro.
798         * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
799         * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
800           that turned up when intDsize==32 and cl_word_size==64.
801         * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
802           to uint64 that turned up when intDsize==32 and cl_word_size==64.
803
804 2000-10-29  Richard Kreckel  <kreckel@ginac.de>
805
806         * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
807           #undef stderr, if it's defined so cln::stderr isn't confused.
808         * src/base/input/cl_read_globals.cc: stdin should not be extern.
809
810 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
811
812         * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
813           to the appropiate method instead of prefixing `as_'.
814         * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
815         * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
816         * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
817         * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
818         * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
819         * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
820         * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
821         * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
822         * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
823
824 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
825
826         * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
827           the 0^y cases.
828
829 2000-08-30  Richard Kreckel  <kreckel@ginac.de>
830
831         * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
832           Rearranged for a clearer distinction between macros and remaining
833           identifiers, so Cint can parse it smoothly.
834
835 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
836
837         * include/cln/number.h, the(const cl_number& x): New template
838           function.
839
840 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
841
842         * */*: Pushed CLN into a namespace `cln'.  While doing so, the
843           following identifiers got their poor-man's namespace (i.e. the 
844           prefix `cl_') stripped off:
845           cl_catalanconst()        ->  catalanconst()
846           cl_compare()             ->  compare()
847           cl_cos_sin()             ->  cos_sin()
848           cl_cos_sin_t             ->  cos_sin_t
849           cl_cosh_sinh()           ->  cosh_sinh()
850           cl_cosh_sinh_t           ->  cosh_sinh_t
851           cl_decoded_dfloat        ->  decoded_dfloat
852           cl_decoded_ffloat        ->  decoded_ffloat
853           cl_decoded_float         ->  decoded_float
854           cl_decoded_lfloat        ->  decoded_lfloat
855           cl_decoded_sfloat        ->  decoded_sfloat
856           cl_default_float_format  ->  default_float_format
857           cl_default_print_flags   ->  default_print_flags
858           cl_default_random_state  ->  default_random_state
859           cl_double_approx()       ->  double_approx()
860           cl_equal()               ->  equal()
861           cl_equal_hashcode()      ->  equal_hashcode()
862           cl_eulerconst()          ->  eulerconst()
863           cl_find_modint_ring()    ->  find_modint_ring()
864           cl_find_univpoly_ring()  ->  find_univ_poly_ring()
865           cl_float_approx()        ->  float_approx
866           cl_float_format()        ->  float_format()
867           cl_float_format_t        ->  float_format_t
868           cl_free_hook()           ->  free_hook()
869           cl_hermite()             ->  hermite()
870           cl_laguerre()            ->  laguerre()
871           cl_legendre()            ->  legandre()
872           cl_malloc_hook()         ->  malloc_hook()
873           cl_pi()                  ->  pi()
874           cl_tschebychev()         ->  tschebychev()
875           cl_zeta()                ->  zeta()
876           NB: For functions these changes includes all signatures.
877         * include/*: moved to include/cln/*, stripped `cl_' off filenames.
878         * cln-config.in: new file.
879
880 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
881
882         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
883           value, not parens.
884
885 2000-08-18  Bruno Haible  <haible@clisp.cons.org>
886
887         * include/cl_univpoly_modint.h: Fix typo.
888
889 2000-07-13  Bruno Haible  <haible@clisp.cons.org>
890
891         * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
892           used as precision marker for floats.
893           Reported by Keith Briggs (in 1998) and Thomas Roessler.
894         * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
895         * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
896         * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
897         * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
898
899 2000-06-22  Bruno Haible  <haible@clisp.cons.org>
900
901         * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
902         * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
903           with N32 ABI.
904           (cl_word_size): New macro.
905         * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
906           cl_word_size.
907
908 2000-05-31  Bruno Haible  <haible@clisp.cons.org>
909
910         * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
911           From a sample that fails with gcc-2.95.2 on Sparc.
912         * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
913
914 2000-05-30  Richard Kreckel  <kreckel@ginac.de>
915
916         * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
917           New macros.
918         * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
919           CL_VERSION_PATCHLEVEL): New definitions.
920         * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
921           autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
922         * src/Makefile.in, configure.in: release-variables renamed from 
923           CLN_* to CL_*.
924         * configure.in: default to build both shared and static library
925           (i.e. default to the most common behaviour).
926
927 2000-05-29  Richard Kreckel  <kreckel@ginac.de>
928
929         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
930           environment around the patch of 2000-05-23.
931
932 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
933
934         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
935           Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
936
937 2000-05-27  Richard Kreckel  <kreckel@ginac.de>
938
939         * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
940           src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
941
942 2000-05-24  Richard Kreckel  <kreckel@ginac.de>
943
944         * autoconf/config.*: Updated to new version from FSF
945           (the new libtool wants this).
946         * src/Makefile.in: added $(LDFLAGS) to link step.
947         * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted 
948           break-even points.
949
950 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
951
952         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
953           host_vendor, host_os correctly if $host has more than two hyphens.
954
955 2000-05-19  Richard Kreckel  <kreckel@ginac.de>
956
957         * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
958           better match present-day CPUs whenever GMP3 is used.
959         * src/base/digitseq/cl_DS_div.cc: dto. 
960         * src/TUNING: Added comment about order of tuning.
961         * configure, configure.in: Safer GMP3-detection.
962         * INSTALL.generic: Clarified behaviour of --with-gmp.
963         * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
964
965 2000-05-04  Richard Kreckel  <kreckel@ginac.de>
966
967         * gmp/: removed completely.  From now on we are going to link
968           externally against libgmp3.0 or above!
969         * configure, configure.in, Makefile.in, */Makeflags: removed support
970           of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
971           setting $CPPFLAGS instead.
972         * Makefile.in: Added libtool inter-library dependency for -lgmp and
973           conforming interface versioning (-version-info).
974         * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
975           from libtool 1.3.4.
976
977 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
978
979         * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
980           parameter passing was changed for the MIPS n32 ABI.
981
982 2000-01-24  Richard Kreckel  <kreckel@ginac.de>
983
984         * gmp/*: Replaced the complete mpn sources with the ones from
985           Debian since they are maintained while the ones from FSF
986           aren't and there were problems on some architectures, PowerPC
987           in particular.  See the file gmp/README.CLN.  This way the
988           hard links in this directory have vanished, they were causing
989           trouble for people working in AFS.  This became necessary for
990           Debian, because there it woudn't compile on PPC.
991
992 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
993
994         * Version 1.0.3 released.
995
996 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
997
998         * src/base/cl_macros.h (nonreturning_function): For egcs and newer
999           use __attribute__ ((__noreturn__)) instead of the __volatile__
1000           storage class.
1001           (nonreturning): Remove macro.
1002         * include/*: Minor fixes to stop -ansi -pedantic from complaining.
1003         * include/cl_integer.h: (doublefactorial): New declaration.
1004         * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
1005
1006 1999-12-18  Bruno Haible  <haible@clisp.cons.org>
1007
1008         * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
1009           "cat", not "echo".
1010         * autoconf/ltconfig: Improve support for recent FreeBSD 3.
1011         * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
1012           'const T', to match definition in src/vector/cl_GV_number.cc.
1013           Reported by Duncan Simpson <dps@io.stargate.co.uk>.
1014         * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
1015           yield return code 1.
1016
1017 1999-09-07  Bruno Haible  <haible@clisp.cons.org>
1018
1019         * Version 1.0.2 released.
1020
1021 1999-09-06  Bruno Haible  <haible@clisp.cons.org>
1022
1023         * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
1024           boolean expression, write alternatives ending with either
1025           "return cl_true;" or "return cl_false;". This way, g++ does a
1026           better job inlining it.
1027         * src/float/cl_F.h (longfloatp): Likewise.
1028         * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
1029         * src/complex/cl_C.h (realp, complexp): Likewise.
1030
1031 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1032
1033         * include/cl_integer.h (cl_equal_hashcode): New declaration.
1034         * include/cl_rational.h (cl_equal_hashcode): New declaration.
1035         * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
1036         * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
1037         * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
1038         * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
1039         * include/cl_float.h (cl_equal_hashcode): New declaration.
1040         * include/cl_real.h (cl_equal_hashcode): New declaration.
1041         * include/cl_complex.h (cl_equal_hashcode): New declaration.
1042         * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
1043         * src/integer/misc/cl_I_eqhashcode.cc: New file.
1044         * src/rational/misc/cl_RA_eqhashcode.cc: New file.
1045         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
1046         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
1047         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
1048         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
1049         * src/float/misc/cl_F_eqhashcode.cc: New file.
1050         * src/real/misc/cl_R_eqhashcode.cc: New file.
1051         * src/complex/misc/cl_C_eqhashcode.cc: New file.
1052         * doc/cln.tex: Document `cl_equal_hashcode'.
1053
1054 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1055
1056         * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
1057           (cl_number_ring): New class.
1058           (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
1059           (instanceof): New function.
1060         * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
1061         * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
1062         * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
1063         * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
1064         * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
1065         * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
1066         * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
1067         * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
1068         * doc/cln.tex: Document `instanceof'.
1069
1070 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1071
1072         * include/cl_rational.h (numerator, denominator): New declarations.
1073         * src/rational/elem/cl_RA_numerator.cc: New file.
1074         * src/rational/elem/cl_RA_denominator.cc: New file.
1075         * include/cl_integer.h (numerator, denominator): New inline functions.
1076         * doc/cln.tex: Document `numerator' and `denominator'.
1077
1078 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1079
1080         * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
1081           in the integer case.
1082         * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
1083
1084 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1085
1086         * include/cl_config.h.in: Support for sparc64 CPU.
1087         * include/cl_modules.h: Likewise.
1088         * include/cl_types.h: Likewise.
1089         * include/cl_object.h: Likewise.
1090         * include/cl_GV.h: Likewise.
1091         * src/Makefile.in: Likewise.
1092         * src/base/cl_alloca.h: Likewise.
1093         * src/base/cl_macros.h: Likewise.
1094         * src/base/cl_sysdep.h: Likewise.
1095         * src/base/cl_low.h: Likewise.
1096         * src/base/digitseq/cl_asm.h: Likewise.
1097         * src/base/digitseq/cl_asm_.cc: Likewise.
1098         * src/base/digitseq/cl_asm_sparc64.h: New file.
1099         * src/base/digitseq/cl_asm_sparc64_.cc: New file.
1100         * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
1101         * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
1102         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1103         * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
1104
1105 1999-09-04  Bruno Haible  <haible@clisp.cons.org>
1106
1107         * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
1108           Use the `orn' instruction.
1109
1110 1999-08-14  Bruno Haible  <haible@clisp.cons.org>
1111
1112         Assume all platforms have <stdlib.h> and clock_t.
1113         * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
1114         * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
1115         * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
1116         * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
1117         * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
1118
1119 1999-07-18  Bruno Haible  <haible@clisp.cons.org>
1120
1121         * gmp/config.guess: Link to autoconf/config.guess.
1122           gmp/config.sub: Link to autoconf/config.sub.
1123           Needed for Win32 platforms.
1124
1125 1999-07-17  Bruno Haible  <haible@clisp.cons.org>
1126
1127         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
1128           "sparc64" according to the C compiler, not the uname result.
1129
1130 1999-06-17  Bruno Haible  <haible@clisp.cons.org>
1131
1132         * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
1133           COUNTER_LOOPS version, fortunately not used yet.
1134
1135         * include/cl_modules.h: Prepare for gcc version 3.
1136
1137 1999-06-12  Bruno Haible  <haible@clisp.cons.org>
1138
1139         * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
1140           Change the last call from I_I_to_RT to I_I_to_RA.
1141
1142 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1143
1144         * Version 1.0.1 released.
1145
1146 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1147
1148         * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
1149           intDsize==64.
1150
1151 1999-06-08  Bruno Haible  <haible@clisp.cons.org>
1152
1153         * autoconf/intparam.c (printf_underscored): Change argument type to
1154           `const char*'.
1155         * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
1156           (CL_PROVIDE, CL_PROVIDE_END): Use them.
1157         * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
1158         * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
1159         * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
1160           cast a cl_I to void here. Works around a bug in g++-2.95.
1161         * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
1162         * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
1163            dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
1164           in g++-2.95.
1165         * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
1166           macro.
1167         * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
1168         * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
1169            DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
1170         * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
1171           Likewise.
1172
1173 1999-06-01  Bruno Haible  <haible@clisp.cons.org>
1174
1175         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
1176           variants to alpha.
1177
1178 1999-05-29  Bruno Haible  <haible@clisp.cons.org>
1179
1180         * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
1181           OpenBSD like NetBSD.
1182         * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
1183         * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
1184           OpenBSD like NetBSD, and Linux/ELF like SVR4.
1185
1186 1999-05-16  Bruno Haible  <haible@clisp.cons.org>
1187
1188         * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
1189           syntax on AIX systems and new assembler syntax on non-AIX systems.
1190
1191 1999-05-01  Bruno Haible  <haible@clisp.cons.org>
1192
1193         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
1194           version from GNU CVS.
1195
1196 1999-04-24  Bruno Haible  <haible@clisp.cons.org>
1197
1198         * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
1199           either operand is a positive fixnum, O(1) instead of O(N).
1200         * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
1201         * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
1202           first operand.
1203
1204 1999-04-14  Bruno Haible  <haible@clisp.cons.org>
1205
1206         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
1207           ctor/dtor needs to be exported.
1208         * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
1209         * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
1210           CL_GLOBALIZE_LABEL.
1211           (CL_GLOBALIZE_LABEL): New macro.
1212           (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
1213           (CL_PROVIDE): Update.
1214
1215 1999-04-12  Bruno Haible  <haible@clisp.cons.org>
1216
1217         * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
1218           errors ("unterminated string or character constant").
1219           ($(ASMFILES_LO)): On HPPA, try with various settings of
1220           COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
1221
1222 1999-04-11  Bruno Haible  <haible@clisp.cons.org>
1223
1224         * INSTALL: Mention gmp problems on MIPS.
1225         * doc/cln.tex: Likewise.
1226
1227 1999-03-24  Mumit Khan  <khan@xraylith.wisc.edu>
1228
1229         * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
1230           the source tree.
1231         * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
1232           (CL_GLOBALIZE_ASM_LABEL): New macro.
1233           (CL_PROVIDE): Use it.
1234         * src/base/random/cl_random_from.cc: Handle WIN32.
1235         * src/timing/cl_t_current.cc: Likewise.
1236
1237 1999-03-15  Bruno Haible  <haible@clisp.cons.org>
1238
1239         * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
1240           (main8): Adapt for C++.
1241
1242 1999-03-09  Bruno Haible  <haible@clisp.cons.org>
1243
1244         * INSTALL: Mention egcs-1.1 problems on Sparc.
1245         * doc/cln.tex: Likewise.
1246
1247 1999-03-08  Bruno Haible  <haible@clisp.cons.org>
1248
1249         * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
1250           messages.
1251
1252 1999-02-25  Bruno Haible  <haible@clisp.cons.org>
1253
1254         * autoconf/aclocal.m4: In test programs, declare `int main()', not
1255           `main()'.
1256
1257         * lidia-interface/src/interfaces/integers/cln/bigint.c
1258           (bigint_to_string): Fix for negative arguments.
1259
1260         * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
1261         * src/base/cl_alloca.h: Likewise.
1262
1263         * src/base/cl_low.h: Eliminate CLISP style "# " comments.
1264         * src/base/digitseq/cl_asm_arm_.cc,
1265           src/base/digitseq/cl_asm_mips_.cc,
1266           src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
1267
1268         * src/modinteger/cl_MI_pow2.h,
1269           src/modinteger/cl_MI_pow2m1.h,
1270           src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
1271
1272 1999-01-18  Bruno Haible  <haible@clisp.cons.org>
1273
1274         * autoconf/acgeneral.m4,
1275           autoconf/acspecific.m4: Upgrade to autoconf-2.13.
1276         * autoconf/config.guess, autoconf/config.sub: Likewise.
1277         * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
1278           a macro. Use ${ac_objext}.
1279         * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
1280           conforming with CL_ALLOCA.
1281
1282 1999-01-12  Bruno Haible  <haible@clisp.cons.org>
1283
1284         * Version 1.0 released.
1285