Message370589
| Author |
vstinner |
| Recipients |
Mark.Shannon, eric.snow, fabioz, vstinner |
| Date |
2020年06月02日.02:04:06 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1591063446.86.0.411824669066.issue39947@roundup.psfhosted.org> |
| In-reply-to |
| Content |
Cython still access multiple PyThreadState members which have no getter or setter yet.
__Pyx_PyErr_ExceptionMatchesInState():
PyObject *exc_type = tstate->curexc_type;
...
=> internal _PyErr_Occurred(tstate) could solve this issue: move it the public/private API? Or expose internal _PyErr_ExceptionMatches(tstate, exc)?
__Pyx_ErrRestoreInState() is a reimplementation of internal _PyErr_Restore(): get/set curexc_type, curexc_value and curexc_traceback members.
__Pyx_PyFunction_FastCallNoKw:
static PyObject* __Pyx_PyFunction_FastCallNoKw(...) {
...
++tstate->recursion_depth;
Py_DECREF(f);
--tstate->recursion_depth;
return result;
}
Why not calling Py_EnterRecursiveCall/Py_LeaveRecursiveCall?
There are likely others. |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2020年06月02日 02:04:06 | vstinner | set | recipients:
+ vstinner, fabioz, Mark.Shannon, eric.snow |
| 2020年06月02日 02:04:06 | vstinner | set | messageid: <1591063446.86.0.411824669066.issue39947@roundup.psfhosted.org> |
| 2020年06月02日 02:04:06 | vstinner | link | issue39947 messages |
| 2020年06月02日 02:04:06 | vstinner | create |
|