diff --git a/Misc/NEWS.d/next/Library/2021-01-20-12-10-47.bpo-42323.PONB8e.rst b/Misc/NEWS.d/next/Library/2021-01-20-12-10-47.bpo-42323.PONB8e.rst new file mode 100644 index 00000000000000..b2f7becee9d23c --- /dev/null +++ b/Misc/NEWS.d/next/Library/2021-01-20-12-10-47.bpo-42323.PONB8e.rst @@ -0,0 +1 @@ +Fix :func:`math.nextafter` for NaN on AIX. diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c index 86b64fb4226907..8133d6b3aaefb8 100644 --- a/Modules/mathmodule.c +++ b/Modules/mathmodule.c @@ -3473,6 +3473,12 @@ math_nextafter_impl(PyObject *module, double x, double y) Bug fixed in bos.adt.libm 7.2.2.0 by APAR IV95512. */ return PyFloat_FromDouble(y); } + if (Py_IS_NAN(x)) { + return x; + } + if (Py_IS_NAN(y)) { + return y; + } #endif return PyFloat_FromDouble(nextafter(x, y)); }