diff options
author | Sergey B Kirpichev <skirpichev@gmail.com> | 2023-02-22 19:10:01 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-22 19:10:01 (GMT) |
commit | 592f65fdb551f64a2db7849500e5df2291637f25 (patch) | |
tree | fa4301dae701d4034bb3a84e1a2f422ddb05855b /Modules/cmathmodule.c | |
parent | 7c106a443f8cf1111947a425eed11ecf9e615ce3 (diff) | |
download | cpython-592f65fdb551f64a2db7849500e5df2291637f25.zip cpython-592f65fdb551f64a2db7849500e5df2291637f25.tar.gz cpython-592f65fdb551f64a2db7849500e5df2291637f25.tar.bz2 |
Few coverage nitpicks for the cmath module (#102067)
- partial tests for cosh/sinh overflows (L535 and L771). I doubt
both ||-ed conditions could be tested.
- removed inaccessible case in sqrt (L832): ax=ay=0 is handled
above (L823) because fabs() is exact. Also added test (checked
with mpmath and gmpy2) for second condition on that line.
- some trivial tests for isclose (cover all conditions on L1217-1218)
- add comment for uncovered L1018
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
Diffstat (limited to 'Modules/cmathmodule.c')
-rw-r--r-- | Modules/cmathmodule.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Modules/cmathmodule.c b/Modules/cmathmodule.c index 53e3406..b4f7e54 100644 --- a/Modules/cmathmodule.c +++ b/Modules/cmathmodule.c @@ -829,7 +829,7 @@ cmath_sqrt_impl(PyObject *module, Py_complex z) ax = fabs(z.real); ay = fabs(z.imag); - if (ax < DBL_MIN && ay < DBL_MIN && (ax > 0. || ay > 0.)) { + if (ax < DBL_MIN && ay < DBL_MIN) { /* here we catch cases where hypot(ax, ay) is subnormal */ ax = ldexp(ax, CM_SCALE_UP); s = ldexp(sqrt(ax + hypot(ax, ldexp(ay, CM_SCALE_UP))), @@ -1013,7 +1013,7 @@ cmath_phase_impl(PyObject *module, Py_complex z) double phi; errno = 0; - phi = c_atan2(z); + phi = c_atan2(z); /* should not cause any exception */ if (errno != 0) return math_error(); else |