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:
Mark Dickinson 2013-07-20 18:00:06 +01:00
commit 60d634ae4a
2 changed files with 10 additions and 0 deletions

View File

@ -159,6 +159,9 @@ Core and Builtins
Library Library
------- -------
- Issue #18513: Fix behaviour of cmath.rect w.r.t. signed zeros on OS X 10.8 +
gcc.
- Issue #18479: Changed venv Activate.ps1 to make deactivate a function, and - Issue #18479: Changed venv Activate.ps1 to make deactivate a function, and
removed Deactivate.ps1. removed Deactivate.ps1.

View File

@ -1006,6 +1006,13 @@ cmath_rect(PyObject *self, PyObject *args)
else else
errno = 0; 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 { else {
z.real = r * cos(phi); z.real = r * cos(phi);
z.imag = r * sin(phi); z.imag = r * sin(phi);