"Fossies" - the Fresh Open Source Software Archive

Member "cln-1.3.6/NEWS" (5 Dec 2019, 21587 Bytes) of package /linux/privat/cln-1.3.6.tar.bz2:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "NEWS": 1.3.5_vs_1.3.6.

    1 2019-12-05, version 1.3.6
    2 =========================
    3 
    4 Other changes
    5 -------------
    6 
    7 * Fixed cross-compilation (broken in 1.3.5).
    8 
    9 
   10 2019-11-17, version 1.3.5
   11 =========================
   12 
   13 Implementation changes
   14 ----------------------
   15 
   16 * Fix bug in scale_float() throwing underflow_exception.
   17 
   18 Other changes
   19 -------------
   20 
   21 * Support builds on:
   22   - 64-bit MinGW
   23   - Elbrus 2000
   24   - Risc-V64
   25   - MIPS release 6
   26 
   27 
   28 2014-10-16, version 1.3.4
   29 =========================
   30 
   31 Implementation changes
   32 ----------------------
   33 
   34 * Fix input of huge floats.
   35 
   36 Other changes
   37 -------------
   38 
   39 * Support the AArch64 and the Mips64 ABIs.
   40 
   41 
   42 2013-07-21, version 1.3.3
   43 =========================
   44 
   45 Implementation changes
   46 ----------------------
   47 
   48 * Fix integer input of leading zeros in power-of-two base.
   49 
   50 * Fix several floating-poing conversion bugs involving huge numbers.
   51 
   52 * Fix bug that would set input stream fail state when reading a number at EOF.
   53 
   54 Other changes
   55 -------------
   56 
   57 * Support the x32 ABI.
   58 
   59 
   60 2011-05-08, version 1.3.2
   61 =========================
   62 
   63 Implementation changes
   64 ----------------------
   65 
   66 * Fixed a bug in scale_float(cl_LF, cl_I) when the scale factor exceeded 2^31
   67   on x86.
   68 
   69 Other changes
   70 -------------
   71 
   72 * Improved portability to some non-GCC compilers.
   73 
   74 
   75 2009-09-24, version 1.3.1
   76 =========================
   77 
   78 Implementation changes
   79 ----------------------
   80 
   81 * Fixed a crash in double_approx(cl_RA) on 64-bit platforms.
   82 
   83 * Add basic support for Renesas SH (sh4).
   84 
   85 
   86 2009-06-30, version 1.3.0
   87 =========================
   88 
   89 Other changes
   90 -------------
   91 
   92 * Use the GNU autotools as build system.
   93 
   94 * Implemented a more portable module dependency mechanism.
   95 
   96 
   97 2008-04-05, version 1.2.2
   98 =========================
   99 
  100 Implementation changes
  101 ----------------------
  102 
  103 * Re-establish CLN-1.2.0 ABI and fix ARM build, both inadvertently broken in
  104   the previous release.
  105 
  106 
  107 2008-03-24, version 1.2.1
  108 =========================
  109 
  110 Implementation changes
  111 ----------------------
  112 
  113 * Fixed some bugs in the output of numbers larger than 2^32 decimal digits.
  114 
  115 Other changes
  116 -------------
  117 
  118 * Modifying C/C++ operators like +=, ++, etc. are now enabled by default.
  119 
  120 
  121 2008-01-19, version 1.2.0
  122 =========================
  123 
  124 Algorithmic changes
  125 -------------------
  126 
  127 * Save big amounts of memory in computation of some functions and constants by:
  128     - Avoiding pre-computation of series terms and instead computing them in a
  129       streamed way.
  130     - Avoiding computation with excess precision in binary splitting algorithm
  131       by coercion of intermediate integer values to floating-point as early as
  132       possible.
  133 
  134 Implementation changes
  135 ----------------------
  136 
  137 * Added support for huge numbers:
  138     - intC used for all counter loops.
  139     - intE is now a 64-bit type on all 64-bit platforms and even on selected
  140       32-bit platforms.
  141 
  142 * CLN now uses C++ exceptions for error handling. The cl_abort() hook is not
  143   supported any more. Please refer to the documentation to learn about existing
  144   exception types.
  145 
  146 * Fixed a bug on i386 where comparing Z/2Z ring zeros returnd random results.
  147 
  148 * Removed cl_boolean. Use built-in C++ bool instead.
  149 
  150 Other changes
  151 -------------
  152 
  153 * Dropped the cln-config script. Please use pkg-config instead.
  154 
  155 * Updated infrastructure to that of libtool-1.5.24.
  156 
  157 * Changed encoding of all files to UTF-8.
  158 
  159 * Fix compilation issues with GCC-4.3.
  160 
  161 * Fix linking issues on platforms that don't feature weak symbols (like win32).
  162 
  163 
  164 2006-08-08, version 1.1.13
  165 ==========================
  166 
  167 * Compilation fixes for 64-bit brokenness introduced in last release.
  168 
  169 
  170 2006-08-06, version 1.1.12
  171 ==========================
  172 
  173 Implementation changes
  174 ----------------------
  175 
  176 * Fix rare assertion when printing quite large floats.
  177 
  178 Other changes
  179 -------------
  180 
  181 * Compilation fixes for several platforms: *BSD, Intel Mac, and MinGW.
  182 
  183 
  184 2005-11-23, version 1.1.11
  185 ==========================
  186 
  187 Algorithmic changes
  188 -------------------
  189 
  190 * Considerably improved performance of number input.
  191 
  192 
  193 2005-10-22, version 1.1.10
  194 ==========================
  195 
  196 Implementation changes
  197 ----------------------
  198 
  199 * Removed the vptr of modular integer and univariate polynomial
  200   classes in order to fix some crashes in that sector of CLN.  Code
  201   using this needs to be recompiled.
  202 
  203 * Many more operator signatures make the integration of CLN types with
  204   float/double easier.
  205 
  206 Other changes
  207 -------------
  208 
  209 * Several compilation fixes.
  210 
  211 * Made it possible to cross-compile CLN.
  212 
  213 
  214 2004-11-03, version 1.1.9
  215 =========================
  216 
  217 Algorithmic changes
  218 -------------------
  219 
  220 * Input of numbers in bases 2, 4, 8, 16 and 32 is now done in linear bit
  221   complexity as opposed to O(N^2). Useful for all kinds of persistency.
  222 
  223 Implementation changes
  224 ----------------------
  225 
  226 * Fixed several bugs in the integer input and output routines that could be
  227   blamed for random crashes in the following cases: output in base 32 for
  228   quite large numbers, input in base 2 for fixnums and input in base 3 for
  229   fixnums on a 64 bit target.
  230 
  231 * Fixed crash when radix specifiers were used in input streams.
  232 
  233 * Speed up on x86_64 and ia64 by adding some inline assembly.
  234 
  235 Other changes
  236 -------------
  237 
  238 * Fixes for compilation on MacOS X and little endian Mips.
  239 
  240 
  241 2004-07-01, version 1.1.8
  242 =========================
  243 
  244 Implementation changes
  245 ----------------------
  246 
  247 * Fix bug in log(a,b) when b is 1/n.
  248 
  249 * Fix crash in shared library on AMD64.
  250 
  251 Other changes
  252 -------------
  253 
  254 * Fixes for some language conformance issues.
  255 
  256 
  257 2004-05-02, version 1.1.7
  258 =========================
  259 
  260 Implementation changes
  261 ----------------------
  262 
  263 * Fixed two corner case bugs in cl_LF multiplication and sqrt.
  264 
  265 * Workaround GCC 3.[123] compiler bug.
  266 
  267 * Parallel build should work reliably now.
  268 
  269 
  270 2004-01-01, version 1.1.6
  271 =========================
  272 
  273 Functional changes
  274 ------------------
  275 
  276 * New function
  277   `sintL ldegree(const cl_UP& x)'.
  278   (Suggested by Munagala Ramanath.)
  279 
  280 Implementation changes
  281 ----------------------
  282 
  283 * Fixed a bug in polynomial subtraction.
  284   (Reported by Munagala Ramanath.)
  285 
  286 Other changes
  287 -------------
  288 
  289 * Provide a package control file cln.pc.
  290 
  291 * Updated infrastructure to autoconf-2.57.
  292 
  293 * Fixed compilation issues with GCC-3.4 prereleases and on Mac OSX.
  294 
  295 
  296 2002-05-28, version 1.1.5
  297 =========================
  298 
  299 Other changes
  300 -------------
  301 
  302 * Fix compilation issues with GCC-3.1.
  303 
  304 
  305 2002-01-04, version 1.1.4
  306 =========================
  307 
  308 Other changes
  309 -------------
  310 
  311 * Fix compilation issues with GMP-4.0 and on IBM s390.
  312 
  313 * Updated infrastructure to autoconf-2.52.
  314 
  315 
  316 2001-11-05, version 1.1.3
  317 =========================
  318 
  319 Implementation changes
  320 ----------------------
  321 
  322 * Fix a computation error of sin and sinh for small arguments.
  323   (Reported by Christopher Kennedy.)
  324 
  325 * Module ordering works with gcc-3.0 -fuse-cxa-atexit now.
  326 
  327 * -DNO_ASM works properly on Sparc.
  328 
  329 
  330 2001-07-25, version 1.1.2
  331 
  332 Implementation changes
  333 ----------------------
  334 
  335 * Minor cleanups and portability issues.
  336   (No need to upgrade if you have been happy so far.)
  337 
  338 
  339 2001-05-31, version 1.1.1
  340 =========================
  341 
  342 Implementation changes
  343 ----------------------
  344 
  345 * Minor cleanups for GCC 3.0 and libstdc++-v3.
  346 
  347 * Fixes several little bugs and portability issues.
  348 
  349 
  350 2000-12-14, version 1.1.0
  351 =========================
  352 
  353 Functional changes
  354 ------------------
  355 
  356 * ISO/IEC 14882 fashion adjustments:
  357   Put everything into namespace cln.  All fundamental data types still
  358   carry their old names.  Other non-macro identifiers are now written as 
  359   cln::foo instead of cl_foo, except where the cl_ comes from a data type
  360   (as in cl_I_to_int()).  Headers are installed into a separate
  361   directory, #include <cln/foo.h> instead of <cl_foo.h>.  Applications
  362   must be manually ported to the new style.  We apologize for the
  363   inconvenience.
  364 
  365 Implementation changes
  366 ----------------------
  367 
  368 * Removed internal copy of mpn subdirectory tree from libgmp-2.0.2.
  369   Configuring with --with-gmp now relies on an installed libgmp library
  370   version 3 or above.  We recommend libgmp-3.1 or newer.
  371 
  372 * Adjusted several break-even points to make better use of a faster libgmp and
  373   better match present-day CPUs.
  374 
  375 * Fix several errors for architectures with 64-bit wide words.
  376   (Others than Alpha, which worked already.)
  377 
  378 * Fix compilation errors with current GCC-3.0 snapshots.
  379 
  380 Other changes
  381 -------------
  382 
  383 * Added package tools: script cln-config and autoconf macro AC_PATH_CLN
  384   (in file cln.m4).
  385 
  386 
  387 2000-01-13, version 1.0.3
  388 =========================
  389 
  390 Functional changes
  391 ------------------
  392 
  393 * New function
  394   `cl_I doublefactorial (uintL n)'.
  395 
  396 Implementation changes
  397 ----------------------
  398 
  399 * Fix several little configuration errors.
  400 
  401 * Fix some compilation errors with gcc-2.96 prereleases.
  402 
  403 
  404 1999-09-07, version 1.0.2
  405 =========================
  406 
  407 Functional changes
  408 ------------------
  409 
  410 * New functions
  411   `cl_I numerator (const cl_RA&)'
  412   `cl_I denominator (const cl_RA&)'.
  413   Suggested by Richard Kreckel and Sylvain Pion.
  414 
  415 * New function `cl_equal_hashcode' for the classes cl_N, cl_R, cl_RA, cl_I,
  416   cl_F, cl_SF, cl_FF, cl_DF, cl_LF.
  417   Suggested by Richard Kreckel.
  418 
  419 Implementation changes
  420 ----------------------
  421 
  422 * Fix an endless loop when either of the functions
  423   `cl_boolean rootp (const cl_RA&, uintL, cl_RA*)',
  424   `cl_boolean rootp (const cl_RA&, const cl_I&, cl_RA*)'
  425   was called with an integer argument. Thanks to Richard Kreckel.
  426 
  427 * Fix a bug in the addition and subtraction of rational numbers which could
  428   cause unnormalized rational numbers like 3/1 to be created.
  429 
  430 
  431 1999-06-09, version 1.0.1
  432 =========================
  433 
  434 Algorithmic changes
  435 -------------------
  436 
  437 * Speed up the functions `logand', `lognand', `logandc2'.
  438 
  439 Implementation changes
  440 ----------------------
  441 
  442 * Fix compilation errors with gcc-2.7.2, egcs-1.1.2 and gcc-2.95.
  443 
  444 * Fix compilation errors on HPPA, MIPS, some versions of DEC Alpha, OpenBSD,
  445   and SPARC with LiDIA.
  446 
  447 * Fix compilation errors on Win32. Thanks to Mumit Khan.
  448 
  449 
  450 1999-01-12, version 1.0
  451 =======================
  452 
  453 Functional changes
  454 ------------------
  455 
  456 * New include files, containing I/O functions:
  457     <cl_integer_io.h>
  458     <cl_rational_io.h>
  459     <cl_float_io.h>
  460     <cl_sfloat_io.h> <cl_ffloat_io.h> <cl_dfloat_io.h> <cl_lfloat_io.h>
  461     <cl_real_io.h>
  462     <cl_complex_io.h>
  463   The file <cl_io.h> now contains only I/O functions for characters and
  464   C integers.
  465 
  466 * To access the base ring of a univariate polynomial ring, now use
  467   `R->basering()' instead of `R->basering'.
  468 
  469 * Implement `plusp', `max', `min' for the classes cl_F, cl_SF, cl_FF, cl_DF,
  470   cl_LF, cl_RA, cl_I.
  471 
  472 * Implement `abs' for the class cl_RA.
  473 
  474 * Replaced `read_number' with specialized functions `read_complex',
  475   `read_real', `read_float', `read_rational', `read_integer'.
  476 
  477 * Replaced the functions
  478   `void fprint (cl_ostream stream, int x)'
  479   `void fprint (cl_ostream stream, unsigned int x)'
  480   `void fprint (cl_ostream stream, long x)'
  481   `void fprint (cl_ostream stream, unsigned long x)'
  482   with
  483   `void fprintdecimal (cl_ostream stream, int x)'
  484   `void fprintdecimal (cl_ostream stream, unsigned int x)'
  485   `void fprintdecimal (cl_ostream stream, long x)'
  486   `void fprintdecimal (cl_ostream stream, unsigned long x)'
  487 
  488 Algorithmic changes
  489 -------------------
  490 
  491 * The function `cl_I xgcd (const cl_I& a, const cl_I& b, cl_I* u, cl_I* v)'
  492   now normalizes the resulting u and v to be of minimum absolute value.
  493   (Suggested by the LiDIA group.)
  494 
  495 * The conversion from string to cl_F, cl_R, cl_N now chooses the format of
  496   the resulting float depending on the number of significant digits present
  497   in the input string.
  498 
  499 * Speed up the functions
  500   `cl_R operator* (const cl_RA&, const cl_LF&)'
  501   `cl_R operator* (const cl_LF&, const cl_RA&)'
  502   `cl_R operator/ (const cl_RA&, const cl_LF&)'
  503   `cl_LF operator/ (const cl_LF&, const cl_RA&)'
  504 
  505 Implementation changes
  506 ----------------------
  507 
  508 * Fix for `cl_I ash (const cl_I& x, const cl_I& n)' when |n| is between
  509   2^29 and 2^37.
  510   (Reported by Thomas Papanikolaou.)
  511 
  512 * Fixed a memory leak in the long-float truncate function.
  513   (Reported by Keith Briggs.)
  514 
  515 * Fixed a memory leak in the modular integer exponentiation.
  516 
  517 * Reduced the stack space consumption. The default stack size (typically
  518   8 MB on Unix) should now be sufficient in order to run all CLN programs.
  519 
  520 * Portability fixes for m68k platforms.
  521   (Reported and fixed by Roman Hodek.)
  522 
  523 Other changes
  524 -------------
  525 
  526 * Restructured the sources. The subpackages
  527     - base
  528     - base + integer
  529     - base + integer + rational
  530     - base + integer + rational + float
  531     - base + integer + rational + float + real
  532     - base + integer + rational + float + real + complex
  533     - base + integer + modinteger
  534   are now self-contained.
  535 
  536 * The configuration script can be called with option `--enable-shared',
  537   to build CLN as a shared library.
  538 
  539 * Updated the LiDIA interface.
  540 
  541 
  542 1998-05-07, version 0.98
  543 ========================
  544 
  545 Implementation changes
  546 ----------------------
  547 
  548 * Portability fixes for 64-bit platforms like DEC Alpha.
  549   (Reported by John Cremona and Thomas Papanikolaou.)
  550 
  551 
  552 1998-02-27
  553 ==========
  554 
  555 Other changes
  556 -------------
  557 
  558 * Portability fixes for new ISO/ANSI C++ compilers.
  559 
  560 * Updated the LiDIA interface for LiDIA version 1.3 and fixed a couple of
  561   bugs.
  562 
  563 
  564 1997-09-06
  565 ==========
  566 
  567 Implementation changes
  568 ----------------------
  569 
  570 * Portability fix for i686 platforms.
  571   (Reported by Michael Pfeifer.)
  572 
  573 
  574 1997-09-01
  575 ==========
  576 
  577 Functional changes
  578 ------------------
  579 
  580 * New include files:
  581   <cl_ring.h>, declaring general rings,
  582   <cl_GV.h>, <cl_SV.h>, defining vectors,
  583   <cl_univpoly.h>, defining univariate polynomial rings.
  584 
  585 Algorithmic changes
  586 -------------------
  587 
  588 * Speed up the internal computation of ln(2) and ln(10) by about 20%.
  589 
  590 * Speed up the computation of exp (for 1000 digits or more) by about 10%.
  591 
  592 Implementation changes
  593 ----------------------
  594 
  595 * Portability fix for 64-bit platforms like DEC Alpha:
  596   Fixed a bug: endless loop in `sqrt' for large precision.
  597   (Reported by Blake Jones.)
  598 
  599 * Portability fix for RS/6000 platforms.
  600 
  601 
  602 1997-02-21
  603 ==========
  604 
  605 Algorithmic changes
  606 -------------------
  607 
  608 * Speed up the computation of the elementary transcendental functions:
  609   exp, sinh, cosh, asinh, atanh (for 100 digits) by about 30%,
  610   log (for 100 digits) by about 25%,
  611   sin, cos (for 1000 or 10000 digits) by about 20%,
  612   asin, acos, atan (for 1000 digits) by about 25%.
  613 
  614 Implementation changes
  615 ----------------------
  616 
  617 * Portability fix for SunOS 4 and other BSD platforms.
  618 
  619 
  620 1997-01-31
  621 ==========
  622 
  623 Algorithmic changes
  624 -------------------
  625 
  626 * Fixed a bug: endless recursion in `cl_boolean sqrtp (const cl_RA&, cl_RA*)'.
  627 
  628 * Fixed a bug: Only the first 85% of the digits returned by `cl_eulerconst'
  629   for moderate precision (< 11370 digits) were correct.
  630   (Reported by Thomas Papanikolaou.)
  631 
  632 Implementation changes
  633 ----------------------
  634 
  635 * Fix static initialization order bug. Requires g++ 2.7.0 or newer
  636   (g++ 2.8.0 or newer on HPPA).
  637 
  638 * New method `debug_print()', for pretty printing of CLN objects, intended
  639   to be called from the debugger.
  640 
  641 
  642 1997-01-07
  643 ==========
  644 
  645 Functional changes
  646 ------------------
  647 
  648 * New functions `float cl_float_approx (const cl_R&)',
  649                 `double cl_double_approx (const cl_R&)'
  650   for converting a real number to a C `float' or `double'.
  651 
  652 Algorithmic changes
  653 -------------------
  654 
  655 * Speed up `cl_zeta' using Cohen-Villegas-Zagier convergence acceleration.
  656 
  657 Implementation changes
  658 ----------------------
  659 
  660 * New function `cl_print', for pretty printing of CLN objects, intended to be
  661   called from the debugger.
  662 
  663 * Portability fixes for 64-bit platforms like DEC Alpha.
  664 
  665 
  666 1996-11-29
  667 ==========
  668 
  669 Functional changes
  670 ------------------
  671 
  672 * New include files:
  673   <cl_string.h>, defining strings,
  674   <cl_symbol.h>, defining symbols,
  675   <cl_proplist.h>, defining property lists,
  676   <cl_condition.h>, defining conditions/exceptions.
  677 
  678 * New functions `cl_F cl_catalanconst ()',
  679                 `cl_F cl_catalanconst (const cl_F&)',
  680                 `cl_F cl_catalanconst (cl_float_format_t)'
  681   which return Catalan's constant.
  682   (Suggested by Thomas Papanikolaou.)
  683 
  684 * New functions `cl_F cl_zeta (int s)',
  685                 `cl_F cl_zeta (int s, const cl_F&)',
  686                 `cl_F cl_zeta (int s, cl_float_format_t)'
  687   which return the Riemann zeta function at an integral point s>1.
  688 
  689 * New functions `cl_F cl_exp1 ()',
  690                 `cl_F cl_exp1 (const cl_F&)',
  691                 `cl_F cl_exp1 (cl_float_format_t)'
  692   which return e = exp(1).
  693 
  694 * New function `cl_I binomial (uintL n, uintL k)' which returns the
  695   binomial coefficient (n choose k).
  696 
  697 * New functions `int cl_I_to_int (const cl_I&)',
  698        `unsigned int cl_I_to_uint (const cl_I&)',
  699                 `long cl_I_to_long (const cl_I&)',
  700        `unsigned long cl_I_to_ulong (const cl_I&)'
  701   for converting an integer to a C `int' or `long'.
  702 
  703 * New functions `float cl_float_approx (const cl_I&)',
  704                 `float cl_float_approx (const cl_RA&)',
  705                 `double cl_double_approx (const cl_I&)',
  706                 `double cl_double_approx (const cl_RA&)'
  707   for converting a rational number to a C `float' or `double'.
  708 
  709 Implementation changes
  710 ----------------------
  711 
  712 * Moved the sources to subdirectories.
  713   (Suggested by Jörg Arndt.)
  714 
  715 Other changes
  716 -------------
  717 
  718 * New benchmark for better comparing LiDIA, Pari and CLN.
  719 
  720 * Added an interface to LiDIA, allows using CLN as a replacement of libI.
  721   (Suggested by Thomas Papanikolaou.)
  722 
  723 * Added an ILOG Talk interface, for interactive use of the library.
  724 
  725 
  726 1996-10-13
  727 ==========
  728 
  729 Functional changes
  730 ------------------
  731 
  732 * New include file <cl_modinteger.h>, defining modular integer rings.
  733 
  734 * New functions `cl_F cl_eulerconst ()', `cl_F cl_eulerconst (const cl_F&)',
  735   `cl_F cl_eulerconst (cl_float_format_t)' which return Euler's constant.
  736 
  737 Algorithmic changes
  738 -------------------
  739 
  740 * Speed up square root of large numbers by use of Newton's algorithm.
  741 
  742 * Speed up multiplication and division of large long-floats by small integers.
  743 
  744 * Speed up the computation of pi, e, exp, log, sin, cos, tan, sinh, cosh, tanh,
  745   asin, acos, atan, asinh, acosh, atanh.
  746   All of them are now computed with asymptotically fast algorithms, of
  747   bit complexity O(log(N)^2*M(N)) = O(N^(1+epsilon)) for N digits.
  748 
  749 * Fixed several bugs in the transcendental functions routines. In particular,
  750   the `log' function went into an endless loop.
  751 
  752 * Fixed a bug: The cl_I -> cl_DF and cl_I -> cl_LF conversions didn't work
  753   correctly for negative integers.
  754 
  755 
  756 1996-09-08
  757 ==========
  758 
  759 Functional changes
  760 ------------------
  761 
  762 * New include file <cl_numtheory.h>, containing number theoretic functions,
  763   for now only the Jacobi symbol.
  764 
  765 Algorithmic changes
  766 -------------------
  767 
  768 * Speed up squaring of large numbers by 30%.
  769 
  770 * Speed up division of large numbers by use of Newton's algorithm. The
  771   improvement is noticeable for numbers with at least about 1000 words =
  772   32000 bits = 10000 decimal digits.
  773 
  774 * Speed up the binary-to-decimal conversion of large numbers by use of
  775   a divide-and-conquer method. The improvement is noticeable for numbers
  776   of at least 1250 words = 40000 bits = 12000 decimal digits.
  777 
  778 * Fixed a bug: The functions `cl_boolean minusp (const type&)' and
  779   `cl_boolean zerop (const type&)' were missing for type=cl_I and type=cl_RA.
  780 
  781 * Fixed a bug: The function `cl_boolean logtest (const cl_I&, const cl_I&)'
  782   didn't work correctly if both arguments were bignums.
  783 
  784 * Fixed a bug: The function `cl_I mod (const cl_I&, const cl_I&)', when called
  785   as `mod(-n*m,m)' (n>0), returned m instead of 0.
  786 
  787 * Fixed a bug: The function `uintL power2p (const cl_I&)' returned wrong
  788   values for arguments x = 2^n, n >= 29.
  789 
  790 Implementation changes
  791 ----------------------
  792 
  793 * Speed up CLN by using the low-level addition/subtraction, shift and
  794   multiplication loops from GNU gmp-2.0.2.
  795 
  796 * Fixed a severe reference counting bug in the constructors
  797   `type::type (const long)' and `type::type (const unsigned long)'
  798   for type=cl_number, type=cl_N, type=cl_RA, type=cl_I that most often
  799   caused a core dump.
  800 
  801 * CLN's word sequences can be chosen to be stored big-endian in memory
  802   (like it was up to now) or little-endian (needed for interfacing to GMP).
  803 
  804 
  805 1996-05-20
  806 ==========
  807 
  808 Functional changes
  809 ------------------
  810 
  811 * New include file <cl_timing.h>, contains timing facilities.
  812 
  813 Algorithmic changes
  814 -------------------
  815 
  816 * Speed up the multiplication of large numbers by use of an FFT based
  817   algorithm (Schönhage-Strassen). The improvement is noticeable when both
  818   factors have at least 1250 words = 40000 bits = 12000 decimal digits.
  819 
  820 * Speed up the functions `cl_I gcd (const cl_I&, const cl_I&)' and
  821   `cl_I xgcd (const cl_I&, const cl_I&, cl_I*, cl_I*)' by a factor
  822   of 1.5. Simple trick.
  823 
  824 * Speed up the function `cl_boolean sqrtp (const cl_I&, cl_I*)' using a
  825   trick from Henri Cohen.
  826 
  827 * Fixed an endless loop in the function `uint32 gcd (uint32, uint32)'
  828   which occurred when one of the arguments is zero.
  829 
  830 * Fixed an endless loop in the function `cl_I factorial (uintL)'.
  831 
  832 Implementation changes
  833 ----------------------
  834 
  835 * <cl_io.h> now uses iostreams by default instead of stdio FILE pointers.
  836   (Reported by Tito Flagella.)
  837 
  838 * Fixed linking error when compiling without -O.
  839   (Reported by Tito Flagella.)
  840 
  841 * Fixed syntax error in <cl_input.h>.
  842   (Reported by Tito Flagella.)
  843 
  844 * Fixed syntax errors in src/cl_DS.h and src/cl_FF_plus.h.
  845   (Reported by Marcus Daniels.)
  846 
  847 * More portability fixes.
  848 
  849 * Configuration now supports the --srcdir option.
  850   (Reported by Marcus Daniels.)
  851 
  852 
  853 1996-01-03
  854 ==========
  855 
  856 * Compiles well on Sparc, using gcc.
  857 
  858 * Mail to beta testers.
  859 
  860 
  861 1995-12-06
  862 ==========
  863 
  864 * Compiles well on Linux, using gcc.
  865