From b902e63f42089358f9e49296340fd0822e75f8fd Mon Sep 17 00:00:00 2001 From: Petr Viktorin Date: Fri, 10 Jul 2026 10:35:35 +0200 Subject: [PATCH] gh-145633: Allow PyFloat_Pack8 & PyFloat_UnPack* to fail in future CPython versions (GH-153440) (cherry picked from commit 9324f84b0f5722d165456b5858a683a2c82eefd2) Co-authored-by: Petr Viktorin --- Doc/c-api/float.rst | 6 ------ .../C_API/2026-07-09-16-46-30.gh-issue-145633.jyNwAs.rst | 2 ++ 2 files changed, 2 insertions(+), 6 deletions(-) create mode 100644 Misc/NEWS.d/next/C_API/2026-07-09-16-46-30.gh-issue-145633.jyNwAs.rst diff --git a/Doc/c-api/float.rst b/Doc/c-api/float.rst index a12ad11abb107d0..c484b3e5bdb5132 100644 --- a/Doc/c-api/float.rst +++ b/Doc/c-api/float.rst @@ -233,9 +233,6 @@ most likely :exc:`OverflowError`). Pack a C double as the IEEE 754 binary64 double precision format. - .. impl-detail:: - This function always succeeds in CPython. - Unpack functions ^^^^^^^^^^^^^^^^ @@ -251,9 +248,6 @@ Return value: The unpacked double. On error, this is ``-1.0`` and :c:func:`PyErr_Occurred` is true (and an exception is set, most likely :exc:`OverflowError`). -.. impl-detail:: - These functions always succeed in CPython. - .. c:function:: double PyFloat_Unpack2(const char *p, int le) Unpack the IEEE 754 binary16 half-precision format as a C double. diff --git a/Misc/NEWS.d/next/C_API/2026-07-09-16-46-30.gh-issue-145633.jyNwAs.rst b/Misc/NEWS.d/next/C_API/2026-07-09-16-46-30.gh-issue-145633.jyNwAs.rst new file mode 100644 index 000000000000000..cdb68372b6ba7d9 --- /dev/null +++ b/Misc/NEWS.d/next/C_API/2026-07-09-16-46-30.gh-issue-145633.jyNwAs.rst @@ -0,0 +1,2 @@ +:c:func:`PyFloat_Pack8` and ``PyFloat_Unpack*`` functions are no longer +guaranteed to always succeed on CPython.