1 Changes in version 1.0:
2 - First release as a GNU package
3 - License change: LGPLv3+ for code, GFDLv1.3+ (with no invariant sections)
5 - 100% of all lines are covered by tests
7 mpc_mul_2exp to mpc_mul_2ui, mpc_div_2exp to mpc_div_2ui
8 - 0^0, which returned (NaN,NaN) previously, now returns (1,+0)
9 - Removed compatibility with K&R compilers, untestable due to lack of
11 - New functions: mpc_log10, mpc_mul_2si, mpc_div_2si
15 - mpc_div and mpc_norm now return a value indicating the effective
16 rounding direction, as the other functions
17 - mpc_mul, mpc_sqr and mpc_norm now return correct results even if there
18 are over- or underflows during the computation
19 - mpc_asin, mpc_proj, mpc_sqr: Wrong result when input variable has
20 infinite part and equals output variable is corrected
21 - mpc_fr_sub: Wrong return value for imaginary part is corrected
23 Changes in version 0.9:
25 - mpc_set_dc, mpc_set_ldc, mpc_get_dc, mpc_get_ldc for converting
26 between mpc type variables and C variables of type double _Complex
27 or long double _Complex
28 - mpc_sin_cos, computing simultaneously the sine and cosine
30 - mpc_pow_si through binary exponentiation
31 - mpc_pow_z when the exponent fits in a long
32 - mpc_tan through the use of mpc_sin_cos
34 - trigonometric functions: infinite loop due to overflow for large
36 - mpc_exp: close to infinite loop for argument close to 0
37 - mpc_sqrt: close to infinite loop for argument close to 1
38 - mpc_add_si: replaced macro by function, since the macro evaluated the
40 - Logging feature for debugging:
41 ./configure --enable-logging
42 #include "mpc-log.h" instead of #include "mpc.h"
43 - Minimally required library versions: gmp 4.3.2, mpfr 2.4.2
45 Changes in version 0.8.2:
46 - Speed-up of mpc_pow_ui through binary exponentiation
48 Changes in version 0.8.1:
50 - mpc_acosh, mpc_asinh, mpc_atanh: swap of precisions between real and
52 - mpc_atan: memory leak
53 - mpc_log: wrong ternary value in data file; masked by bug in mpfr-2.4.1
55 Changes in version 0.8 ("Dianthus deltoides"):
57 - mpc_asin, mpc_acos, mpc_atan, mpc_asinh, mpc_acosh, mpc_atanh,
58 mpc_pow_d, mpc_pow_ld, mpc_pow_si, mpc_pow_ui, mpc_pow_z, mpc_pow_fr
60 - mpc_ui_div: real divisor
62 Changes in version 0.7 ("Campanula uniflora"):
63 - New functions: mpc_pow, mpc_set_nan, mpc_swap
65 - mpc_log: along branch cut
66 - mpc_norm: infinite loop in case of overflow
67 - mpc_ui_div, mpc_div, mpc_fr_div: handling of division by 0 and
68 infinities following the example code of the C99 standard
69 - compilation with g++
70 - Makefile.vc updated (thanks to Mickael Gastineau)
71 - Minimal gmp version is 4.2
72 - Changed MPC_SET_X_Y macro
73 - Functions mpc_random and mpc_random2 removed
75 Changes in version 0.6 ("Bellis perennis"):
76 - New functions: mpc_get_str, mpc_set_str, mpc_strtoc, mpc_set_uj,
77 mpc_set_sj, mpc_set_ld, mpc_set_ld_ld, mpc_set_si_si, mpc_set_uj_uj,
78 mpc_set_sj_sj, mpc_set_f, mpc_set_f_f, mpc_set_q, mpc_set_q_q, mpc_set_z,
79 mpc_set_z_z and mpc_free_str
80 - New macro: MPC_SET_X_Y
81 - mpc_set_ui_fr removed
82 - Default precision removed, as well as mpc_init and all mpc_init_set*
83 combinations; use mpc_init2 or mpc_init3, followed by mpc_set, instead
84 - mpc_exp, mpc_log, mpc_cos, mpc_sin, mpc_tan, mpc_cosh, mpc_sinh,
85 mpc_tanh and mpc_sqrt return inexact value
86 - inp_str returns inexact value and the number of read characters
87 in an additional parameter
88 - Get default $CC and $CFLAGS from gmp.h (__GMP_CC / __GMP_CFLAGS,
89 which are available as of GMP 4.2.3)
91 - mpc_get_version and MPC_VERSION_STRING agree
92 - Compilation on i686-pc-cygwin and i686-pc-mingw32 fixed
94 Changes in version 0.5.2:
96 - version number: MPC_VERSION_NUM, MPC_VERSION
97 - Makefile.vc updated (thanks to Mickael Gastineau)
98 - Compilation on Debian-Gnu-Linux-PowerPC and MacOsX
99 fixed (thanks to Laurent Fousse and Mickael Gastineau)
101 Changes in version 0.5.1:
107 - version number: MPC_VERSION_MAJOR, MPC_VERSION_MINOR,
108 MPC_VERSION_PATCHLEVEL, MPC_VERSION_STRING
109 - references to number parts: mpc_realref and mpc_imagref
110 - Test framework rewritten
111 - Configure checks for recent gmp (>= 4.2) and mpfr (>= 2.3.1)
113 - New configure options: --with-gmp-lib, --with-gmp-include,
114 --with-mpfr-lib, and --with-mpfr-include
115 - Export declarations for MSWindows, makefile.vc updated (thanks to
118 - cmp_mul_fr, cmp_sin, cmp_cos
120 - configure looks for gmp first, then for mpfr
121 - mpc_cos, mpc_div, mpc_div_fr, mpc_fr_sub, mpc_mul_fr, mpc_set_fr,
123 - fix handling of special values: mpc_exp, mpc_log, mpc_mul, mpc_norm,
126 Changes in version 0.5 ("Aconitum neomontanum"):
127 - Support for autotools
130 - trigonometric functions: mpc_cos, mpc_tan
131 - hyperbolic functions: mpc_cosh, mpc_sinh, mpc_tanh
133 - mpc_sqrt with directed rounding
136 Copyright (C) 2008, 2009, 2010, 2011, 2012 INRIA
138 Copying and distribution of this file, with or without modification,
139 are permitted in any medium without royalty provided the copyright
140 notice and this notice are preserved. This file is offered as-is,
141 without any warranty.