/[cln]/ChangeLog
ViewVC logotype

Contents of /ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.203 - (hide annotations)
Tue Jan 22 00:19:25 2008 UTC (5 years, 4 months ago) by haible
Branch: MAIN
Changes since 1.202: +27 -0 lines
Avoid some gcc warnings.

1 haible 1.203 2007-01-20 Bruno Haible <bruno@clisp.org>
2    
3     Avoid some gcc warnings.
4     * autoconf/floatparam.c (flipped_double): Use a union instead of a
5     type-punning cast.
6     * include/cln/number.h (union ffloatjanus, union dfloatjanus): Remove
7     declarations.
8     (cl_float_to_FF_pointer, cl_double_to_DF_pointer): Change argument
9     type.
10     (CL_DEFINE_FLOAT_CONSTRUCTOR, CL_DEFINE_DOUBLE_CONSTRUCTOR): Update.
11     * src/float/ffloat/cl_FF.h (cl_float_to_FF_pointer): Change argument
12     type.
13     (cl_float_to_FF): Remove function.
14     * src/float/ffloat/conv/cl_FF_from_float.cc (FAST_FLOAT): Define.
15     (cl_float_to_FF_pointer): Change argument type.
16     * src/float/dfloat/cl_DF.h (cl_double_to_DF_pointer): Change argument
17     type.
18     (cl_double_to_DF): Remove function.
19     * src/float/dfloat/conv/cl_DF_from_double.cc (FAST_DOUBLE): Define.
20     (cl_double_to_DF_pointer): Change argument type.
21     * src/float/lfloat/cl_LF_impl.h (LF_decode): Mark the mantlen_zuweisung
22     assignment as possibly unused.
23     * src/base/cl_low.h (mulu32): Mark the hi_zuweisung assignment as
24     possibly unused.
25     * src/float/transcendental/cl_LF_zeta_int.cc (compute_zeta_cvz2):
26     Remove unused local variable.
27    
28 kreckel 1.201 2007-01-19 Richard B. Kreckel <kreckel@ginac.de>
29    
30     * Version 1.2.0 released.
31    
32 kreckel 1.202 2007-01-19 Richard B. Kreckel <kreckel@ginac.de>
33    
34     * doc/Makefile.in: texi2html -split_chapter doesn't generate
35     cln_toc.html any more.
36     * doc/cln.texi: Add table of contents in TeX output.
37    
38 kreckel 1.199 2007-01-18 Alexei Sheplyakov <varg@theor.jinr.ru>
39    
40     Fix linking problems on some platforms caused by inline/non-inline
41     versions of same functions (obsoletes MAYBE_INLINE):
42     * src/base/cl_maybe_inline.h: New file.
43     * src/base/cl_inline2.h: New file.
44     * src/base/cl_inline.h: New file.
45 kreckel 1.200 * src/base/string/cl_st_make0.h: New file.
46 kreckel 1.199 * src/base/cl_macros.h: Pull in cl_maybe_inline.h.
47     * src/base/string/cl_st_concat1.cc: Use new CL_INLINE macros and the
48     new *_inline functions.
49     * src/base/string/cl_st_concat2.cc: Likewise.
50     * src/base/string/cl_st_concat3.cc: Likewise.
51     * src/complex/algebraic/cl_C_abs.cc: Likewise.
52     * src/complex/algebraic/cl_C_abs_aux.cc: Likewise.
53     * src/complex/algebraic/cl_C_signum.cc: Likewise.
54     * src/complex/algebraic/cl_DF_hypot.cc: Likewise.
55     * src/complex/algebraic/cl_FF_hypot.cc: Likewise.
56     * src/complex/algebraic/cl_LF_hypot.cc: Likewise.
57     * src/complex/algebraic/cl_SF_hypot.cc: Likewise.
58     * src/complex/transcendental/cl_C_acosh.cc: Likewise.
59     * src/complex/transcendental/cl_C_asinh_aux.cc: Likewise.
60     * src/complex/transcendental/cl_C_atanh_aux.cc: Likewise.
61     * src/float/dfloat/division/cl_DF_fceil.cc: Likewise.
62     * src/float/dfloat/elem/cl_DF_div.cc: Likewise.
63     * src/float/dfloat/elem/cl_DF_ffloor.cc: Likewise.
64     * src/float/dfloat/elem/cl_DF_minusp.cc: Likewise.
65     * src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
66     * src/float/dfloat/elem/cl_DF_plusp.cc: Likewise.
67     * src/float/dfloat/elem/cl_DF_zerop.cc: Likewise.
68     * src/float/dfloat/misc/cl_DF_abs.cc: Likewise.
69     * src/float/dfloat/misc/cl_DF_digits.cc: Likewise.
70     * src/float/dfloat/misc/cl_DF_eqhashcode.cc: Likewise.
71     * src/float/dfloat/misc/cl_DF_exponent.cc: Likewise.
72     * src/float/dfloat/misc/cl_DF_idecode.cc: Likewise.
73     * src/float/dfloat/misc/cl_DF_precision.cc: Likewise.
74     * src/float/dfloat/misc/cl_DF_sign.cc: Likewise.
75     * src/float/dfloat/misc/cl_DF_signum.cc: Likewise.
76     * src/float/elem/cl_F_minusp.cc: Likewise.
77     * src/float/elem/cl_F_plusp.cc: Likewise.
78     * src/float/elem/cl_F_zerop.cc: Likewise.
79     * src/float/ffloat/division/cl_FF_fceil.cc: Likewise.
80     * src/float/ffloat/elem/cl_FF_div.cc: Likewise.
81     * src/float/ffloat/elem/cl_FF_ffloor.cc: Likewise.
82     * src/float/ffloat/elem/cl_FF_minusp.cc: Likewise.
83     * src/float/ffloat/elem/cl_FF_mul.cc: Likewise.
84     * src/float/ffloat/elem/cl_FF_plusp.cc: Likewise.
85     * src/float/ffloat/elem/cl_FF_zerop.cc: Likewise.
86     * src/float/ffloat/misc/cl_FF_abs.cc: Likewise.
87     * src/float/ffloat/misc/cl_FF_digits.cc: Likewise.
88     * src/float/ffloat/misc/cl_FF_eqhashcode.cc: Likewise.
89     * src/float/ffloat/misc/cl_FF_exponent.cc: Likewise.
90     * src/float/ffloat/misc/cl_FF_idecode.cc: Likewise.
91     * src/float/ffloat/misc/cl_FF_precision.cc: Likewise.
92     * src/float/ffloat/misc/cl_FF_sign.cc: Likewise.
93     * src/float/ffloat/misc/cl_FF_signum.cc: Likewise.
94     * src/float/lfloat/division/cl_LF_fceil.cc: Likewise.
95     * src/float/lfloat/elem/cl_LF_compare.cc: Likewise.
96     * src/float/lfloat/elem/cl_LF_ffloor.cc: Likewise.
97     * src/float/lfloat/elem/cl_LF_minusp.cc: Likewise.
98     * src/float/lfloat/elem/cl_LF_plusp.cc: Likewise.
99     * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
100     * src/float/lfloat/elem/cl_LF_zerop.cc: Likewise.
101     * src/float/lfloat/misc/cl_LF_abs.cc: Likewise.
102     * src/float/lfloat/misc/cl_LF_digits.cc: Likewise.
103     * src/float/lfloat/misc/cl_LF_eqhashcode.cc: Likewise.
104     * src/float/lfloat/misc/cl_LF_exponent.cc: Likewise.
105     * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
106     * src/float/lfloat/misc/cl_LF_precision.cc: Likewise.
107     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
108     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
109     * src/float/lfloat/misc/cl_LF_sign.cc: Likewise.
110     * src/float/lfloat/misc/cl_LF_signum.cc: Likewise.
111     * src/float/misc/cl_F_abs.cc: Likewise.
112     * src/float/misc/cl_F_digits.cc: Likewise.
113     * src/float/misc/cl_F_eqhashcode.cc: Likewise.
114     * src/float/misc/cl_F_exponent.cc: Likewise.
115     * src/float/misc/cl_F_idecode.cc: Likewise.
116     * src/float/misc/cl_F_precision.cc: Likewise.
117     * src/float/misc/cl_F_sign.cc: Likewise.
118     * src/float/misc/cl_F_signum.cc: Likewise.
119     * src/float/sfloat/division/cl_SF_fceil.cc: Likewise.
120     * src/float/sfloat/division/cl_SF_ffloor.cc: Likewise.
121     * src/float/sfloat/elem/cl_SF_compare.cc: Likewise.
122     * src/float/sfloat/elem/cl_SF_minus.cc: Likewise.
123     * src/float/sfloat/elem/cl_SF_minusp.cc: Likewise.
124     * src/float/sfloat/elem/cl_SF_plusp.cc: Likewise.
125     * src/float/sfloat/elem/cl_SF_uminus.cc: Likewise.
126     * src/float/sfloat/elem/cl_SF_zerop.cc: Likewise.
127     * src/float/sfloat/misc/cl_SF_abs.cc: Likewise.
128     * src/float/sfloat/misc/cl_SF_digits.cc: Likewise.
129     * src/float/sfloat/misc/cl_SF_eqhashcode.cc: Likewise.
130     * src/float/sfloat/misc/cl_SF_exponent.cc: Likewise.
131     * src/float/sfloat/misc/cl_SF_idecode.cc: Likewise.
132     * src/float/sfloat/misc/cl_SF_precision.cc: Likewise.
133     * src/float/sfloat/misc/cl_SF_sign.cc: Likewise.
134     * src/float/sfloat/misc/cl_SF_signum.cc: Likewise.
135     * src/float/transcendental/cl_F_atanhx.cc: Likewise.
136     * src/float/transcendental/cl_F_atanx.cc: Likewise.
137     * src/float/transcendental/cl_F_exp.cc: Likewise.
138     * src/float/transcendental/cl_F_expx.cc: Likewise.
139     * src/float/transcendental/cl_F_lnx.cc: Likewise.
140     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
141     * src/float/transcendental/cl_F_sinx.cc: Likewise.
142     * src/float/transcendental/cl_F_tan.cc: Likewise.
143     * src/float/transcendental/cl_F_tanh.cc: Likewise.
144     * src/integer/conv/cl_I_from_DS.cc: Likewise.
145     * src/integer/conv/cl_I_from_NDS.cc: Likewise.
146     * src/integer/conv/cl_I_from_NUDS.cc: Likewise.
147     * src/integer/conv/cl_I_from_UDS.cc: Likewise.
148     * src/integer/misc/cl_I_eqhashcode.cc: Likewise.
149     * src/integer/misc/cl_I_signum.cc: Likewise.
150     * src/integer/ring/cl_I_ring.cc: Likewise.
151     * src/rational/elem/cl_RA_minusp.cc: Likewise.
152     * src/rational/misc/cl_RA_eqhashcode.cc: Likewise.
153     * src/rational/misc/cl_RA_signum.cc: Likewise.
154     * src/rational/ring/cl_RA_ring.cc: Likewise.
155     * src/real/algebraic/cl_RA_sqrt.cc: Likewise.
156     * src/real/algebraic/cl_R_sqrt.cc: Likewise.
157     * src/real/conv/cl_F_from_R_def.cc: Likewise.
158     * src/real/elem/cl_R_minusp.cc: Likewise.
159     * src/real/elem/cl_R_zerop.cc: Likewise.
160     * src/real/misc/cl_R_eqhashcode.cc: Likewise.
161     * src/real/misc/cl_R_signum.cc: Likewise.
162     * src/real/transcendental/cl_R_tan.cc: Likewise.
163     * src/real/transcendental/cl_R_tanh.cc: Likewise.
164     * src/base/string/cl_st_make0.cc: Remove obsolete MAYBE_INLINE.
165     * src/rational/misc/Makeflags: Help compiler include cl_I_eqhashcode.cc.
166    
167 haible 1.198 2008-01-15 Bruno Haible <bruno@clisp.org>
168    
169     * doc/cln.texi: Renamed from doc/cln.tex. Add @node lines and @menu
170     lists.
171     * doc/addnodes.el: Remove file.
172     * doc/Makefile.in (${PACKAGE}.texi): Remove rule.
173     (EMACS): Remove variable.
174     (maintainer-clean): Don't remove ${PACKAGE}.texi.
175     Reported by Alexei Sheplyakov <varg@theor.jinr.ru>.
176    
177 kreckel 1.196 2008-01-11 Richard B. Kreckel <kreckel@ginac.de>
178    
179 kreckel 1.197 * include/cln/float.h (cos_sin_t, cosh_sinh_t): Add default ctor.
180    
181     2008-01-11 Richard B. Kreckel <kreckel@ginac.de>
182    
183 kreckel 1.196 Make some functions more memory efficient:
184     * src/float/transcendental/cl_LF_tran.h (eval_rational_series): The
185     evaluation of streamed rational series may profit from shift-counting Q,
186     too. Introduce a template parameter to determine whether shift-counting
187     is to be used or not.
188     * src/float/transcendental/cl_LF_ratseries_pqb.cc: Introduce template
189     parameter.
190     * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
191     * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
192     * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
193     * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
194     * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise, added
195     overload for streamed expansion.
196     * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
197     * src/float/transcendental/cl_LF_ratseries_pq.cc: Introduce template
198     parameter, added overload for streamed expansion using shift-counts.
199     * src/float/transcendental/cl_LF_zeta3.cc: Adapt to above changes.
200     * src/float/transcendental/cl_LF_pi.cc: Likewise.
201     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
202     * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
203     * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
204     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
205     * src/float/transcendental/cl_LF_atanh_recip.cc: Use streamed series.
206     * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
207     * src/float/transcendental/cl_LF_exp1.cc: Likewise.
208     * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
209     * src/float/transcendental/cl_LF_ratseries.cc: Removed.
210    
211 kreckel 1.195 2008-01-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
212     Richard B. Kreckel <kreckel@ginac.de>
213    
214     Cater to the fact that g++ 4.3 will use a different naming for
215     the global constructor suffix in shared and static objects.
216     * m4/c++-constructors.m4 (CL_GLOBAL_CONSTRUCTORS): Add test for
217     the global constructor suffix, define CL_GLOBAL_CONSTRUCTOR_SUFFIX_PIC
218     and CL_GLOBAL_CONSTRUCTOR_SUFFIX_NOPIC appropriately.
219     * include/cln/config.h.in: Provide templates to be filled in by
220     configure.
221     * include/cln/modules.h (CL_PROVIDE, CL_REQUIRE): Use
222     CL_GLOBAL_CONSTRUCTOR_SUFFIX_PIC, CL_GLOBAL_CONSTRUCTOR_SUFFIX_NOPIC.
223    
224 kreckel 1.194 2007-12-19 Richard B. Kreckel <kreckel@ginac.de>
225    
226     * m4/general.m4 (CL_CANONICAL_HOST_CPU): Force host_cpu=rs6000 for
227     powerpc64 if userland is 32 bit.
228    
229 kreckel 1.192 2007-12-18 Richard B. Kreckel <kreckel@ginac.de>
230    
231 kreckel 1.193 * autoconf/ltmain.sh: Update to libtool-1.5.24.
232     * autoconf/config.guess: Likewise.
233     * autoconf/config.sub: Likewise.
234     * m4/libtool.m4: Likewise.
235    
236     2007-12-18 Richard B. Kreckel <kreckel@ginac.de>
237    
238 kreckel 1.192 * src/float/transcendental/cl_F_lnx.cc: Make actuallen of type uintC.
239     * src/float/transcendental/cl_F_expx.cc: Likewise.
240     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
241     * src/float/transcendental/cl_F_sinx.cc: Likewise.
242    
243 kreckel 1.190 2007-12-17 Richard B. Kreckel <kreckel@ginac.de>
244    
245 kreckel 1.191 Silly workaround for silly bug in gmp.h:
246     * m4/gmp.m4 (CL_GMP_SET_UINTD): Swap #include <gmp.h> and <stdio.h>.
247    
248     2007-12-17 Richard B. Kreckel <kreckel@ginac.de>
249    
250 kreckel 1.190 * src/polynomial/elem/cl_UP_GF2.h (gf2_mul_table): define for sparc64.
251    
252 kreckel 1.189 2007-12-04 Richard B. Kreckel <kreckel@ginac.de>
253    
254     * include/cln/types.h ([su]intE): 64-bit exponents for MIPS and RS6000.
255    
256 kreckel 1.188 2007-12-03 Richard B. Kreckel <kreckel@ginac.de>
257    
258     * src/float/lfloat/cl_LF.h (cl_heap_lfloat): Change len type to uintC.
259    
260 kreckel 1.187 2007-11-28 Richard B. Kreckel <kreckel@ginac.de>
261    
262     * include/cln/object.h: Don't redefine cl_word_alignment on sparc64.
263     * src/base/digitseq/cl_asm_sparc64_.cc: Declare use of global
264     register %g2 as scratch register within this file.
265     Reported by Paul Irofti <bulibuta@gmail.com> and Sven Verdoolaege
266     <skimo@kotnet.org>.
267    
268 kreckel 1.186 2007-11-03 Richard B. Kreckel <kreckel@ginac.de>
269    
270     * src/base/digitseq/cl_asm_i386_.cc (compare_loop_up,
271     compare_loop_down): Fix empty ranges.
272    
273 kreckel 1.185 2007-10-12 Richard B. Kreckel <kreckel@ginac.de>
274    
275     Fix compilation on CYGWIN:
276     * src/float/transcendental/cl_LF_zeta_int.cc: Avoid leading underscores
277     in variable names.
278     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
279     Reported by Chris Bouchard <cbouchrd@uiuc.edu>.
280    
281 kreckel 1.184 2007-10-10 Richard B. Kreckel <kreckel@ginac.de>
282    
283     * src/base/cl_low.h: Add missing linefeeds in SPARC 64 inline assembler.
284     * src/base/low/cl_low_div.cc (divu_6464_6464_): Fix a copy-paste typo.
285     Reported by Sven Verdoolaege <skimo@kotnet.org>.
286    
287 kreckel 1.183 2007-10-02 Richard B. Kreckel <kreckel@ginac.de>
288    
289     On popular demand (Debian bug #286266, Ubuntu bug #128851):
290     * examples/pi.cc: Output no more than requested number of digits.
291    
292 kreckel 1.182 2007-10-01 Richard B. Kreckel <kreckel@ginac.de>
293    
294     * autoconf/config.guess, autoconf/config.sub: updated from automake-1.9.
295    
296 kreckel 1.181 2007-09-19 Richard B. Kreckel <kreckel@ginac.de>
297    
298     * doc/cln.tex: Put entire document in @dircategory Mathematics.
299     * doc/Makefile.in: texi2html -split_chapter suddenly uses subdirectory.
300     * Makefile.in: Don't install non-existing cln-config* and cln.m4.
301    
302 kreckel 1.180 2007-09-18 Richard B. Kreckel <kreckel@ginac.de>
303    
304     * include/cln/modules.h (CL_JUMP_TO): Use a pc relative jump on m68k.
305     See <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=388000>.
306    
307 kreckel 1.179 2007-09-16 Richard B. Kreckel <kreckel@ginac.de>
308    
309     * */*: Convert encoding from ISO 8859-1 to UTF-8.
310    
311 kreckel 1.178 2007-09-13 Richard B. Kreckel <kreckel@ginac.de>
312    
313     Truncated binary splitting for even more memory efficiency:
314     * src/float/transcendental/cl_LF_tran.h: Added new overloads. See below.
315     * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Removed and
316     moved everything to...
317     * src/float/transcendental/cl_LF_ratseries_pq.cc: ...here. Added an
318     overload for truncated expansion.
319     * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Removed and
320     moved everything to...
321     * src/float/transcendental/cl_LF_ratseries_pqa.cc: ...here. Added an
322     overload for truncated expansion.
323     * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Removed and
324     moved everything to...
325     * src/float/transcendental/cl_LF_ratseries_pqb.cc: ...here. Added an
326     overload for truncated expansion.
327     * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Removed and
328     moved everything to...
329     * src/float/transcendental/cl_LF_ratseries_pqab.cc: ...here. Added an
330     overload for truncated expansion.
331     * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Added
332     overloads for streamed and truncated expansion.
333     * src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
334     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: Removed
335     and moved everything to...
336     * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: ...here. Added
337     an overload for truncated expansion.
338     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: Removed
339     and moved everything to...
340     * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: ...here. Added an
341     overload for truncated expansion.
342     * src/float/transcendental/cl_LF_pi.cc: Use truncated series.
343     * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
344     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
345     * src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
346     * src/float/transcendental/cl_LF_zeta3.cc: Likewise.
347    
348 kreckel 1.177 2007-09-07 Richard B. Kreckel <kreckel@ginac.de>
349    
350     More memory efficient Euler-Mascheroni constant:
351     * src/float/transcendental/cl_LF_tran.h (cl_pqd_series_stream): New.
352     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd.cc: New file.
353     * src/float/transcendental/cl_LF_ratsumseries_stream_pqd_aux.cc: New
354     file.
355     * src/float/transcendental/cl_LF_eulerconst.cc: Compute series
356     coefficients on demand, using a series stream object.
357    
358 kreckel 1.176 2007-08-02 Richard B. Kreckel <kreckel@ginac.de>
359    
360     * src/base/digitseq/cl_DS_div.cc (cl_recip_suitable): uintC arguments.
361    
362 kreckel 1.175 2007-08-01 Richard B. Kreckel <kreckel@ginac.de>
363    
364     * */*: Remove cl_boolean, cl_true, and cl_false in favor of built-in
365     C++ bool, true, and false.
366    
367 kreckel 1.174 2007-07-28 Richard B. Kreckel <kreckel@ginac.de>
368    
369     Remove exception hooks in favor of real C++ exceptions:
370     * include/cln/exception.h: New file...
371     * include/cln/cln.h: ...included here...
372     * include/cln/rational.h: ...and here.
373     * include/cln/abort.h: Removed.
374     * include/cln/integer.h (ash_exception, exquo_exception): Add exception
375     types.
376     * include/cln/float.h (floating_point_exception,
377     floating_point_nan_exception, floating_point_overflow_exception,
378     floating_point_underflow_exception): Likewise.
379     * include/cln/number_io.h (read_number_exception,
380     read_number_bad_syntax_exception, read_number_junk_exception,
381     read_number_eof_exception): Likewise.
382     * include/cln/object.h (CL_DEFINE_CONVERTER): Replace dynamic assertion
383     with a compile-time assertion.
384     * include/cln/GV.h: Replace nonreturning functions with exceptions.
385     * include/cln/modinteger.h: Likewise.
386     * include/cln/SV.h: Likewise.
387     * include/cln/ring.h: Likewise.
388     * include/cln/string.h: Likewise.
389     * include/cln/univpoly.h: Likewise.
390     * src/base/cl_abort.cc: Removed.
391     * src/base/cl_N_err_d0.cc: Removed.
392     * src/base/cl_d0_exception.cc: New file.
393     * src/base/cl_as_err.cc: Removed.
394     * src/base/cl_as_exception.cc: New file.
395     * src/base/cl_notreached.cc: Removed.
396     * src/base/cl_notreached_exception.cc: New file.
397     * src/base/input/cl_read_err_bad.cc: Removed.
398     * src/base/input/cl_read_bad_syntax_exception.cc: New file.
399     * src/base/input/cl_read_err_junk.cc: Removed.
400     * src/base/input/cl_read_junk_exception.cc: New file.
401     * src/base/input/cl_read_err_eof.cc: Removed.
402     * src/base/input/cl_read_eof_exception.cc: New file.
403     * src/base/cl_N.h (cl_as_error): Removed (see cln/exception.h).
404     * src/base/macros.h (NOTREACHED): Throw.
405     * src/base/cl_malloc.cc (xmalloc): Throw.
406     * src/base/digitseq/cl_2DS_div.cc: Throw.
407     * src/base/digitseq/cl_DS_div.cc: Throw.
408     * src/base/digitseq/cl_DS_mul.cc: Throw.
409     * src/base/digitseq/cl_DS_mul_fftc.h: Throw.
410     * src/base/digitseq/cl_DS_mul_fftcs.h: Throw.
411     * src/base/digitseq/cl_DS_mul_fftm.h: Throw.
412     * src/base/digitseq/cl_DS_mul_fftp.h: Throw.
413     * src/base/digitseq/cl_DS_mul_fftp3.h: Throw.
414     * src/base/digitseq/cl_DS_mul_fftp3m.h: Throw.
415     * src/base/digitseq/cl_DS_mul_fftr.h: Throw.
416     * src/base/digitseq/cl_DS_mul_nuss.h: Throw.
417     * src/base/digitseq/cl_DS_recipsqrt.cc: Throw.
418     * src/base/digitseq/cl_DS_sqrt.cc: Throw.
419     * src/base/hash/cl_hash.h: Throw.
420     * src/base/hash/cl_hash1.h: Throw.
421     * src/base/hash/cl_hash1weak.h: Throw.
422     * src/base/hash/cl_hash2.h: Throw.
423     * src/base/hash/cl_hash2weak.h: Throw.
424     * src/base/hash/cl_hashset.h: Throw.
425     * src/base/hash/cl_hashuniq.h: Throw.
426     * src/base/hash/cl_hashuniqweak.h: Throw.
427     * src/base/proplist/cl_pl_add.cc: Throw.
428     * src/base/ring/cl_no_ring.cc: Throw.
429     * src/base/string/cl_spushstring.h: Throw.
430     * src/base/symbol/cl_symbol.cc: Throw.
431     * src/integer/bitwise/cl_I_ash.h: Removed (see cln/integer.h.)
432     * src/integer/bitwise/cl_I_asherr.cc: Removed.
433     * src/integer/bitwise/cl_I_ash_exception.cc: New file.
434     * src/integer/division/cl_I_exquoerr.cc: Removed.
435     * src/integer/division/cl_I_exquo_exception.cc: New file.
436     * src/integer/cl_I.h: Throw.
437     * src/integer/division/cl_I_exquopos.cc: Throw.
438     * src/integer/bitwise/cl_I_logbitp_I.cc: Throw.
439     * src/integer/bitwise/cl_I_ash.cc: Throw.
440     * src/integer/bitwise/cl_I_ash_I.cc: Throw.
441     * src/integer/division/cl_I_exquo.cc: Throw.
442     * src/integer/gcd/cl_I_gcd_aux2.cc: Throw.
443     * src/integer/conv/cl_I_to_L.cc: Throw.
444     * src/integer/conv/cl_I_to_Q.cc: Throw.
445     * src/integer/conv/cl_I_to_UL.cc: Throw.
446     * src/integer/conv/cl_I_to_UQ.cc: Throw.
447     * src/integer/conv/cl_I_to_digits.cc: Throw.
448     * src/integer/elem/cl_I_div.cc: Throw.
449     * src/integer/algebraic/cl_I_sqrt.cc: Throw.
450     * src/integer/input/cl_I_read.cc: Throw.
451     * src/integer/input/cl_I_read_stream.cc: Throw.
452     * src/integer/misc/cl_I_as.cc: Throw.
453     * src/rational/elem/cl_RA_from_I_I_div.cc: Throw.
454     * src/rational/elem/cl_RA_recip.cc: Throw.
455     * src/rational/input/cl_RA_read.cc: Throw.
456     * src/rational/input/cl_RA_read_stream.cc: Throw.
457     * src/rational/input/cl_RA_readparsed.cc: Throw.
458     * src/rational/misc/cl_RA_as.cc: Throw.
459     * src/float/base/cl_F_err_nan.cc: Removed.
460     * src/float/base/cl_F_nan_exception.cc: New file.
461     * src/float/base/cl_F_err_un.cc: Removed.
462     * src/float/base/cl_F_underflow_exception.cc: New file.
463     * src/float/base/cl_F_err_ov.cc: Removed.
464     * src/float/base/cl_F_overflow_exception.cc: New file.
465     * src/float/cl_F.h (cl_error_floating_point_nan,
466     cl_error_floating_point_overflow, cl_error_floating_point_underflow):
467     Removed (see cln/float.h.)
468     * src/float/sfloat/cl_SF.h: Throw.
469     * src/float/sfloat/elem/cl_SF_div.cc: Throw.
470     * src/float/sfloat/elem/cl_SF_from_RA.cc: Throw.
471     * src/float/sfloat/elem/cl_SF_scale.cc: Throw.
472     * src/float/sfloat/elem/cl_SF_scale_I.cc: Throw.
473     * src/float/sfloat/misc/cl_SF_as.cc: Throw.
474     * src/float/ffloat/cl_FF.h: Throw.
475     * src/float/ffloat/conv/cl_FF_from_float.cc: Throw.
476     * src/float/ffloat/elem/cl_FF_div.cc: Throw.
477     * src/float/ffloat/elem/cl_FF_from_RA.cc: Throw.
478     * src/float/ffloat/elem/cl_FF_scale.cc: Throw.
479     * src/float/ffloat/elem/cl_FF_scale_I.cc: Throw.
480     * src/float/ffloat/misc/cl_FF_as.cc: Throw.
481     * src/float/dfloat/cl_DF.h: Throw.
482     * src/float/dfloat/conv/cl_DF_from_double.cc: Throw.
483     * src/float/dfloat/elem/cl_DF_div.cc: Throw.
484     * src/float/dfloat/elem/cl_DF_from_RA.cc: Throw.
485     * src/float/dfloat/elem/cl_DF_scale.cc: Throw.
486     * src/float/dfloat/elem/cl_DF_scale_I.cc: Throw.
487     * src/float/dfloat/misc/cl_DF_as.cc: Throw.
488     * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Throw.
489     * src/float/lfloat/elem/cl_LF_1plus.cc: Throw.
490     * src/float/lfloat/elem/cl_LF_I_div.cc: Throw.
491     * src/float/lfloat/elem/cl_LF_I_mul.cc: Throw.
492     * src/float/lfloat/elem/cl_LF_div.cc: Throw.
493     * src/float/lfloat/elem/cl_LF_from_I.cc: Throw.
494     * src/float/lfloat/elem/cl_LF_mul.cc: Throw.
495     * src/float/lfloat/elem/cl_LF_scale.cc: Throw.
496     * src/float/lfloat/elem/cl_LF_scale_I.cc: Throw.
497     * src/float/lfloat/elem/cl_LF_square.cc: Throw.
498     * src/float/lfloat/misc/cl_LF_as.cc: Throw.
499     * src/float/lfloat/misc/cl_LF_shorten.cc: Throw.
500     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Throw.
501     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Throw.
502     * src/float/input/cl_F_read.cc: Throw.
503     * src/float/input/cl_F_read_stream.cc: Throw.
504     * src/float/misc/cl_F_as.cc: Throw.
505     * src/float/misc/cl_F_shortenrel.cc: Throw.
506     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Throw.
507     * src/float/transcendental/cl_LF_cossin_aux.cc: Throw.
508     * src/float/transcendental/cl_LF_exp_aux.cc: Throw.
509     * src/float/transcendental/cl_LF_ratseries_a.cc: Throw.
510     * src/float/transcendental/cl_LF_ratseries_ab.cc: Throw.
511     * src/float/transcendental/cl_LF_ratseries_b.cc: Throw.
512     * src/float/transcendental/cl_LF_ratseries_p.cc: Throw.
513     * src/float/transcendental/cl_LF_ratseries_pa.cc: Throw.
514     * src/float/transcendental/cl_LF_ratseries_pab.cc: Throw.
515     * src/float/transcendental/cl_LF_ratseries_pb.cc: Throw.
516     * src/float/transcendental/cl_LF_ratseries_pq.cc: Throw.
517     * src/float/transcendental/cl_LF_ratseries_pqa.cc: Throw.
518     * src/float/transcendental/cl_LF_ratseries_pqab.cc: Throw.
519     * src/float/transcendental/cl_LF_ratseries_pqb.cc: Throw.
520     * src/float/transcendental/cl_LF_ratseries_q.cc: Throw.
521     * src/float/transcendental/cl_LF_ratseries_qa.cc: Throw.
522     * src/float/transcendental/cl_LF_ratseries_qab.cc: Throw.
523     * src/float/transcendental/cl_LF_ratseries_qb.cc: Throw.
524     * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Throw.
525     * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Throw.
526     * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Throw.
527     * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Throw.
528     * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Throw.
529     * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Throw.
530     * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Throw.
531     * src/float/transcendental/cl_LF_zeta_int.cc: Throw.
532     * src/real/elem/cl_R_div.cc: Throw.
533     * src/real/format-output/cl_fmt_cardinal.cc: Throw.
534     * src/real/format-output/cl_fmt_newroman.cc: Throw.
535     * src/real/format-output/cl_fmt_oldroman.cc: Throw.
536     * src/real/input/cl_R_read.cc: Throw.
537     * src/real/input/cl_R_read_stream.cc: Throw.
538     * src/real/misc/cl_R_as.cc: Throw.
539     * src/real/random/cl_R_random.cc: Throw.
540     * src/real/transcendental/cl_R_atan2.cc: Throw.
541     * src/real/transcendental/cl_R_log.cc: Throw.
542     * src/complex/input/cl_N_read.cc: Throw.
543     * src/complex/input/cl_N_read_stream.cc: Throw.
544     * src/complex/misc/cl_N_as.cc: Throw.
545     * src/complex/transcendental/cl_C_atanh_aux.cc: Throw.
546     * src/complex/transcendental/cl_C_expt_C.cc: Throw.
547     * src/complex/transcendental/cl_C_log.cc: Throw.
548     * src/complex/transcendental/cl_C_log2.cc: Throw.
549     * src/numtheory/cl_nt_cornacchia1.cc: Throw.
550     * src/numtheory/cl_nt_cornacchia4.cc: Throw.
551     * src/numtheory/cl_nt_isprobprime.cc: Throw.
552     * src/numtheory/cl_nt_jacobi.cc: Throw.
553     * src/numtheory/cl_nt_jacobi_low.cc: Throw.
554     * src/numtheory/cl_nt_sqrtmodp.cc: Throw.
555     * src/modinteger/cl_MI.cc: Throw.
556     * src/modinteger/cl_MI_int.h: Throw.
557     * src/modinteger/cl_MI_montgom.h: Throw.
558     * src/modinteger/cl_MI_pow2.h: Throw.
559     * src/modinteger/cl_MI_rshift.cc: Throw.
560     * src/modinteger/cl_MI_std.h: Throw.
561     * src/polynomial/elem/cl_UP_GF2.h: Throw.
562     * src/polynomial/elem/cl_UP_MI.h: Throw.
563     * src/polynomial/elem/cl_UP_gen.h: Throw.
564     * src/polynomial/elem/cl_UP_named.cc: Throw.
565     * src/polynomial/elem/cl_UP_no_ring.cc (uninitialized_error,
566     uninitialized_ring): Removed (see cln/ring.h.)
567     * src/polynomial/elem/cl_UP_number.h: Throw.
568     * src/polynomial/elem/cl_UP_unnamed.cc: Throw.
569     * src/vector/cl_GV_I.cc: Throw.
570     * src/vector/cl_GV_number.cc: Throw.
571     * tests/timediv2adic-compare.cc: Use default abort(), not cl_abort().
572     * tests/timeprint-compare.cc: Likewise.
573     * tests/timerecip2adic-compare.cc: Likewise.
574     * doc/cln.tex: Document the exception classes.
575     * examples/contfrac.cc: Use try/catch instead of setjmp/longjmp.
576     * INSTALL: undocument -fno-exceptions.
577     * README: Add exceptions to list of used C++ features.
578    
579 kreckel 1.173 2007-06-20 Richard B. Kreckel <kreckel@ginac.de>
580    
581     * cln.spec.in (Source0): Package is bzip2-compressed.
582     Reported by Markus Grabner <grabner@icg.tugraz.at>.
583    
584 kreckel 1.172 2007-05-31 Richard B. Kreckel <kreckel@ginac.de>
585    
586     * include/cln/integer.h (cl_I_to_E, cl_I_to_UE): New functions.
587     * src/float/transcendental/cl_LF_exp_aux.cc: Make lq argument an uintE.
588     * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
589     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
590     * src/float/transcendental/cl_F_tran.h: Change declaration of lq.
591     * src/float/transcendental/cl_F_lnx.cc: Fix some exponent types.
592     * src/float/transcendental/cl_F_expx.cc: Likewise.
593     * src/float/transcendental/cl_F_sinh.cc: Likewise.
594     * src/float/transcendental/cl_F_atanx.cc: Likewise.
595     * src/float/transcendental/cl_F_coshsinh.cc: Likewise.
596     * src/float/transcendental/cl_LF_cossin.cc: Likewise.
597     * src/float/transcendental/cl_LF_coshsinh.cc: Likewise.
598    
599 kreckel 1.171 2007-04-09 Richard B. Kreckel <kreckel@ginac.de>
600    
601     More memory efficient constants:
602     * src/float/transcendental/cl_LF_pi.cc (compute_pi_ramanujan_163_fast):
603     Compute series coefficients on demand, using a series stream object.
604     * src/float/transcendental/cl_LF_zeta3.cc (zeta3): Likewise.
605     * src/float/transcendental/cl_LF_catalanconst.cc
606     (compute_catalanconst_ramanujan_fast): Likewise.
607     (compute_catalanconst_lupas): New function.
608     (compute_catalanconst): Simplify, based on new benchmark.
609    
610 kreckel 1.170 2007-04-02 Alexei Sheplyakov <varg@theor.jinr.ru>
611    
612     Debian Bug#412103:
613     * cln.pc.in: list -lgmp in Libs.private instead of in Libs.
614     * doc/cln.tex: Undocument cln-config, properly document pkg-config.
615     * cln-config.1.in: Remove.
616     * cln-config.in: Remove.
617     * cln.m4: Remove.
618     * configure.ac: Don't output cln-config and cln-config.1.
619    
620 haible 1.169 2006-12-24 Bruno Haible <bruno@clisp.org>
621    
622     Make autoconfiguration work with gcc-4.3 snapshots.
623     * autoconf/intparam.c (main1): Rename get_integer_bitsize to
624     get_unsigned_integer_bitsize. New macro get_signed_integer_bitsize.
625    
626 haible 1.168 2006-12-19 Bruno Haible <bruno@clisp.org>
627    
628     * autoconf/intparam.c (main): Use 'return', not exit().
629     * autoconf/floatparam.c (main): Likewise.
630     Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
631    
632 kreckel 1.167 2006-12-11 Richard B. Kreckel <kreckel@ginac.de>
633    
634     Extend the exponent range from 32 bits to 64 bits on selected platforms.
635     * include/cln/number.h: Add signatures for operations with long long.
636     * include/cln/complex_class.h: Likewise.
637     * include/cln/real_class.h: Likewise.
638     * include/cln/real.h: Likewise.
639     * include/cln/rational_class.h: Likewise.
640     * include/cln/rational.h: Likewise.
641     * include/cln/integer_class.h: Likewise.
642     * include/cln/integer.h: Likewise.
643     * include/cln/float.h: Likewise.
644     * include/cln/lfloat.h: Likewise.
645     * include/cln/types.h (sintE and uintE): New types for exponents.
646     * include/cln/*float.h: Use the new types for exponents.
647     * include/cln/floatformat.h (float_format_t): Make underlying type
648     compatible with sintE.
649     * doc/cln.tex: Document changed float_exponent return value.
650     * src/float/cl_F.h: Likewise.
651     * src/float/ffloat/misc/cl_FF_exponent.cc: Likewise.
652     * src/float/input/cl_F_read.cc: Likewise.
653     * src/float/lfloat/cl_LF.h: Likewise.
654     * src/float/lfloat/cl_LF_impl.h: Likewise.
655     * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
656     * src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
657     * src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
658     * src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
659     * src/float/lfloat/elem/cl_LF_compare.cc: Likewise.
660     * src/float/lfloat/elem/cl_LF_div.cc: Likewise.
661     * src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
662     * src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
663     * src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
664     * src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
665     * src/float/lfloat/elem/cl_LF_mul.cc: Likewise.
666     * src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
667     * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
668     * src/float/lfloat/elem/cl_LF_square.cc: Likewise.
669     * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
670     * src/float/lfloat/misc/cl_LF_decode.cc: Likewise.
671     * src/float/lfloat/misc/cl_LF_exponent.cc: Likewise.
672     * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
673     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
674     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
675     * src/float/misc/cl_F_decode.cc: Likewise.
676     * src/float/misc/cl_F_exponent.cc: Likewise.
677     * src/float/misc/cl_F_shortenrel.cc: Likewise.
678     * src/float/misc/cl_float_format.cc: Likewise.
679     * src/float/output/cl_F_dprint.cc: Likewise.
680     * src/float/sfloat/misc/cl_SF_exponent.cc: Likewise.
681     * src/float/transcendental/cl_F_atanhx.cc: Likewise.
682     * src/float/transcendental/cl_F_atanx.cc: Likewise.
683     * src/float/transcendental/cl_F_cosh.cc: Likewise.
684     * src/float/transcendental/cl_F_expx.cc: Likewise.
685     * src/float/transcendental/cl_F_lnx.cc: Likewise.
686     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
687     * src/float/transcendental/cl_F_sinx.cc: Likewise.
688     * src/float/transcendental/cl_LF_pi.cc: Likewise.
689     * src/integer/cl_I.h: Likewise.
690     * src/complex/algebraic/cl_LF_hypot.cc: Likewise.
691     * src/complex/elem/division/cl_C_LF_recip.cc: Likewise.
692     * src/float/dfloat/misc/cl_DF_exponent.cc: Likewise.
693     * src/integer/conv/cl_I_from_Q2.cc: Added.
694     * src/base/cl_low.h (isqrtC): New function, for 64 bit falls back to...
695     * src/base/low/cl_low_isqrt.cc (isqrt): ...this new implementation.
696     * src/base/cl_macros.h (bitc): Make sure 64 bit is used if required by
697     exponent operations.
698     * examples/pi.cc: Support more than 646456614 decimal digits.
699    
700 kreckel 1.166 2006-11-02 Richard B. Kreckel <kreckel@ginac.de>
701    
702     * src/base/digitseq/cl_DS.h: #undef DS, needed for i386-Solaris.
703    
704 kreckel 1.165 2006-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
705    
706     * tests/Makefile.in (VPATH): Fix syntax error.
707    
708 kreckel 1.164 2006-09-14 Richard B. Kreckel <kreckel@ginac.de>
709    
710     * examples/perfnum.cc: update to presumed 44th Mersenne prime.
711    
712 kreckel 1.163 2006-08-15 Richard B. Kreckel <kreckel@ginac.de>
713    
714     * tests/Makefile.in: MinGW support for make check
715     (Patch by Sheplyakov Alexei <varg@theor.jinr.ru> to add ${EXEEXT}).
716     * Makefile.in: Convert from $(VAR) to ${VAR} syntax.
717     * benchmarks/Makefile.in: Likewise.
718     * doc/Makefile.in: Likewise.
719     * examples/Makefile.in: Likewise.
720     * src/Makefile.in: Likewise.
721     * tests/Makefile.in: Likewise.
722    
723 kreckel 1.162 2006-08-06 Richard B. Kreckel <kreckel@ginac.de>
724    
725     * configure.ac: Re-enable shared lib on non-MinGW platforms, sigh.
726    
727 kreckel 1.161 2006-08-04 Sheplyakov Alexei <varg@theor.jinr.ru>
728    
729     * configure.ac: Disable shared lib on MinGW.
730    
731 kreckel 1.160 2006-08-03 Sheplyakov Alexei <varg@theor.jinr.ru>
732    
733     * m4/param.m4: Add support for MinGW.
734     * src/base/random/cl_random_from.cc: Fix for last patch.
735    
736 kreckel 1.159 2006-07-23 Sheplyakov Alexei <varg@theor.jinr.ru>
737    
738     * src/base/random/cl_random_from.cc: Add support for MinGW.
739    
740 kreckel 1.158 2006-06-13 Richard B. Kreckel <kreckel@ginac.de>
741    
742     * m4/general.m4 (CL_CANONICAL_HOST_CPU): Force host_cpu=i386 for x86_64
743     if userland is 32 bit.
744     * include/cln/config.h.in: Simplify __x86_64__ selection.
745     * src/base/digitseq/cl_asm_x86_64_.cc: Remove.
746    
747 kreckel 1.157 2006-06-09 Richard B. Kreckel <kreckel@ginac.de>
748    
749     * src/base/digitseq/cl_DS.h (struct DS): Change len type to uintC.
750    
751 kreckel 1.156 2006-05-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
752    
753     * m4/gettimeofday.m4 (CL_GETTIMEOFDAY): Fix M4 quoting.
754    
755 haible 1.155 2006-05-20 Bruno Haible <bruno@clisp.org>
756    
757     * src/base/random/cl_random_from.cc: Treat FreeBSD, NetBSD like other
758     Unix platforms.
759    
760 kreckel 1.154 2006-05-07 Richard B. Kreckel <kreckel@ginac.de>
761    
762     * include/cln/modules.h (CL_JUMP_TO): Fix for Intel Mac.
763    
764 haible 1.153 2006-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
765    
766     Prepare for autoconf-2.60.
767     * Makefile.in (datarootdir): New variable.
768     * src/Makefile.in (datarootdir): New variable.
769     * doc/Makefile.in (datarootdir): New variable.
770    
771 kreckel 1.152 2006-04-25 Bruno Haible <bruno@clisp.org>
772     Richard B. Kreckel <kreckel@ginac.de>
773    
774     Make it theoretically possible to use bignums and long-floats with
775     more than 2^32 significant digits or bits.
776     * doc/cln.tex (logcount): Change return type to uintC.
777     (struct cl_byte): Change elements to uintC.
778     (integer_length, ord2, power2p): Change return type to uintC.
779     (scale_float): Change argument type to sintC.
780     (float_digits, float_precision): Change return type to uintC.
781     * examples/atan_recip.cc: Use uintC instead of uintL where appropriate.
782     * examples/atanh_recip.cc: Likewise.
783     * include/cln/GV.h: Likewise.
784     * include/cln/GV_complex.h: Likewise.
785     * include/cln/GV_integer.h: Likewise.
786     * include/cln/GV_modinteger.h: Likewise.
787     * include/cln/GV_number.h: Likewise.
788     * include/cln/GV_rational.h: Likewise.
789     * include/cln/GV_real.h: Likewise.
790     * include/cln/SV.h: Likewise.
791     * include/cln/SV_complex.h: Likewise.
792     * include/cln/SV_integer.h: Likewise.
793     * include/cln/SV_number.h: Likewise.
794     * include/cln/SV_rational.h: Likewise.
795     * include/cln/SV_real.h: Likewise.
796     * include/cln/SV_ringelt.h: Likewise.
797     * include/cln/dfloat.h: Likewise.
798     * include/cln/ffloat.h: Likewise.
799     * include/cln/float.h: Likewise.
800     * include/cln/integer.h: Likewise.
801     * include/cln/lfloat.h: Likewise.
802     * include/cln/modinteger.h: Likewise.
803     * include/cln/sfloat.h: Likewise.
804     * src/base/cl_low.h (integerlengthC): New macro.
805     * src/base/digitseq/cl_2DS_div.cc: Use uintC instead of uintL where
806     appropriate.
807     * src/base/digitseq/cl_2DS_recip.cc: Likewise.
808     * src/base/digitseq/cl_DS.h: Likewise.
809     * src/base/digitseq/cl_DS_mul.c: Likewise.
810     * src/base/digitseq/cl_DS_mul_fftc.h: Likewise.
811     * src/base/digitseq/cl_DS_mul_fftcs.h: Likewise.
812     * src/base/digitseq/cl_DS_mul_fftm.h: Likewise.
813     * src/base/digitseq/cl_DS_mul_fftp.h: Likewise.
814     * src/base/digitseq/cl_DS_mul_fftp3.h: Likewise.
815     * src/base/digitseq/cl_DS_mul_fftp3m.h: Likewise.
816     * src/base/digitseq/cl_DS_mul_fftr.h: Likewise.
817     * src/base/digitseq/cl_DS_mul_kara.h: Likewise.
818     * src/base/digitseq/cl_DS_mul_nuss.h: Likewise.
819     * src/base/digitseq/cl_DS_recip.cc: Likewise.
820     * src/base/digitseq/cl_DS_recipsqrt.cc: Likewise.
821     * src/base/digitseq/cl_DS_sqrt.cc: Likewise.
822     * src/base/digitseq/cl_DS_trandom.cc: Likewise.
823     * src/complex/input/cl_N_read.cc: Likewise.
824     * src/complex/transcendental/cl_C_asinh_aux.cc: Likewise.
825     * src/complex/transcendental/cl_C_expt_C.cc: Likewise.
826     * src/float/cl_F.h: Likewise.
827     * src/float/conv/cl_F_from_F_f.cc: Likewise.
828     * src/float/conv/cl_F_from_I_f.cc: Likewise.
829     * src/float/conv/cl_F_from_RA_f.cc: Likewise.
830     * src/float/dfloat/conv/cl_I_to_double.cc: Likewise.
831     * src/float/dfloat/conv/cl_RA_to_double.cc: Likewise.
832     * src/float/dfloat/elem/cl_DF_from_I.cc: Likewise.
833     * src/float/dfloat/elem/cl_DF_from_RA.cc: Likewise.
834     * src/float/dfloat/elem/cl_DF_scale.cc: Likewise.
835     * src/float/dfloat/misc/cl_DF_digits.cc: Likewise.
836     * src/float/dfloat/misc/cl_DF_precision.cc: Likewise.
837     * src/float/elem/cl_F_scale.cc: Likewise.
838     * src/float/ffloat/conv/cl_I_to_float.cc: Likewise.
839     * src/float/ffloat/conv/cl_RA_to_float.cc: Likewise.
840     * src/float/ffloat/elem/cl_FF_from_I.cc: Likewise.
841     * src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
842     * src/float/ffloat/elem/cl_FF_scale.cc: Likewise.
843     * src/float/ffloat/misc/cl_FF_digits.cc: Likewise.
844     * src/float/ffloat/misc/cl_FF_precision.cc: Likewise.
845     * src/float/input/cl_F_read.cc: Likewise.
846     * src/float/lfloat/algebraic/cl_LF_sqrt.cc: Likewise.
847     * src/float/lfloat/elem/cl_LF_1plus.cc: Likewise.
848     * src/float/lfloat/elem/cl_LF_I_div.cc: Likewise.
849     * src/float/lfloat/elem/cl_LF_I_mul.cc: Likewise.
850     * src/float/lfloat/elem/cl_LF_div.cc: Likewise.
851     * src/float/lfloat/elem/cl_LF_from_I.cc: Likewise.
852     * src/float/lfloat/elem/cl_LF_from_RA.cc: Likewise.
853     * src/float/lfloat/elem/cl_LF_fround.cc: Likewise.
854     * src/float/lfloat/elem/cl_LF_ftrunc.cc: Likewise.
855     * src/float/lfloat/elem/cl_LF_futrunc.cc: Likewise.
856     * src/float/lfloat/elem/cl_LF_scale.cc: Likewise.
857     * src/float/lfloat/elem/cl_LF_to_I.cc: Likewise.
858     * src/float/lfloat/misc/cl_LF_digits.cc: Likewise.
859     * src/float/lfloat/misc/cl_LF_idecode.cc: Likewise.
860     * src/float/lfloat/misc/cl_LF_leninc.cc: Likewise.
861     * src/float/lfloat/misc/cl_LF_lenincx.cc: Likewise.
862     * src/float/lfloat/misc/cl_LF_precision.cc: Likewise.
863     * src/float/lfloat/misc/cl_LF_shortenrel.cc: Likewise.
864     * src/float/lfloat/misc/cl_LF_shortenwith.cc: Likewise.
865     * src/float/misc/cl_F_digits.cc: Likewise.
866     * src/float/misc/cl_F_epsneg.cc: Likewise.
867     * src/float/misc/cl_F_epspos.cc: Likewise.
868     * src/float/misc/cl_F_leastneg.cc: Likewise.
869     * src/float/misc/cl_F_leastpos.cc: Likewise.
870     * src/float/misc/cl_F_mostneg.cc: Likewise.
871     * src/float/misc/cl_F_mostpos.cc: Likewise.
872     * src/float/misc/cl_F_precision.cc: Likewise.
873     * src/float/misc/cl_F_rational.cc: Likewise.
874     * src/float/misc/cl_F_shortenrel.cc: Likewise.
875     * src/float/output/cl_F_dprint.cc: Likewise.
876     * src/float/random/cl_F_random.cc: Likewise.
877     * src/float/sfloat/elem/cl_SF_from_I.cc: Likewise.
878     * src/float/sfloat/elem/cl_SF_from_RA.cc: Likewise.
879     * src/float/sfloat/elem/cl_SF_scale.cc: Likewise.
880     * src/float/sfloat/misc/cl_SF_digits.cc: Likewise.
881     * src/float/sfloat/misc/cl_SF_precision.cc: Likewise.
882     * src/float/transcendental/cl_F_atanhx.cc: Likewise.
883     * src/float/transcendental/cl_F_atanx.cc: Likewise.
884     * src/float/transcendental/cl_F_catalanconst_f.cc: Likewise.
885     * src/float/transcendental/cl_F_cos.cc: Likewise.
886     * src/float/transcendental/cl_F_cosh.cc: Likewise.
887     * src/float/transcendental/cl_F_coshsinh.cc: Likewise.
888     * src/float/transcendental/cl_F_cossin.cc: Likewise.
889     * src/float/transcendental/cl_F_eulerconst_f.cc: Likewise.
890     * src/float/transcendental/cl_F_exp1_f.cc: Likewise.
891     * src/float/transcendental/cl_F_expx.cc: Likewise.
892     * src/float/transcendental/cl_F_ln10_f.cc: Likewise.
893     * src/float/transcendental/cl_F_ln2_f.cc: Likewise.
894     * src/float/transcendental/cl_F_lnx.cc: Likewise.
895     * src/float/transcendental/cl_F_pi_f.cc: Likewise.
896     * src/float/transcendental/cl_F_sin.cc: Likewise.
897     * src/float/transcendental/cl_F_sinh.cc: Likewise.
898     * src/float/transcendental/cl_F_sinhx.cc: Likewise.
899     * src/float/transcendental/cl_F_sinx.cc: Likewise.
900     * src/float/transcendental/cl_F_tran.h: Likewise.
901     * src/float/transcendental/cl_F_zeta_int_f.cc: Likewise.
902     * src/float/transcendental/cl_LF_atan_recip.cc: Likewise.
903     * src/float/transcendental/cl_LF_atanh_recip.cc: Likewise.
904     * src/float/transcendental/cl_LF_catalanconst.cc: Likewise.
905     * src/float/transcendental/cl_LF_coshsinh_aux.cc: Likewise.
906     * src/float/transcendental/cl_LF_cossin_aux.cc: Likewise.
907     * src/float/transcendental/cl_LF_eulerconst.cc: Likewise.
908     * src/float/transcendental/cl_LF_exp1.cc: Likewise.
909     * src/float/transcendental/cl_LF_exp_aux.cc: Likewise.
910     * src/float/transcendental/cl_LF_pi.cc: Likewise.
911     * src/float/transcendental/cl_LF_ratseries.cc: Likewise.
912     * src/float/transcendental/cl_LF_ratseries_.cc: Likewise.
913     * src/float/transcendental/cl_LF_ratseries_a.cc: Likewise.
914     * src/float/transcendental/cl_LF_ratseries_ab.cc: Likewise.
915     * src/float/transcendental/cl_LF_ratseries_b.cc: Likewise.
916     * src/float/transcendental/cl_LF_ratseries_p.cc: Likewise.
917     * src/float/transcendental/cl_LF_ratseries_pa.cc: Likewise.
918     * src/float/transcendental/cl_LF_ratseries_pab.cc: Likewise.
919     * src/float/transcendental/cl_LF_ratseries_pb.cc: Likewise.
920     * src/float/transcendental/cl_LF_ratseries_pq.cc: Likewise.
921     * src/float/transcendental/cl_LF_ratseries_pqa.cc: Likewise.
922     * src/float/transcendental/cl_LF_ratseries_pqab.cc: Likewise.
923     * src/float/transcendental/cl_LF_ratseries_pqb.cc: Likewise.
924     * src/float/transcendental/cl_LF_ratseries_q.cc: Likewise.
925     * src/float/transcendental/cl_LF_ratseries_qa.cc: Likewise.
926     * src/float/transcendental/cl_LF_ratseries_qab.cc: Likewise.
927     * src/float/transcendental/cl_LF_ratseries_qb.cc: Likewise.
928     * src/float/transcendental/cl_LF_ratseries_stream_pq.cc: Likewise.
929     * src/float/transcendental/cl_LF_ratseries_stream_pqa.cc: Likewise.
930     * src/float/transcendental/cl_LF_ratseries_stream_pqab.cc: Likewise.
931     * src/float/transcendental/cl_LF_ratseries_stream_pqb.cc: Likewise.
932     * src/float/transcendental/cl_LF_ratsumseries_pqcd.cc: Likewise.
933     * src/float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc: Likewise.
934     * src/float/transcendental/cl_LF_ratsumseries_pqd.cc: Likewise.
935     * src/float/transcendental/cl_LF_ratsumseries_pqd_aux.cc: Likewise.
936     * src/float/transcendental/cl_LF_tran.h: Likewise.
937     * src/float/transcendental/cl_LF_zeta3.cc: Likewise.
938     * src/float/transcendental/cl_LF_zeta_int.cc: Likewise.
939     * src/integer/algebraic/cl_I_rootp_I.cc: Likewise.
940     * src/integer/algebraic/cl_I_rootp_aux.cc: Likewise.
941     * src/integer/bitwise/cl_I_ash.cc: Likewise.
942     * src/integer/bitwise/cl_I_ash_I.cc: Likewise.
943     * src/integer/bitwise/cl_I_byte.h: Likewise.
944     * src/integer/bitwise/cl_I_fullbyte.cc: Likewise.
945     * src/integer/bitwise/cl_I_ilength.cc: Likewise.
946     * src/integer/bitwise/cl_I_ldb.cc: Likewise.
947     * src/integer/bitwise/cl_I_ldbtest.cc: Likewise.
948     * src/integer/bitwise/cl_I_ldbx.cc: Likewise.
949     * src/integer/bitwise/cl_I_ldbxtest.cc: Likewise.
950     * src/integer/bitwise/cl_I_logbitp.cc: Likewise.
951     * src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
952     * src/integer/bitwise/cl_I_logcount.cc: Likewise.
953     * src/integer/bitwise/cl_I_mkf.cc: Likewise.
954     * src/integer/bitwise/cl_I_mkfx.cc: Likewise.
955     * src/integer/cl_I.h: Likewise.
956     * src/integer/conv/cl_I_to_digits.cc: Likewise.
957     * src/integer/conv/cl_I_digits_need.cc: Likewise.
958     * src/integer/conv/cl_I_from_digits.cc: Likewise.
959     * src/integer/gcd/cl_I_gcd.cc: Likewise.
960     * src/integer/gcd/cl_I_xgcd.cc: Likewise.
961     * src/integer/misc/cl_I_eqhashcode.cc: Likewise.
962     * src/integer/misc/cl_I_ord2.cc: Likewise.
963     * src/integer/misc/cl_I_power2p.cc: Likewise.
964     * src/integer/output/cl_I_cached_power.h (cached_power_table): allow
965     for 40 elements.
966     * src/integer/output/cl_I_decstring.cc: Use uintC instead of uintL
967     where appropriate.
968     * src/integer/output/cl_I_print.cc: Likewise.
969     * src/integer/output/cl_I_print_string.cc: Likewise.
970     * src/modinteger/cl_MI.cc: Likewise.
971     * src/modinteger/cl_MI_lshift.cc: Likewise.
972     * src/modinteger/cl_MI_montgom.h: Likewise.
973     * src/modinteger/cl_MI_pow2.h: Likewise.
974     * src/modinteger/cl_MI_pow2m1.h: Likewise.
975     * src/modinteger/cl_MI_pow2p1.h: Likewise.
976     * src/modinteger/cl_MI_rshift.cc: Likewise.
977     * src/modinteger/cl_MI_std.h: Likewise.
978     * src/numtheory/cl_IF_millerrabin.cc: Likewise.
979     * src/numtheory/cl_nt_isprobprime.cc: Likewise.
980     * src/numtheory/cl_nt_sqrtmodp.cc: Likewise.
981     * src/polynomial/elem/cl_UP_GF2.h: Likewise.
982     * src/real/conv/cl_F_from_R_f.cc: Likewise.
983     * src/real/format-output/cl_fmt_floatstring.cc: Likewise.
984     * src/real/input/cl_R_read.cc: Likewise.
985     * src/vector/cl_GV_I.cc: Likewise.
986     * src/vector/cl_GV_I_copy.cc: Likewise.
987     * src/vector/cl_GV_number.cc: Likewise.
988     * src/vector/cl_GV_number_copy.cc: Likewise.
989     * src/vector/cl_SV_copy.cc: Likewise.
990     * src/vector/cl_SV_number.cc: Likewise.
991     * src/vector/cl_SV_ringelt.cc: Likewise.
992     * tests/main.cc: Likewise.
993     * tests/test_I_ilength.cc: Likewise.
994     * tests/test_I_ord2.cc: Likewise.
995    
996 haible 1.151 2006-04-19 Bruno Haible <bruno@clisp.org>
997    
998     Prepare for autoconf-2.60.
999     * general.m4 (CL_CC_WORKS): Include <stdlib.h>, for exit() declaration.
1000     * longdouble.m4 (CL_LONGDOUBLE): Likewise.
1001     * longlong.m4 (CL_LONGLONG): Likewise.
1002     * times.m4 (CL_TIMES_CLOCK): Likewise.
1003     Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1004    
1005 kreckel 1.150 2005-12-04 Bruno Haible <bruno@clisp.org>
1006    
1007     * src/integer/conv/cl_I_to_digits.cc (I_to_digits_noshrink): Set
1008     erg->len at the end.
1009    
1010     2005-12-04 Bruno Haible <bruno@clisp.org>
1011    
1012     Extend the fixnum range from 32 bits to 61 bits on 64-bit platforms.
1013     * doc/cln.tex (gcd, jacobi): Take 'long' instead of 'int32' arguments.
1014     * include/cln/object.h (cl_value_shift): Define as 3, not 32, in the
1015     64-bit case.
1016     * include/cln/types.h (intVsize): New macro.
1017     (sintV, uintV): New types.
1018     * include/cln/integer.h (gcd): Take uintV arguments.
1019     * include/cln/numtheory.h (jacobi): Take sintV arguments.
1020     * src/complex/input/cl_N_read.cc (read_complex): Call FN_to_UV instead
1021     of FN_to_UL.
1022     * src/complex/transcendental/cl_C_expt_C.cc: Likewise.
1023     * src/float/dfloat/elem/cl_DF_scale_I.cc: Use uintV instead of uintL
1024     * src/float/dfloat/elem/cl_DF_from_RA.cc: Don't assume values >= 2^53
1025     and < 2^55 are always bignums.
1026     where appropriate.
1027     * src/float/ffloat/conv/cl_RA_to_float.cc: Call FN_to_UV instead of
1028     FN_to_UL.
1029     * src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
1030     * src/float/ffloat/elem/cl_FF_scale_I.cc: Call FN_to_V instead of
1031     FN_to_L.
1032     * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
1033     * src/float/output/cl_F_dprint.cc: Likewise.
1034     * src/float/sfloat/elem/cl_SF_from_RA.cc: Call FN_to_UV instead of
1035     FN_to_UL.
1036     * src/float/sfloat/elem/cl_SF_scale_I.cc: Call FN_to_V instead of
1037     FN_to_L.
1038     * src/integer/cl_I.h (FN_to_UV): Renamed from FN_to_UL, change return
1039     type.
1040     (FN_to_V): Renamed from FN_to_L, change return type.
1041     (FN_V_zerop): Renamed from FN_L_zerop.
1042     (FN_V_minusp): Renamed from FN_L_minusp.
1043     (cl_I_constructor_from_L2, cl_I_constructor_from_UL2): Define as an
1044     inline function on 64-bit platforms.
1045     (V_to_I, UV_to_I): New macros.
1046     (pFN_maxlength_digits_at): Return an uintV instead of an uint32.
1047     (set_pFN_maxlength_digits_at): Take an uintV instead of an uint32.
1048     * src/integer/algebraic/cl_I_sqrtp.cc: Call FN_to_UV instead of
1049     FN_to_UL.
1050     * src/integer/bitwise/cl_I_ash_I.cc: Call FN_to_V instead of FN_to_L.
1051     * src/integer/bitwise/cl_I_ilength.cc: Likewise.
1052     * src/integer/bitwise/cl_I_log_aux.cc: Likewise.
1053     * src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
1054     * src/integer/bitwise/cl_I_logcount.cc: Likewise.
1055     * src/integer/bitwise/cl_I_logtest.cc: Likewise.
1056     * src/integer/conv/cl_I_from_L2.cc: Don't produce code on 64-bit
1057     platforms.
1058     * src/integer/conv/cl_I_from_UL2.cc: Likewise.
1059     * src/integer/conv/cl_I_from_NDS.cc: Update.
1060     * src/integer/conv/cl_I_from_Q.cc: Remove cast to sint32.
1061     * src/integer/conv/cl_I_from_UQ.cc: Remove cast to uint32.
1062     * src/integer/conv/cl_I_to_L.cc: Check again fixnum that needs more
1063     than 32 bits.
1064     * src/integer/conv/cl_I_to_Q.cc: Call FN_to_V instead of FN_to_L.
1065     * src/integer/conv/cl_I_to_UL.cc: Likewise.
1066     * src/integer/conv/cl_I_to_UQ.cc: Likewise.
1067     * src/integer/elem/cl_I_div.cc: Treat fixnums that need more than 32
1068     bits like bignums.
1069     * src/integer/elem/cl_I_minus.cc: Call FN_to_V instead of FN_to_L.
1070     * src/integer/elem/cl_I_mul.cc: Likewise.
1071     * src/integer/elem/cl_I_plus.cc: Likewise.
1072     * src/integer/elem/cl_I_square.cc: Likewise.
1073     * src/integer/elem/cl_I_uminus.cc: Likewise.
1074     * src/integer/gcd/cl_I_gcd.cc: Likewise.
1075     * src/integer/gcd/cl_low_gcd.cc (gcd): Take uintV arguments.
1076     * src/integer/hash/cl_I_hashcode.cc: Call FN_to_V instead of FN_to_L.
1077     * src/integer/input/cl_I_read.cc (read_integer): Call FN_to_UV instead
1078     of FN_to_UL.
1079     * src/integer/misc/cl_I_ord2.cc (ord2): Call ord2_64 on 64-bit
1080     platforms.
1081     * src/integer/misc/cl_I_power2p.cc: Call FN_to_UV instead of FN_to_UL.
1082     * src/integer/misc/combin/cl_I_doublefactorial.cc (doublefakul_table):
1083     Extend table for larger fixnums.
1084     (doublefactorial): Update.
1085     * src/integer/misc/combin/cl_I_factorial.cc (fakul_table): Extend table
1086     for larger fixnums.
1087     (factorial): Update.
1088     * src/modinteger/cl_MI_fix16.h: Call FN_to_UV instead of FN_to_UL.
1089     * src/modinteger/cl_MI_fix29.h: Likewise.
1090     * src/modinteger/cl_MI_fix32.h: Likewise.
1091     * src/modinteger/cl_MI_std.h: Likewise.
1092     * src/numtheory/cl_nt_cornacchia4.cc: Call FN_to_V instead of FN_to_L.
1093     * src/numtheory/cl_nt_jacobi.cc: Likewise.
1094     * src/numtheory/cl_nt_jacobi_low.cc (jacobi_aux): Take uintV arguments
1095     instead of uint32 arguments.
1096     (jacobi): Take sintV argument instead of a sint32 argument.
1097     * src/rational/input/cl_RA_read.cc: Call FN_to_UV instead of FN_to_UL.
1098     * src/real/input/cl_R_read.cc: Likewise.
1099     * src/vector/cl_GV_I.cc: Likewise.
1100     * tests/timefact.cc: Call FN_to_V instead of FN_to_L.
1101    
1102     2005-12-04 Bruno Haible <bruno@clisp.org>
1103    
1104     More complete 64-bit division macros.
1105     * src/base/cl_low.h (divu_6432_3232_w): Choose a different macro
1106     expansion on x86_64.
1107     (divu_6432_6432): New macro.
1108     (divu_6464_6464): Choose a different macro expansion for all CPUs
1109     except sparc64 and x86_64.
1110     (divu_12864_6464): Define NEED_VAR_divu_64_rest here.
1111     * src/base/low/cl_low_div.cc (divu_64_rest): Avoid defining it twice.
1112     (divu_6464_6464_): New function.
1113    
1114     2005-12-04 Bruno Haible <bruno@clisp.org>
1115    
1116     * src/base/cl_low.h (ord2_64): New macro.
1117    
1118     2005-12-02 Bruno Haible <bruno@clisp.org>
1119    
1120     * src/base/cl_low.h (mulu64) [x86_64]: Change asm restriction, since
1121     mulq doesn't accept immediate arguments.
1122    
1123     2005-11-26 Bruno Haible <bruno@clisp.org>
1124    
1125     * src/base/cl_low.h (GENERIC_INTEGERLENGTH32): New macro.
1126     (integerlength64): Define using integerlength32 if integerlength32
1127     is not defined generically.
1128    
1129     2005-11-26 Bruno Haible <bruno@clisp.org>
1130    
1131     * src/base/cl_low.h (mulu32) [SPARC64]: Remove rd instruction, since
1132     umul returns the complete 64-bit product in a register.
1133     (mulu32_w) [SPARC64]: Prefer umul over mulx instruction.
1134     (divu_6432_3232_w) [SPARC64]: Prefer umul/udiv over mulx/udivx
1135     instructions.
1136    
1137     2005-11-26 Bruno Haible <bruno@clisp.org>
1138    
1139     * src/base/cl_low.h (divu_3216_1616): Prepend underscore to local
1140     variables.
1141    
1142     2005-11-26 Bruno Haible <bruno@clisp.org>
1143    
1144     * src/base/cl_low.h (ord2_32): Parenthesize macro argument.
1145    
1146 kreckel 1.149 2005-12-17 Richard B. Kreckel <kreckel@ginac.de>
1147    
1148     * Created branch cln_1-1 for maintenance patches.
1149     This is the main branch, which will eventually become CLN 1.2.0.
1150    
1151 kreckel 1.148 2005-12-15 Dmitry V. Kustov <kustov@telex221.ru>
1152    
1153     * src/base/random/cl_random_from.cc: Add support for OpenBSD.
1154    
1155 kreckel 1.147 2005-11-23 Richard B. Kreckel <kreckel@ginac.de>
1156 kreckel 1.146
1157     * Version 1.1.11 released.
1158    
1159 kreckel 1.145 2005-11-20 Richard B. Kreckel <kreckel@ginac.de>
1160    
1161     * src/integer/conv/cl_I_cached_power.h: New file.
1162     * src/integer/conv/cl_I_cached_power.cc: New file.
1163     Contains power_table and cached_power_table previously...
1164     * src/integer/conv/cl_I_to_digits.cc: ...here.
1165     * src/integer/conv/cl_I_from_digits.cc: Use cached powers.
1166    
1167 kreckel 1.144 2005-11-02 Richard B. Kreckel <kreckel@ginac.de>
1168    
1169     * src/integer/conv/cl_I_from_digits.cc: Made input of all numbers in
1170     non-power-of-two base much faster.
1171     * tests/test_I_io.cc: New file...
1172     * tests/Makefile.in, tests/test_I.cc: ...used here.
1173    
1174     2005-10-22 Richard B. Kreckel <kreckel@ginac.de>
1175 kreckel 1.143
1176     * Version 1.1.10 released.
1177    
1178 kreckel 1.142 2005-10-22 Richard B. Kreckel <kreckel@ginac.de>
1179    
1180     * src/Makefile.in: Accept CPPFLAGS from environment.
1181     * examples/Makefile.in: Likewise.
1182     * benchmarks/Makefile.in: Likewise.
1183     * tests/Makefile.in: Likewise.
1184    
1185 kreckel 1.138 2005-08-30 Richard B. Kreckel <kreckel@ginac.de>
1186    
1187 kreckel 1.139 * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
1188     duplication of basic blocks on m68k.
1189    
1190     2005-08-30 Richard B. Kreckel <kreckel@ginac.de>
1191    
1192 kreckel 1.138 * include/cln/modules.h (CL_JUMP_TO): Fix mips* brokenness.
1193    
1194 haible 1.132 2005-08-27 Bruno Haible <bruno@clisp.org>
1195    
1196 haible 1.140 Split aclocal.m4 into individual files.
1197     * m4/alloca.m4, m4/as-underscore.m4, m4/c++-constructors.m4:
1198     * m4/fpu_control.m4, m4/general.m4, m4/gettimeofday.m4:
1199     * m4/longdouble.m4, m4/longlong.m4, m4/param.m4, m4/perror.m4:
1200     * m4/proto.m4, m4/rusage.m4, m4/times.m4:
1201     New files, extracted from autoconf/aclocal.m4.
1202     * autoconf/aclocal.m4: m4_include them.
1203     * Makefile.devel (AUTOCONF_MACROS): New variable.
1204     (configure): Depend on it.
1205     (CLISP_M4DIR): Remove variable.
1206     (autoconf/aclocal.m4): Remove rule.
1207    
1208     2005-08-27 Bruno Haible <bruno@clisp.org>
1209    
1210 haible 1.137 * src/integer/bitwise/cl_I_ash_I.cc (ash): Avoid shifting a 32-bit
1211     zero value by more than 31 bits.
1212    
1213     2005-08-27 Bruno Haible <bruno@clisp.org>
1214    
1215 haible 1.136 Make the long-float overflow check work on 64-bit platforms.
1216     * src/float/lfloat/cl_LF.h (LF_exp_mid, LF_exp_high): Define as
1217     'unsigned int', not 'unsigned long'.
1218    
1219     2005-08-27 Bruno Haible <bruno@clisp.org>
1220    
1221 haible 1.141 * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
1222     duplication of basic blocks by g++ 4.0.
1223 haible 1.135 See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23345>.
1224    
1225     2005-08-27 Bruno Haible <bruno@clisp.org>
1226    
1227 haible 1.134 Make it possible to cross-compile CLN.
1228     * m4/intparam.m4: New file.
1229     * m4/floatparam.m4: New file.
1230     * autoconf/aclocal.m4: Include both.
1231     (CL_MACHINE): Add an additional CROSS_MACRO parameter.
1232     * configure.ac (CL_MACHINE): When cross-compiling, use
1233     CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
1234    
1235     2005-08-27 Bruno Haible <bruno@clisp.org>
1236    
1237 haible 1.133 Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
1238     * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
1239     compiling, use the test code from gnulib.
1240    
1241     2005-08-27 Bruno Haible <bruno@clisp.org>
1242    
1243 haible 1.132 * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
1244    
1245 kreckel 1.131 2005-08-16 Richard B. Kreckel <kreckel@ginac.de>
1246    
1247     The patch of 2005-05-01 made it impossible to test the type of a cl_UP
1248     by comparing with &cl_class_univpoly_ring. We need an alternative:
1249     * include/cln/object.h (cl_class_flags_modint_ring): New #define...
1250     * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
1251     * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1252     * src/polynomial/elem/cl_UP_MI.h: Likewise.
1253     * src/polynomial/elem/cl_UP_gen.h: Likewise.
1254     * src/polynomial/elem/cl_UP_number.h: Likewise.
1255    
1256 kreckel 1.130 2005-08-15 Richard B. Kreckel <kreckel@ginac.de>
1257    
1258     * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
1259     * configure.ac: ...used here for setting ASMFLAGS...
1260     * src/Makefile.in: ...which are used here.
1261    
1262 kreckel 1.129 2005-08-02 Andreas Jochens <aj@andaco.de>
1263    
1264     * include/cln/config.h.in: Add support for PowerPC 64 CPU.
1265     * include/cln/modules.h: Likewise.
1266     * include/cln/object.h: Likewise.
1267     * include/cln/types.h: Likewise.
1268    
1269     2005-07-24 Richard B. Kreckel <kreckel@ginac.de>
1270 kreckel 1.128
1271     Make out of the box build on x86_64 system with complete 32 bit
1272     userland possible
1273     * include/cln/config.h.in: Don't #define __x86_64__ when
1274     __i386__ is defined.
1275     * src/base/digitseq/cl_asm_x86_64_.cc: New file.
1276     * doc/cln.tex: Revert workaround description introduced 2005-05-02.
1277    
1278 haible 1.127 2005-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1279    
1280     * Makefile.in: Don't enter nonexisting directories.
1281    
1282 kreckel 1.126 2005-05-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1283    
1284     Speed up the linking step
1285     * src/Makefile.in: Use -objectlist for linking libcln.la.
1286    
1287 kreckel 1.125 2005-05-15 Richard B. Kreckel <kreckel@ginac.de>
1288    
1289     * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
1290     * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
1291    
1292 kreckel 1.124 2005-05-02 Richard B. Kreckel <kreckel@ginac.de>
1293    
1294     * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
1295     userland.
1296    
1297 kreckel 1.123 2005-05-01 Richard B. Kreckel <kreckel@ginac.de>
1298    
1299     Fix crashes in find_univpoly_ring and related functions
1300     * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
1301     remove declaration of cl_class cl_class_modint_ring.
1302     * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
1303     remove declaration of cl_class_univpoly_ring.
1304     * include/cln/object.h: cl_class_flags_modint_ring: New #define...
1305     * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
1306     * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
1307     * src/modinteger/cl_MI_fix29.h: Likewise.
1308     * src/modinteger/cl_MI_fix32.h: Likewise.
1309     * src/modinteger/cl_MI_int32.h: Likewise.
1310     * src/modinteger/cl_MI_montgom.h: Likewise.
1311     * src/modinteger/cl_MI_pow2: Likewise.
1312     * src/modinteger/cl_MI_pow2m1.h: Likewise.
1313     * src/modinteger/cl_MI_pow2p1.h: Likewise.
1314     * src/modinteger/cl_MI_std.h: Likewise.
1315     * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
1316     cl_class_flags_modint_ring, not with cl_class_modint_ring.
1317     * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
1318     * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
1319     * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
1320     * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
1321     Reported by Ralf Goertz <R_Goertz@web.de>.
1322    
1323 kreckel 1.122 2005-04-29 Richard B. Kreckel <kreckel@ginac.de>
1324     Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1325    
1326     * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
1327    
1328 kreckel 1.121 2005-04-24 Richard B. Kreckel <kreckel@ginac.de>
1329    
1330     Make GCC compiler flags default to -O
1331     * m4/cc.m4: New file...
1332     * configure.ac: ...used here.
1333     * autoconf/aclocal.m4: Regenerate.
1334    
1335 kreckel 1.120 2005-04-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1336    
1337     * include/cln/string.h: Declare cl_string.
1338    
1339 kreckel 1.119 2005-03-17 Richard B. Kreckel <kreckel@ginac.de>
1340    
1341     * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
1342     * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
1343     * autoconf/aclocal.m4: Regenerate.
1344    
1345 kreckel 1.118 2005-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1346    
1347     * src/Makefile.in: Use $CXX instead of $CC when linking.
1348    
1349 kreckel 1.117 2005-02-27 Richard B. Kreckel <kreckel@ginac.de>
1350    
1351     * examples/perfnum.cc: update to presumed 42st Mersenne prime.
1352    
1353 kreckel 1.116 2004-11-28 Richard B. Kreckel <kreckel@ginac.de>
1354    
1355     Disambiguate binary operators of CLN types with float/double
1356     * include/cln/dfloat.h: Add binary operator overloads for arguments of
1357     type double.
1358     * include/cln/ffloat.h: Likewise, for arguments of type float.
1359     * include/cln/float.h: Likewise, both for arguments of types double and
1360     float.
1361     * include/cln/real.h: Likewise.
1362 kreckel 1.120 Reported by Isidro Cachadiña Gutiérrez <icacha@unex.es>.
1363 kreckel 1.116
1364 kreckel 1.115 2004-11-03 Richard B. Kreckel <kreckel@ginac.de>
1365    
1366     * Version 1.1.9 released.
1367    
1368 kreckel 1.114 2004-10-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1369    
1370     * src/Makefile.in: Let config.status set LDFLAGS.
1371    
1372 kreckel 1.113 2004-10-27 Peter Breitenlohner <peb@mppmu.mpg.de>
1373    
1374     * cln.pc.in: Fix typo.
1375     * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
1376     cln-config. Allows us to do special things to binaries, like
1377     installing them with install -s.
1378     * doc/Makefile.in: add/remove the cln.info from the installed
1379     $(infodir)/dir unless this is debian install-info (code copied from
1380     what GNU automake would produce).
1381    
1382 kreckel 1.112 2004-10-26 Richard B. Kreckel <kreckel@ginac.de>
1383    
1384     * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
1385     that caused radix specifiers to not work when reading from a stream.
1386     * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
1387     * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
1388     * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
1389     * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
1390    
1391 kreckel 1.111 2004-10-25 Richard B. Kreckel <kreckel@ginac.de>
1392    
1393     * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
1394    
1395 kreckel 1.110 2004-10-24 Richard B. Kreckel <kreckel@ginac.de>
1396    
1397     * src/base/cl_low.h: Add mul and div macros for x86_64.
1398    
1399 kreckel 1.109 2004-10-23 Richard B. Kreckel <kreckel@ginac.de>
1400    
1401     * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
1402     new code for base power of two.
1403    
1404 kreckel 1.108 2004-10-22 Richard B. Kreckel <kreckel@ginac.de>
1405    
1406     * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
1407     overwriting problem. That was the real cause for Debian bug#246319.
1408     * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
1409     for the bug fixed above.
1410    
1411 kreckel 1.107 2004-10-20 Richard B. Kreckel <kreckel@ginac.de>
1412    
1413     * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
1414    
1415 kreckel 1.106 2004-10-12 Richard B. Kreckel <kreckel@ginac.de>
1416    
1417     * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
1418     the base is a power of two.
1419    
1420 kreckel 1.105 2004-10-05 Richard B. Kreckel <kreckel@ginac.de>
1421    
1422     * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
1423    
1424 kreckel 1.104 2004-09-27 Richard B. Kreckel <kreckel@ginac.de>
1425    
1426     Support for little-endian Mips, second shot
1427     * src/base/digitseq/cl_asm_mipsel_.cc: New file...
1428     * src/base/digitseq/cl_asm_cc: ...used here.
1429     * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
1430     * include/cln/object.h: Set alignment for mipsel explicitly.
1431    
1432 kreckel 1.103 2004-09-05 Richard B. Kreckel <kreckel@ginac.de>
1433    
1434     Support for little-endian Mips
1435     * include/cln/config.h.in: Add __mipsel__.
1436     * include/cln/modules.h: For Mips, this is endianness-agnostic.
1437     * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
1438     Mask out assembler for little-endian Mips.
1439    
1440 haible 1.102 2004-08-30 Bruno Haible <bruno@clisp.org>
1441    
1442     * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
1443     * benchmarks/timebench2.results: Add recent PowerPC G4 results.
1444    
1445 kreckel 1.100 2004-08-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1446    
1447 haible 1.102 * examples/e.cc: remove extra semicolon.
1448 kreckel 1.100
1449 haible 1.98 2004-08-25 Bruno Haible <bruno@clisp.org>
1450    
1451     * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
1452     * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
1453 kreckel 1.101 2004-08-22 Bruno Haible <bruno@clisp.org>
1454 kreckel 1.150 * m4/libtool.m4: Add support for Comeau C++ on Linux.
1455     Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
1456 haible 1.99 * autoconf/aclocal.m4: Regenerate.
1457 haible 1.98
1458 haible 1.97 2004-08-19 Bruno Haible <bruno@clisp.org>
1459    
1460     * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
1461     converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
1462     MacOS X.
1463     Reported by Darren Bane <darren.bane@ul.ie>.
1464    
1465 kreckel 1.96 2004-07-01 Richard B. Kreckel <kreckel@ginac.de>
1466    
1467     * Version 1.1.8 released.
1468    
1469 kreckel 1.95 2004-06-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1470 kreckel 1.93
1471 kreckel 1.94 * src/base/cl_macros.h: alloca(3) has size_t argument type.
1472    
1473 kreckel 1.95 2004-06-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1474 kreckel 1.94
1475 kreckel 1.93 * include/cln/floatformat.h: Do define a type here.
1476    
1477 kreckel 1.92 2004-06-27 Richard B. Kreckel <kreckel@ginac.de>
1478    
1479     * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
1480    
1481 haible 1.87 2004-06-23 Bruno Haible <bruno@clisp.org>
1482    
1483     * configure.ac: Pretend ftime() is not available. Needed by
1484     CL_TIMES_CLOCK.
1485    
1486 kreckel 1.91 2004-06-21 Ralf Stephan <ralf@ark.in-berlin.de>
1487    
1488     * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
1489    
1490 kreckel 1.86 2004-06-18 Richard B. Kreckel <kreckel@ginac.de>
1491    
1492     * rational/transcendental/cl_RA_logp.cc: fix bug where base is
1493     reciprocal of an integer.
1494 kreckel 1.91 Reported by Niklas Knutsson <nq@altern.org>.
1495 kreckel 1.86
1496 kreckel 1.89 2004-06-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1497    
1498     * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
1499     src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
1500     Make template specializations explicit.
1501    
1502 kreckel 1.88 2004-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1503    
1504 kreckel 1.90 * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
1505     src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
1506     src/real/input/cl_R_read.cc: Remove unused labels.
1507    
1508     2004-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1509    
1510 kreckel 1.88 * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
1511     benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
1512     benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
1513     examples/atan_recip.cc, examples/atanh_recip.cc,
1514     examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
1515     examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
1516     include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
1517     include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
1518     src/base/cl_alloca.h, src/base/cl_malloc.cc,
1519     src/base/random/cl_random_from.cc,
1520     src/base/string/cl_spushstring_append.cc,
1521     src/base/string/cl_spushstring_push.cc,
1522     src/base/string/cl_st_debug.cc,
1523     src/base/string/input/cl_st_gettoken.cc,
1524     src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
1525     src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
1526     src/rational/input/cl_RA_read.cc,
1527     src/real/format-output/cl_fmt_integer.cc,
1528     src/real/format-output/cl_fmt_paddedstring.cc,
1529     src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
1530     src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
1531     tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
1532     tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
1533     tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
1534     tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
1535     tests/timeLFln-compare.cc, tests/timeLFln.cc,
1536     tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
1537     tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
1538     tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
1539     tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
1540     tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
1541     tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
1542     tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
1543     tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
1544     tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
1545     tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
1546     tests/timezeta3.cc: Change all C include headers to ISO style
1547     within C++ code.
1548    
1549 kreckel 1.85 2004-06-10 Richard B. Kreckel <kreckel@ginac.de>
1550    
1551     * examples/perfnum.cc: update to presumed 41st Mersenne prime.
1552    
1553 kreckel 1.83 2004-05-02 Richard B. Kreckel <kreckel@ginac.de>
1554    
1555 kreckel 1.84 * Version 1.1.7 released.
1556    
1557     2004-05-02 Richard B. Kreckel <kreckel@ginac.de>
1558    
1559 kreckel 1.83 * examples/pi.cc and examples/pi.1: New files.
1560     * examples/Makefile.in: Build the pi executable.
1561    
1562 kreckel 1.82 2004-05-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1563    
1564     * src/Makefile.in: Fix for parallel build: wait for subdir objects to
1565     be finished before creating the library.
1566    
1567 kreckel 1.81 2004-04-30 Richard B. Kreckel <kreckel@ginac.de>
1568    
1569     * src/integer/output/cl_I_print.cc (print_integer): workaround
1570     GCC compiler bug (cf. Debian bug#246319).
1571    
1572 kreckel 1.80 2004-03-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1573    
1574     * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
1575     enabled.
1576    
1577 haible 1.78 2004-03-08 Bruno Haible <bruno@clisp.org>
1578    
1579     * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
1580     underflow condition.
1581 haible 1.79 * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
1582     uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
1583 haible 1.78
1584 kreckel 1.77 2004-03-04 Richard B. Kreckel <kreckel@ginac.de>
1585    
1586     * Makefile.in (install): Add ${srcdir} for cln.m4.
1587     * m4/gmp.m4: quote macro names.
1588     Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1589    
1590 kreckel 1.75 2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
1591    
1592 kreckel 1.76 * Version 1.1.6 released.
1593    
1594     2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
1595    
1596 kreckel 1.75 * include/cln/univpoly.h, include/cln/univpoly_complex.h,
1597     include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
1598     include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
1599     src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
1600     src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
1601     src/polynomial/elem/cl_UP_number.h (ldegree): New function.
1602     * doc/cln.tex: Document `ldegree'.
1603    
1604 kreckel 1.74 2003-12-29 Richard B. Kreckel <kreckel@ginac.de>
1605    
1606     Rework of autoconfiscation infrastructure
1607     * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
1608     * autoconf/ltmain.sh: Update to GNU version 1.4.3.
1609     * autoconf/autoconf: Remove (from now on we assume autoconf is
1610     installed properly on the sytem).
1611     * autoconf/autoconf.m4: Likewise.
1612     * autoconf/autoconf.m4f: Likewise.
1613     * autoconf/acgeneral.m4: Likewise.
1614     * autoconf/acspecific.m4: Likewise.
1615     * autoconf/aclocal.m4: Regenerate.
1616     * autoconf/acinclude.m4: Remove (while moving the macros...)
1617     * m4/gmp.m4: New file (...to here).
1618     * Makefile.devel: Update to new scheme.
1619     * configure.ac: Likewise.
1620     * include/cln/GV_integer.h: Assume template specializations work.
1621     * include/cln/GV_modinteger.h: Likewise.
1622     * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
1623     * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
1624     * src/base/random/cl_random_from.cc: Likewise.
1625     * src/timing/cl_base_config.h.in: Likewise.
1626     * src/timing/cl_t_current.cc: Likewise.
1627    
1628 kreckel 1.73 2003-12-27 Richard B. Kreckel <kreckel@ginac.de>
1629    
1630     * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
1631     argument is zero.
1632     * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
1633     * src/polynomial/cl_UP_number.h (num_minus): Likewise.
1634     Reported by Munagala Ramanath <amberarrow@yahoo.com>.
1635    
1636 kreckel 1.72 2003-12-02 Richard B. Kreckel <kreckel@ginac.de>
1637    
1638     * examples/perfnum.cc: update to presumed 40th Mersenne prime.
1639    
1640 kreckel 1.75 2003-11-20 Christian Bauer <cbauer@ginac.de>
1641    
1642     Added pkg-config support
1643     * cln.pc.in: New file.
1644     * Makefile.in: Take care of cln.pc.
1645     * configure.ac: Likewise.
1646    
1647     2003-08-06 Richard B. Kreckel <kreckel@ginac.de>
1648 kreckel 1.71
1649     * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
1650     Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
1651    
1652 kreckel 1.70 2003-08-01 Richard Kreckel <kreckel@ginac.de>
1653    
1654     More dependent base resolution issues
1655     * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()):
1656     portable syntactic simplification.
1657     * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
1658     * src/base/hash/cl_hash1.h: Likewise for member functions.
1659     * src/base/hash/cl_hash2.h: Likewise.
1660     * src/base/hash/cl_hashuniq.h: Likewise.
1661     * src/base/hash/cl_hashuniqweak.h: Likewise.
1662     * src/base/hash/cl_hash.h: Revert explicit static member function
1663     lookup since that was GCC's fault.
1664     * src/base/hash/cl_hash2weak.h: Likewise.
1665     * src/base/hash/cl_hashuniqweak.h: Likewise.
1666    
1667 kreckel 1.69 2003-06-29 Richard Kreckel <kreckel@ginac.de>
1668    
1669     Dependent base resolution needed for GCC-3.4
1670     * include/cln/GV.h: Preceed inherited members with this->.
1671     * include/cln/SV.h: Likewise.
1672     * include/cln/object.h: Likewise.
1673     * src/base/hash/cl_hash1.h: Likewise.
1674     * src/base/hash/cl_hash1weak.h: Likewise.
1675     * src/base/hash/cl_hash2.h: Likewise.
1676     * src/base/hash/cl_hashuniq.h: Likewise.
1677     * src/base/hash/cl_hash.h: Make lookup of static member function
1678     explicit.
1679     * src/base/hash/cl_hash2weak.h: Likewise.
1680     * src/base/hash/cl_hashuniqweak.h: Likewise.
1681     * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
1682    
1683 haible 1.68 2003-02-24 Bruno Haible <bruno@clisp.org>
1684 haible 1.67
1685     * src/base/random/cl_random_from.cc (random_state::random_state): Add
1686     support for MacOS X.
1687 haible 1.68 * src/modinteger/cl_MI.cc: #undef _R.
1688 haible 1.67 Reported by Erann Gat <gat@jpl.nasa.gov>.
1689    
1690 haible 1.66 2002-08-03 Joerg Arndt <jj@suse.de>
1691    
1692     * include/cln/config.h.in: Add support for x86_64 CPU.
1693     * include/cln/modules.h: Likewise.
1694     * include/cln/types.h: Likewise.
1695     * include/cln/object.h: Likewise.
1696    
1697 kreckel 1.65 2002-06-08 Richard Kreckel <kreckel@ginac.de>
1698    
1699     * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
1700     m68k Assembler routines.
1701     * src/base/digitseq/cl_asm_.cc: Likewise.
1702    
1703 kreckel 1.64 2002-05-28 Richard Kreckel <kreckel@ginac.de>
1704    
1705     * Version 1.1.5 released.
1706    
1707 kreckel 1.63 2002-05-27 Richard Kreckel <kreckel@ginac.de>
1708    
1709     * include/cln/modules.h (CL_CONCATENATE): New macro.
1710    
1711 kreckel 1.62 2002-05-10 Richard Kreckel <kreckel@ginac.de>
1712    
1713     * doc/cln.tex (Building the library): Update recommendations for
1714     compiling on Tru64 using g++ 3.0 and 3.1.
1715     * README: Update homepage.
1716    
1717 haible 1.58 2002-05-05 Bruno Haible <bruno@clisp.org>
1718    
1719 haible 1.61 * doc/cln.tex (Building the library): Give some recommendations for
1720     g++ 3.0 and 3.1.
1721    
1722 haible 1.60 Force link-time references despite optimizations done by g++ 2.95
1723     and newer.
1724     * include/cln/modules.h (CL_FORCE_LINK): New macro.
1725     * Use CL_FORCE_LINK.
1726     * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
1727     * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
1728     * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
1729     * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
1730     * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
1731     * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
1732     Likewise.
1733     * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
1734     Likewise.
1735     * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
1736     * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
1737     * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
1738     * include/cln/real.h (cl_R_debug_dummy): Likewise.
1739     * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
1740     * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
1741     Likewise.
1742     * include/cln/string.h (cl_string_debug_dummy): Likewise.
1743     * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
1744     * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
1745    
1746 haible 1.58 Avoid g++ 3.1 warnings.
1747 haible 1.59 * src/base/cl_offsetof.h (offsetof): Redefine each time.
1748     * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
1749    
1750     Avoid g++ 3.1 warnings.
1751 haible 1.58 * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
1752     where needed.
1753     * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
1754     htxentry as a shortcut.
1755     * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
1756     * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
1757     * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
1758     Likewise.
1759    
1760 haible 1.57 2002-03-15 Bruno Haible <bruno@clisp.org>
1761    
1762     * cln.tex: Document problem with GNU make 3.77.
1763     Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
1764    
1765 kreckel 1.56 2002-02-16 Richard Kreckel <kreckel@ginac.de>
1766    
1767 kreckel 1.150 * cln.m4: quote macro name.
1768     Pointed out by Roberto Bagnara.
1769 kreckel 1.56
1770 kreckel 1.55 2002-01-20 Richard Kreckel <kreckel@ginac.de>
1771    
1772 kreckel 1.150 * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
1773     (the old one was broken on Linux/Mips.)
1774 kreckel 1.55
1775 kreckel 1.54 2002-01-04 Richard Kreckel <kreckel@ginac.de>
1776    
1777 kreckel 1.150 * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
1778     * Version 1.1.4 released.
1779 kreckel 1.54
1780 kreckel 1.53 2002-01-03 Richard Kreckel <kreckel@ginac.de>
1781    
1782 kreckel 1.150 * autoconf/acinclude.m4: revamp MPN-matcher.
1783     * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
1784     sync with CLisp from CVS.
1785     * autoconf/autoconf: Likewise.
1786     * autoconf/autoconf.m4f: Likewise (new file).
1787     * configure.ac: Likewise (new file, replaces configure.in).
1788     * configure.in: Likewise (deleted, replaced by configure.ac).
1789     * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
1790     * src/Makefile.in: made VPATH safe for autoconf-2.52.
1791     * include/cln/config.h.in: Add __s390__.
1792 kreckel 1.53
1793 kreckel 1.52 2001-12-31 Richard Kreckel <kreckel@ginac.de>
1794    
1795 kreckel 1.150 * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
1796     any more since GMP4 has some C++ support in it.
1797 kreckel 1.52
1798 kreckel 1.51 2001-12-14 Richard Kreckel <kreckel@ginac.de>
1799    
1800 kreckel 1.150 * include/cln/modules.h, include/cln/object.h: add support for
1801     s390.
1802     * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
1803     on s390, provided by Gerhard Tonn.
1804 kreckel 1.51
1805 kreckel 1.50 2001-11-05 Richard Kreckel <kreckel@ginac.de>
1806    
1807 kreckel 1.150 * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
1808     * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
1809     * Version 1.1.3 released.
1810 kreckel 1.50
1811 haible 1.49 2001-11-04 Bruno Haible <haible@clisp.cons.org>
1812    
1813 kreckel 1.150 Interoperability with gcc-3.0 -fuse-cxa-atexit.
1814     * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
1815     global destructors actually exist.
1816     * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
1817     Don't hack the global destructors if there is no global destructors
1818     function.
1819 haible 1.49
1820 kreckel 1.47 2001-11-03 Richard Kreckel <kreckel@ginac.de>
1821    
1822 kreckel 1.150 * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
1823     values of x, return square(x) instead of x.
1824     * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
1825 kreckel 1.47
1826     2001-07-25 Richard Kreckel <kreckel@ginac.de>
1827 kreckel 1.46
1828 kreckel 1.150 * Version 1.1.2 released.
1829 kreckel 1.46
1830 kreckel 1.47 2001-07-24 Richard Kreckel <kreckel@ginac.de>
1831 kreckel 1.45
1832 kreckel 1.150 * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
1833     friend of cl_heap_hashtable<htentry>.
1834 kreckel 1.45
1835 kreckel 1.47 2001-07-22 Richard Kreckel <kreckel@ginac.de>
1836 kreckel 1.44
1837 kreckel 1.150 * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
1838     _FPU_IEEE is really defined.
1839     * include/cln/modules.h: change assembler labels from `label' to
1840     `label:' on hppa, needed by Linux (see comment).
1841     * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
1842     * Makefile.devel: adjusted.
1843     * autoconf/aclocal.m4: regenerate.
1844     * src/base/low/cl_low_mul.cc: moved POD variables that are declared
1845     extern "C" elsewhere out of the namespace.
1846     * src/base/low/cl_low_div.cc: Likewise.
1847 kreckel 1.44
1848 kreckel 1.47 2001-06-08 Bruno Haible <haible@clisp.cons.org>
1849 haible 1.43
1850 kreckel 1.150 * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
1851     * autoconf/aclocal.m4: Upgrade to libtool-1.4.
1852     * autoconf/ltmain.sh: Likewise.
1853     * autoconf/ltconfig: Remove file.
1854     * autoconf/install-sh: New file.
1855     * configure.in: Add AC_CONFIG_AUX_DIR call.
1856 haible 1.43
1857 kreckel 1.47 2001-06-05 Richard Kreckel <kreckel@ginac.de>
1858 kreckel 1.42
1859 kreckel 1.150 * tests/tests.cc: resolve namespace ambiguity about strcmp().
1860 kreckel 1.42
1861 kreckel 1.47 2001-05-31 Richard Kreckel <kreckel@ginac.de>
1862 kreckel 1.41
1863 kreckel 1.150 * Version 1.1.1 released.
1864 kreckel 1.41
1865 kreckel 1.40 2001-05-28 Richard Kreckel <kreckel@ginac.de>
1866    
1867 kreckel 1.150 * cln/cln.tex: documented problems with shared library on Sparc
1868     using gcc older than 2.95.3.
1869     * configure.in: Fixed typos in versioning docu.
1870 kreckel 1.40
1871 haible 1.39 2001-05-25 Bruno Haible <haible@clisp.cons.org>
1872    
1873 kreckel 1.150 * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
1874     hexadecimal constants.
1875 haible 1.39
1876 kreckel 1.38 2001-05-25 Richard Kreckel <kreckel@ginac.de>
1877    
1878 kreckel 1.150 * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
1879     * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
1880     * Removed LiDIA interface since that is now outdated (namespace cln)
1881     and maintained elsewhere.
1882     * Adjusted dates and final touches for 1.1.1.
1883 kreckel 1.38
1884 kreckel 1.37 2001-05-19 Richard Kreckel <kreckel@ginac.de>
1885    
1886 kreckel 1.150 * INSTALL: Update toolchain info: no egcs, some more platforms.
1887     * doc/cln.tex: Likewise.
1888 kreckel 1.37
1889 kreckel 1.36 2001-05-18 Richard Kreckel <kreckel@ginac.de>
1890    
1891 kreckel 1.150 * src/base/cl_low.h: prepended variables declared inside macros
1892     with underscore. Fixes equal_hashcode() on various platforms.
1893 kreckel 1.36
1894 kreckel 1.35 2001-04-25 Richard Kreckel <kreckel@ginac.de>
1895    
1896 kreckel 1.150 * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
1897     this definition becomes actually useful. This is needed for
1898     compilation on Arm until somebody fixes the assembler files for Arm.
1899     * src/base/digitseq/cl_asm.h: Likewise.
1900     * src/base/digitseq/cl_asm_.cc: Likewise.
1901     * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
1902     one can say `make CPPFLAGS=-DFOOBAR'.
1903 kreckel 1.35
1904 kreckel 1.34 2001-03-26 Arvid Norberg <c99ang@cs.umu.se>
1905    
1906 kreckel 1.150 * src/base/random/cl_random_from.cc: ported to beos.
1907 kreckel 1.34
1908 kreckel 1.33 2001-03-05 Richard Kreckel <kreckel@ginac.de>
1909    
1910 kreckel 1.150 * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
1911 kreckel 1.33
1912 kreckel 1.32 2001-01-28 Richard Kreckel <kreckel@ginac.de>
1913    
1914 kreckel 1.150 * include/cln/number.h (cl_as_N): Remove bogus comment.
1915 kreckel 1.32
1916 kreckel 1.31 2001-01-22 Richard Kreckel <kreckel@ginac.de>
1917    
1918 kreckel 1.150 * configure.in: Make build in separate builddir possible (again).
1919 kreckel 1.31
1920     2001-01-22 Richard Kreckel <kreckel@ginac.de>
1921    
1922 kreckel 1.150 * include/cln/*.h: Change signatures of all classes' methods
1923     cln::cl_foo::operator new(size_t, cl_foo*) to
1924     cln::cl_foo::operator new(size_t, void*) so one can declare
1925     std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
1926     certain STL implementations (like libstdc++-v3).
1927 kreckel 1.31
1928 kreckel 1.30 2000-12-14 Richard Kreckel <kreckel@ginac.de>
1929    
1930 kreckel 1.150 * Version 1.1 released.
1931 kreckel 1.30
1932     2000-12-13 Richard Kreckel <kreckel@ginac.de>
1933    
1934 kreckel 1.150 * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
1935 kreckel 1.30
1936 kreckel 1.29 2000-12-05 Richard Kreckel <kreckel@ginac.de>
1937    
1938 kreckel 1.150 * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
1939     * include/cln/version.h.in, src/base/verion.cc: New files.
1940     * configure.in: Generate include/cln/version.h.
1941     * cln.m4: Rewrote it. Check result of cln-config without compiling.
1942     Do cross-check library version and header version information.
1943 kreckel 1.29
1944     2000-12-02 Christian Bauer <cbauer@ginac.de>
1945    
1946 kreckel 1.150 * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
1947     * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
1948     building.
1949 kreckel 1.29
1950 kreckel 1.28 2000-11-24 Richard Kreckel <kreckel@ginac.de>
1951    
1952 kreckel 1.150 * */*: Removed problematic stdin, stdout and stderr definitions.
1953     Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
1954 kreckel 1.28
1955 haible 1.27 2000-11-20 Bruno Haible
1956    
1957 kreckel 1.150 * cln-config.1: change title.
1958 haible 1.27
1959 kreckel 1.26 2000-11-18 Richard Kreckel <kreckel@ginac.de>
1960    
1961 kreckel 1.150 * cln.m4: New file.
1962     * doc/cln.tex: Document package tools cln-config and cln.m4.
1963     * Makefile.in: Care about cln.m4.
1964 kreckel 1.26
1965 kreckel 1.25 2000-11-17 Richard Kreckel <kreckel@ginac.de>
1966    
1967 kreckel 1.150 * cln-config.1: added manpage, as required by a couple of distros.
1968     * Makefile.in, doc/Makefile.in: target install depends on installdirs.
1969 kreckel 1.25
1970 kreckel 1.24 2000-11-16 Richard Kreckel <kreckel@ginac.de>
1971    
1972 kreckel 1.150 * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
1973     * configure.in: ...used here.
1974     * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
1975     * include/cln/types.h: ...used here.
1976     * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
1977 kreckel 1.24
1978 kreckel 1.23 2000-11-13 Richard Kreckel <kreckel@ginac.de>
1979    
1980 kreckel 1.150 * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
1981     in order to guard against an accidented configuration.
1982     * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of
1983     struct power_table_entry initialized as ULL instead of as UL, if
1984     intDsize==64 (caused misprinting on MIPS w/ GMP).
1985     * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if
1986     HAVE_FAST_LONGLONG.
1987     * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
1988     * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival
1989     generation of Bignum for intDsize==64 and a notreached-check at end.
1990     * autoconf/config.guess, autoconf/config.sub: updated from FSF.
1991     * include/cln/config.h.in: Prepared support for IA64.
1992     * include/cln/types.h: Likewise.
1993     * include/cln/object.h: Likewise.
1994     * include/cln/modules.h: Likewise.
1995     * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's
1996     compiler claims __GNUC_MINOR__==9).
1997 kreckel 1.23
1998     2000-11-03 Richard Kreckel <kreckel@ginac.de>
1999    
2000 kreckel 1.150 * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
2001     HAVE_DD to HAVE_FAST_LONGLONG.
2002     * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
2003     * src/base/cl_low.h: actually no need to include "cln/types.h" here.
2004     * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
2005     * src/base/random/cl_UL_random.cc (random32): a is always ULL.
2006 kreckel 1.23
2007 kreckel 1.22 2000-11-01 Richard Kreckel <kreckel@ginac.de>
2008    
2009 kreckel 1.150 * include/cln/object.h (cl_combine): define additional signatures, if
2010     HAVE_LONGLONG is defined, in order to keep the compiler happy.
2011     * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
2012     * src/base/cl_macros.h (bit): ...for this macro...
2013     * src/base/cl_macros.h (minus_bit): ...and this one.
2014     * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
2015     * src/base/cl_low.h (logcount_64): ...for this macro.
2016     * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
2017     * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
2018     that turned up when intDsize==32 and cl_word_size==64.
2019     * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
2020     to uint64 that turned up when intDsize==32 and cl_word_size==64.
2021 kreckel 1.22
2022 kreckel 1.21 2000-10-29 Richard Kreckel <kreckel@ginac.de>
2023    
2024 kreckel 1.150 * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
2025     #undef stderr, if it's defined so cln::stderr isn't confused.
2026     * src/base/input/cl_read_globals.cc: stdin should not be extern.
2027 kreckel 1.21
2028 kreckel 1.19 2000-09-05 Richard Kreckel <kreckel@ginac.de>
2029    
2030 kreckel 1.150 * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
2031     to the appropiate method instead of prefixing `as_'.
2032     * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
2033     * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
2034     * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
2035     * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
2036     * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
2037     * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
2038     * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
2039     * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
2040     * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
2041 kreckel 1.20
2042     2000-09-05 Richard Kreckel <kreckel@ginac.de>
2043    
2044 kreckel 1.150 * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
2045     the 0^y cases.
2046 kreckel 1.19
2047 kreckel 1.18 2000-08-30 Richard Kreckel <kreckel@ginac.de>
2048    
2049 kreckel 1.150 * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
2050     Rearranged for a clearer distinction between macros and remaining
2051     identifiers, so Cint can parse it smoothly.
2052 kreckel 1.18
2053 kreckel 1.17 2000-08-29 Richard Kreckel <kreckel@ginac.de>
2054    
2055 kreckel 1.150 * include/cln/number.h, the(const cl_number& x): New template
2056     function.
2057 kreckel 1.17
2058 kreckel 1.18 2000-08-29 Richard Kreckel <kreckel@ginac.de>
2059    
2060 kreckel 1.150 * */*: Pushed CLN into a namespace `cln'. While doing so, the
2061     following identifiers got their poor-man's namespace (i.e. the
2062     prefix `cl_') stripped off:
2063     cl_catalanconst() -> catalanconst()
2064     cl_compare() -> compare()
2065     cl_cos_sin() -> cos_sin()
2066     cl_cos_sin_t -> cos_sin_t
2067     cl_cosh_sinh() -> cosh_sinh()
2068     cl_cosh_sinh_t -> cosh_sinh_t
2069     cl_decoded_dfloat -> decoded_dfloat
2070     cl_decoded_ffloat -> decoded_ffloat
2071     cl_decoded_float -> decoded_float
2072     cl_decoded_lfloat -> decoded_lfloat
2073     cl_decoded_sfloat -> decoded_sfloat
2074     cl_default_float_format -> default_float_format
2075     cl_default_print_flags -> default_print_flags
2076     cl_default_random_state -> default_random_state
2077     cl_double_approx() -> double_approx()
2078     cl_equal() -> equal()
2079     cl_equal_hashcode() -> equal_hashcode()
2080     cl_eulerconst() -> eulerconst()
2081     cl_find_modint_ring() -> find_modint_ring()
2082     cl_find_univpoly_ring() -> find_univ_poly_ring()
2083     cl_float_approx() -> float_approx
2084     cl_float_format() -> float_format()
2085     cl_float_format_t -> float_format_t
2086     cl_free_hook() -> free_hook()
2087     cl_hermite() -> hermite()
2088     cl_laguerre() -> laguerre()
2089     cl_legendre() -> legandre()
2090     cl_malloc_hook() -> malloc_hook()
2091     cl_pi() -> pi()
2092     cl_tschebychev() -> tschebychev()
2093     cl_zeta() -> zeta()
2094     NB: For functions these changes includes all signatures.
2095     * include/*: moved to include/cln/*, stripped `cl_' off filenames.
2096     * cln-config.in: new file.
2097 kreckel 1.18
2098 haible 1.16 2000-08-26 Bruno Haible <haible@clisp.cons.org>
2099    
2100 kreckel 1.150 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
2101     value, not parens.
2102 haible 1.16
2103 haible 1.15 2000-08-18 Bruno Haible <haible@clisp.cons.org>
2104    
2105 kreckel 1.150 * include/cl_univpoly_modint.h: Fix typo.
2106 haible 1.15
2107 haible 1.14 2000-07-13 Bruno Haible <haible@clisp.cons.org>
2108    
2109 kreckel 1.150 * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
2110     used as precision marker for floats.
2111     Reported by Keith Briggs (in 1998) and Thomas Roessler.
2112     * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
2113     * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
2114     * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
2115     * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
2116 haible 1.14
2117 haible 1.13 2000-06-22 Bruno Haible <haible@clisp.cons.org>
2118    
2119 kreckel 1.150 * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
2120     * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
2121     with N32 ABI.
2122     (cl_word_size): New macro.
2123     * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
2124     cl_word_size.
2125 haible 1.13
2126 haible 1.11 2000-05-31 Bruno Haible <haible@clisp.cons.org>
2127    
2128 kreckel 1.150 * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
2129     From a sample that fails with gcc-2.95.2 on Sparc.
2130     * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
2131 haible 1.11
2132 kreckel 1.10 2000-05-30 Richard Kreckel <kreckel@ginac.de>
2133    
2134 kreckel 1.150 * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
2135     New macros.
2136     * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
2137     CL_VERSION_PATCHLEVEL): New definitions.
2138     * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
2139     autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
2140     * src/Makefile.in, configure.in: release-variables renamed from
2141     CLN_* to CL_*.
2142     * configure.in: default to build both shared and static library
2143     (i.e. default to the most common behaviour).
2144 kreckel 1.10
2145 kreckel 1.9 2000-05-29 Richard Kreckel <kreckel@ginac.de>
2146    
2147 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
2148     environment around the patch of 2000-05-23.
2149 kreckel 1.9
2150 haible 1.8 2000-05-29 Bruno Haible <haible@clisp.cons.org>
2151    
2152 kreckel 1.150 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
2153     Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
2154 haible 1.8
2155 kreckel 1.7 2000-05-27 Richard Kreckel <kreckel@ginac.de>
2156    
2157 kreckel 1.150 * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
2158     src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
2159 kreckel 1.7
2160 kreckel 1.6 2000-05-24 Richard Kreckel <kreckel@ginac.de>
2161    
2162 kreckel 1.150 * autoconf/config.*: Updated to new version from FSF
2163     (the new libtool wants this).
2164     * src/Makefile.in: added $(LDFLAGS) to link step.
2165     * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted
2166     break-even points.
2167 kreckel 1.6
2168 haible 1.5 2000-05-23 Bruno Haible <haible@clisp.cons.org>
2169    
2170 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
2171     host_vendor, host_os correctly if $host has more than two hyphens.
2172 haible 1.5
2173 kreckel 1.4 2000-05-19 Richard Kreckel <kreckel@ginac.de>
2174    
2175 kreckel 1.150 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
2176     better match present-day CPUs whenever GMP3 is used.
2177     * src/base/digitseq/cl_DS_div.cc: dto.
2178     * src/TUNING: Added comment about order of tuning.
2179     * configure, configure.in: Safer GMP3-detection.
2180     * INSTALL.generic: Clarified behaviour of --with-gmp.
2181     * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
2182 kreckel 1.4
2183     2000-05-04 Richard Kreckel <kreckel@ginac.de>
2184    
2185 kreckel 1.150 * gmp/: removed completely. From now on we are going to link
2186     externally against libgmp3.0 or above!
2187     * configure, configure.in, Makefile.in, */Makeflags: removed support
2188     of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
2189     setting $CPPFLAGS instead.
2190     * Makefile.in: Added libtool inter-library dependency for -lgmp and
2191     conforming interface versioning (-version-info).
2192     * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
2193     from libtool 1.3.4.
2194 kreckel 1.4
2195 kreckel 1.3 2000-02-22 Bruno Haible <haible@clisp.cons.org>
2196    
2197 kreckel 1.150 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
2198     parameter passing was changed for the MIPS n32 ABI.
2199 kreckel 1.3
2200 kreckel 1.2 2000-01-24 Richard Kreckel <kreckel@ginac.de>
2201    
2202 kreckel 1.150 * gmp/*: Replaced the complete mpn sources with the ones from
2203     Debian since they are maintained while the ones from FSF
2204     aren't and there were problems on some architectures, PowerPC
2205     in particular. See the file gmp/README.CLN. This way the
2206     hard links in this directory have vanished, they were causing
2207     trouble for people working in AFS. This became necessary for
2208     Debian, because there it woudn't compile on PPC.
2209 kreckel 1.2
2210 kreckel 1.1 2000-01-13 Richard Kreckel <kreckel@ginac.de>
2211    
2212 kreckel 1.150 * Version 1.0.3 released.
2213 kreckel 1.1
2214     2000-01-13 Richard Kreckel <kreckel@ginac.de>
2215    
2216 kreckel 1.150 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
2217     use __attribute__ ((__noreturn__)) instead of the __volatile__
2218     storage class.
2219     (nonreturning): Remove macro.
2220     * include/*: Minor fixes to stop -ansi -pedantic from complaining.
2221     * include/cl_integer.h: (doublefactorial): New declaration.
2222     * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
2223 kreckel 1.1
2224     1999-12-18 Bruno Haible <haible@clisp.cons.org>
2225    
2226 kreckel 1.150 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
2227     "cat", not "echo".
2228     * autoconf/ltconfig: Improve support for recent FreeBSD 3.
2229     * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
2230     'const T', to match definition in src/vector/cl_GV_number.cc.
2231     Reported by Duncan Simpson <dps@io.stargate.co.uk>.
2232     * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
2233     yield return code 1.
2234 kreckel 1.1
2235     1999-09-07 Bruno Haible <haible@clisp.cons.org>
2236    
2237 kreckel 1.150 * Version 1.0.2 released.
2238 kreckel 1.1
2239     1999-09-06 Bruno Haible <haible@clisp.cons.org>
2240    
2241 kreckel 1.150 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
2242     boolean expression, write alternatives ending with either
2243     "return cl_true;" or "return cl_false;". This way, g++ does a
2244     better job inlining it.
2245     * src/float/cl_F.h (longfloatp): Likewise.
2246     * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
2247     * src/complex/cl_C.h (realp, complexp): Likewise.
2248 kreckel 1.1
2249     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2250    
2251 kreckel 1.150 * include/cl_integer.h (cl_equal_hashcode): New declaration.
2252     * include/cl_rational.h (cl_equal_hashcode): New declaration.
2253     * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
2254     * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
2255     * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
2256     * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
2257     * include/cl_float.h (cl_equal_hashcode): New declaration.
2258     * include/cl_real.h (cl_equal_hashcode): New declaration.
2259     * include/cl_complex.h (cl_equal_hashcode): New declaration.
2260     * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
2261     * src/integer/misc/cl_I_eqhashcode.cc: New file.
2262     * src/rational/misc/cl_RA_eqhashcode.cc: New file.
2263     * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
2264     * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
2265     * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
2266     * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
2267     * src/float/misc/cl_F_eqhashcode.cc: New file.
2268     * src/real/misc/cl_R_eqhashcode.cc: New file.
2269     * src/complex/misc/cl_C_eqhashcode.cc: New file.
2270     * doc/cln.tex: Document `cl_equal_hashcode'.
2271 kreckel 1.1
2272     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2273    
2274 kreckel 1.150 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
2275     (cl_number_ring): New class.
2276     (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
2277     (instanceof): New function.
2278     * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
2279     * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
2280     * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
2281     * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
2282     * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
2283     * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
2284     * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
2285     * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
2286     * doc/cln.tex: Document `instanceof'.
2287 kreckel 1.1
2288     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2289    
2290 kreckel 1.150 * include/cl_rational.h (numerator, denominator): New declarations.
2291     * src/rational/elem/cl_RA_numerator.cc: New file.
2292     * src/rational/elem/cl_RA_denominator.cc: New file.
2293     * include/cl_integer.h (numerator, denominator): New inline functions.
2294     * doc/cln.tex: Document `numerator' and `denominator'.
2295 kreckel 1.1
2296     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2297    
2298 kreckel 1.150 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
2299     in the integer case.
2300     * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
2301 kreckel 1.1
2302     1999-09-05 Bruno Haible <haible@clisp.cons.org>
2303    
2304 kreckel 1.150 * include/cl_config.h.in: Support for sparc64 CPU.
2305     * include/cl_modules.h: Likewise.
2306     * include/cl_types.h: Likewise.
2307     * include/cl_object.h: Likewise.
2308     * include/cl_GV.h: Likewise.
2309     * src/Makefile.in: Likewise.
2310     * src/base/cl_alloca.h: Likewise.
2311     * src/base/cl_macros.h: Likewise.
2312     * src/base/cl_sysdep.h: Likewise.
2313     * src/base/cl_low.h: Likewise.
2314     * src/base/digitseq/cl_asm.h: Likewise.
2315     * src/base/digitseq/cl_asm_.cc: Likewise.
2316     * src/base/digitseq/cl_asm_sparc64.h: New file.
2317     * src/base/digitseq/cl_asm_sparc64_.cc: New file.
2318     * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
2319     * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
2320     * src/polynomial/elem/cl_UP_GF2.h: Likewise.
2321     * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
2322 kreckel 1.1
2323     1999-09-04 Bruno Haible <haible@clisp.cons.org>
2324    
2325 kreckel 1.150 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
2326     Use the `orn' instruction.
2327 kreckel 1.1
2328     1999-08-14 Bruno Haible <haible@clisp.cons.org>
2329    
2330 kreckel 1.150 Assume all platforms have <stdlib.h> and clock_t.
2331     * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
2332     * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
2333     * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
2334     * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
2335     * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
2336 kreckel 1.1
2337     1999-07-18 Bruno Haible <haible@clisp.cons.org>
2338    
2339 kreckel 1.150 * gmp/config.guess: Link to autoconf/config.guess.
2340     gmp/config.sub: Link to autoconf/config.sub.
2341     Needed for Win32 platforms.
2342 kreckel 1.1
2343     1999-07-17 Bruno Haible <haible@clisp.cons.org>
2344    
2345 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
2346     "sparc64" according to the C compiler, not the uname result.
2347 kreckel 1.1
2348     1999-06-17 Bruno Haible <haible@clisp.cons.org>
2349    
2350 kreckel 1.150 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
2351     COUNTER_LOOPS version, fortunately not used yet.
2352 kreckel 1.1
2353 kreckel 1.150 * include/cl_modules.h: Prepare for gcc version 3.
2354 kreckel 1.1
2355     1999-06-12 Bruno Haible <haible@clisp.cons.org>
2356    
2357 kreckel 1.150 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
2358     Change the last call from I_I_to_RT to I_I_to_RA.
2359 kreckel 1.1
2360     1999-06-09 Bruno Haible <haible@clisp.cons.org>
2361    
2362 kreckel 1.150 * Version 1.0.1 released.
2363 kreckel 1.1
2364     1999-06-09 Bruno Haible <haible@clisp.cons.org>
2365    
2366 kreckel 1.150 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
2367     intDsize==64.
2368 kreckel 1.1
2369     1999-06-08 Bruno Haible <haible@clisp.cons.org>
2370    
2371 kreckel 1.150 * autoconf/intparam.c (printf_underscored): Change argument type to
2372     `const char*'.
2373     * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
2374     (CL_PROVIDE, CL_PROVIDE_END): Use them.
2375     * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
2376     * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
2377     * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
2378     cast a cl_I to void here. Works around a bug in g++-2.95.
2379     * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
2380     * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
2381     dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
2382     in g++-2.95.
2383     * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
2384     macro.
2385     * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
2386     * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
2387     DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
2388     * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
2389     Likewise.
2390 kreckel 1.1
2391     1999-06-01 Bruno Haible <haible@clisp.cons.org>
2392    
2393 kreckel 1.150 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
2394     variants to alpha.
2395 kreckel 1.1
2396     1999-05-29 Bruno Haible <haible@clisp.cons.org>
2397    
2398 kreckel 1.150 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
2399     OpenBSD like NetBSD.
2400     * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
2401     * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
2402     OpenBSD like NetBSD, and Linux/ELF like SVR4.
2403 kreckel 1.1
2404     1999-05-16 Bruno Haible <haible@clisp.cons.org>
2405    
2406 kreckel 1.150 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
2407     syntax on AIX systems and new assembler syntax on non-AIX systems.
2408 kreckel 1.1
2409     1999-05-01 Bruno Haible <haible@clisp.cons.org>
2410    
2411 kreckel 1.150 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
2412     version from GNU CVS.
2413 kreckel 1.1
2414     1999-04-24 Bruno Haible <haible@clisp.cons.org>
2415    
2416 kreckel 1.150 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
2417     either operand is a positive fixnum, O(1) instead of O(N).
2418     * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
2419     * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
2420     first operand.
2421 kreckel 1.1
2422     1999-04-14 Bruno Haible <haible@clisp.cons.org>
2423    
2424 kreckel 1.150 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
2425     ctor/dtor needs to be exported.
2426     * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
2427     * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
2428     CL_GLOBALIZE_LABEL.
2429     (CL_GLOBALIZE_LABEL): New macro.
2430     (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
2431     (CL_PROVIDE): Update.
2432 kreckel 1.1
2433     1999-04-12 Bruno Haible <haible@clisp.cons.org>
2434    
2435 kreckel 1.150 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
2436     errors ("unterminated string or character constant").
2437     ($(ASMFILES_LO)): On HPPA, try with various settings of
2438     COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
2439 kreckel 1.1
2440     1999-04-11 Bruno Haible <haible@clisp.cons.org>
2441    
2442 kreckel 1.150 * INSTALL: Mention gmp problems on MIPS.
2443     * doc/cln.tex: Likewise.
2444 kreckel 1.1
2445     1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
2446    
2447 kreckel 1.150 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
2448     the source tree.
2449     * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
2450     (CL_GLOBALIZE_ASM_LABEL): New macro.
2451     (CL_PROVIDE): Use it.
2452     * src/base/random/cl_random_from.cc: Handle WIN32.
2453     * src/timing/cl_t_current.cc: Likewise.
2454 kreckel 1.1
2455     1999-03-15 Bruno Haible <haible@clisp.cons.org>
2456    
2457 kreckel 1.150 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
2458     (main8): Adapt for C++.
2459 kreckel 1.1
2460     1999-03-09 Bruno Haible <haible@clisp.cons.org>
2461    
2462 kreckel 1.150 * INSTALL: Mention egcs-1.1 problems on Sparc.
2463     * doc/cln.tex: Likewise.
2464 kreckel 1.1
2465     1999-03-08 Bruno Haible <haible@clisp.cons.org>
2466    
2467 kreckel 1.150 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
2468     messages.
2469 kreckel 1.1
2470     1999-02-25 Bruno Haible <haible@clisp.cons.org>
2471    
2472 kreckel 1.150 * autoconf/aclocal.m4: In test programs, declare `int main()', not
2473     `main()'.
2474 kreckel 1.1
2475 kreckel 1.150 * lidia-interface/src/interfaces/integers/cln/bigint.c
2476     (bigint_to_string): Fix for negative arguments.
2477 kreckel 1.1
2478 kreckel 1.150 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
2479     * src/base/cl_alloca.h: Likewise.
2480 kreckel 1.1
2481 kreckel 1.150 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
2482     * src/base/digitseq/cl_asm_arm_.cc,
2483     src/base/digitseq/cl_asm_mips_.cc,
2484     src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
2485    
2486     * src/modinteger/cl_MI_pow2.h,
2487     src/modinteger/cl_MI_pow2m1.h,
2488     src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
2489 kreckel 1.1
2490     1999-01-18 Bruno Haible <haible@clisp.cons.org>
2491    
2492 kreckel 1.150 * autoconf/acgeneral.m4,
2493     autoconf/acspecific.m4: Upgrade to autoconf-2.13.
2494     * autoconf/config.guess, autoconf/config.sub: Likewise.
2495     * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
2496     a macro. Use ${ac_objext}.
2497     * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
2498     conforming with CL_ALLOCA.
2499 kreckel 1.1
2500     1999-01-12 Bruno Haible <haible@clisp.cons.org>
2501    
2502 kreckel 1.150 * Version 1.0 released.
2503 kreckel 1.1

Christian Bauer">Christian Bauer
ViewVC Help
Powered by ViewVC 1.1.15