Issue #18513: Add workaround for OS X 10.8 cexp bug that leads to wrong cmath.rect(0.0,-0.0) results.

This commit is contained in:
Raymond Hettinger 2013-07-20 10:56:58 -07:00
parent f52d574481
commit 69468146b4
2 changed files with 10 additions and 0 deletions

View File

@ -28,6 +28,9 @@ Library
- Issue #18455: multiprocessing should not retry connect() with same socket.
- Issue #18513: Fix behaviour of cmath.rect w.r.t. signed zeros on OS X 10.8 +
gcc.
- Issue #18101: Tcl.split() now process Unicode strings nested in a tuple as it
do with byte strings.

View File

@ -1006,6 +1006,13 @@ cmath_rect(PyObject *self, PyObject *args)
else
errno = 0;
}
else if (phi == 0.0) {
/* Workaround for buggy results with phi=-0.0 on OS X 10.8. See
bugs.python.org/issue18513. */
z.real = r;
z.imag = r * phi;
errno = 0;
}
else {
z.real = r * cos(phi);
z.imag = r * sin(phi);