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