This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author vstinner
Recipients vstinner
Date 2022-02-04.20:24:09
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1644006249.4.0.292742084923.issue46640@roundup.psfhosted.org>
In-reply-to
Content
While debugging a GCC regression (*) on "HUGE_VAL * 0" used by Py_NAN macro, I noticed that Python can now C99 "NAN" constant.

(*) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104389

In bpo-45440, I already removed legacy code for pre-C99 support and old platforms:

"Building Python now requires a C99 <math.h> header file providing the following functions: copysign(), hypot(), isfinite(), isinf(), isnan(), round()."

Attached patch modifies Py_NAN to simply reuse NAN.

mathmodule.c and cmathmodule.c m_nan() still use _Py_dg_stdnan() by default (if PY_NO_SHORT_FLOAT_REPR is not defined).
History
Date User Action Args
2022-02-04 20:24:09vstinnersetrecipients: + vstinner
2022-02-04 20:24:09vstinnersetmessageid: <1644006249.4.0.292742084923.issue46640@roundup.psfhosted.org>
2022-02-04 20:24:09vstinnerlinkissue46640 messages
2022-02-04 20:24:09vstinnercreate