[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Python-Dev] C-API functions for reading/writing tstate->exc_* ?

Stefan Behnel, 23.02.2012 09:01:
> "Martin v. L?wis", 19.02.2012 23:24:
>>> When compiling for PyPy, Cython therefore needs a way to tell PyPy about
>>> any changes. For the tstate->curexc_* fields, there are the two functions
>>> PyErr_Fetch() and PyErr_Restore(). Could we have two similar "official"
>>> functions for the exc_* fields? Maybe PyErr_FetchLast() and
>>> PyErr_RestoreLast()?
>> I wouldn't call the functions *Last, as this may cause confusion with
>> sys.last_*. I'm also unsure why the current API uses this Fetch/Restore
>> pair of functions where Fetch clears the variables. A Get/Set pair of
>> functions would be more natural, IMO (where Get returns "new"
>> references). This would give PyErr_GetExcInfo/PyErr_SetExcInfo.
> Ok, I added a tracker ticket and I'm working on a patch.
> http://bugs.python.org/issue14098

The patch is attached to the ticket, including documentation and test. I'd
be happy if someone could review it and apply it.