diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-11-18-17-10-20.bpo-38631.tRHaAk.rst b/Misc/NEWS.d/next/Core and Builtins/2019-11-18-17-10-20.bpo-38631.tRHaAk.rst new file mode 100644 index 00000000000..d05ad05941e --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2019-11-18-17-10-20.bpo-38631.tRHaAk.rst @@ -0,0 +1,2 @@ +Replace ``Py_FatalError()`` call with a regular :exc:`RuntimeError` +exception in :meth:`float.__getformat__`. diff --git a/Objects/floatobject.c b/Objects/floatobject.c index 8c08866d737..3f9bbde2abe 100644 --- a/Objects/floatobject.c +++ b/Objects/floatobject.c @@ -1726,7 +1726,8 @@ float___getformat___impl(PyTypeObject *type, const char *typestr) case ieee_big_endian_format: return PyUnicode_FromString("IEEE, big-endian"); default: - Py_FatalError("insane float_format or double_format"); + PyErr_SetString(PyExc_RuntimeError, + "insane float_format or double_format"); return NULL; } }