diff options
author | Nick Coghlan <ncoghlan@gmail.com> | 2014-02-09 00:57:34 (GMT) |
---|---|---|
committer | Nick Coghlan <ncoghlan@gmail.com> | 2014-02-09 00:57:34 (GMT) |
commit | 3d7b3641d3a97a2a3ee936f91fc3f9160c3d11f9 (patch) | |
tree | fef919219779e79bae02ce9b4261c85672cce134 | |
parent | d979e4335d02bee7301c2b2dec61fe2155fbae98 (diff) | |
download | cpython-3d7b3641d3a97a2a3ee936f91fc3f9160c3d11f9.zip cpython-3d7b3641d3a97a2a3ee936f91fc3f9160c3d11f9.tar.gz cpython-3d7b3641d3a97a2a3ee936f91fc3f9160c3d11f9.tar.bz2 |
Note the new debug assertion in PyObject_Str
-rw-r--r-- | Doc/c-api/object.rst | 4 | ||||
-rw-r--r-- | Doc/whatsnew/3.4.rst | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/Doc/c-api/object.rst b/Doc/c-api/object.rst index be6d798..78c385e 100644 --- a/Doc/c-api/object.rst +++ b/Doc/c-api/object.rst @@ -170,6 +170,10 @@ Object Protocol Python expression ``str(o)``. Called by the :func:`str` built-in function and, therefore, by the :func:`print` function. + .. versionchanged:: 3.4 + This function now includes a debug assertion that ensures it does not + silently discard an active exception. + .. c:function:: PyObject* PyObject_Bytes(PyObject *o) .. index:: builtin: bytes diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst index 91fb03a..5da98da 100644 --- a/Doc/whatsnew/3.4.rst +++ b/Doc/whatsnew/3.4.rst @@ -1708,6 +1708,13 @@ Changes in the Python API Changes in the C API -------------------- +* :c:func:`PyObject_Str` now includes a debug assertion that ensures it will + no longer silently discard currently active exceptions. In cases where + discarding the active exception is expected and desired (for example, + because it has already been saved locally with :c:func:`PyErr_Fetch`), an + explicit :c:func:`PyErr_Clear` call will be needed to avoid triggering the + assertion. + * :c:func:`PyErr_SetImportError` now sets :exc:`TypeError` when its **msg** argument is not set. Previously only ``NULL`` was returned with no exception set. |