summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Behnel <stefan_ml@behnel.de>2017-10-28 22:49:42 +0200
committerStefan Behnel <stefan_ml@behnel.de>2017-10-28 22:50:02 +0200
commit80160d01f30324fd7f26e497e16d4d6d6a6accce (patch)
treede9bf871002cc175cb36bcbb508b285265a464d6
parent2d3392463b77eb550bd54a69bd28cc161947acb5 (diff)
downloadcython-80160d01f30324fd7f26e497e16d4d6d6a6accce.tar.gz
Tighten Py3.7 guard for new "exc_state" struct usage.
-rw-r--r--Cython/Utility/Exceptions.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/Cython/Utility/Exceptions.c b/Cython/Utility/Exceptions.c
index 86f29f684..fe37bf3b4 100644
--- a/Cython/Utility/Exceptions.c
+++ b/Cython/Utility/Exceptions.c
@@ -359,7 +359,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb)
*value = local_value;
*tb = local_tb;
#if CYTHON_FAST_THREAD_STATE
- #if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 7
+ #if PY_VERSION_HEX >= 0x030700A2
tmp_type = tstate->exc_state.exc_type;
tmp_value = tstate->exc_state.exc_value;
tmp_tb = tstate->exc_state.exc_traceback;
@@ -403,7 +403,7 @@ static CYTHON_INLINE void __Pyx_ReraiseException(void) {
PyObject *type = NULL, *value = NULL, *tb = NULL;
#if CYTHON_FAST_THREAD_STATE
PyThreadState *tstate = PyThreadState_GET();
- #if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 7
+ #if PY_VERSION_HEX >= 0x030700A2
type = tstate->exc_state.exc_type;
value = tstate->exc_state.exc_value;
tb = tstate->exc_state.exc_traceback;
@@ -455,7 +455,7 @@ static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject
#if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
- #if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 7
+ #if PY_VERSION_HEX >= 0x030700A2
*type = tstate->exc_state.exc_type;
*value = tstate->exc_state.exc_value;
*tb = tstate->exc_state.exc_traceback;
@@ -472,7 +472,7 @@ static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject *
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
PyObject *tmp_type, *tmp_value, *tmp_tb;
- #if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 7
+ #if PY_VERSION_HEX >= 0x030700A2
tmp_type = tstate->exc_state.exc_type;
tmp_value = tstate->exc_state.exc_value;
tmp_tb = tstate->exc_state.exc_traceback;
@@ -510,7 +510,7 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value,
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
PyObject *tmp_type, *tmp_value, *tmp_tb;
- #if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 7
+ #if PY_VERSION_HEX >= 0x030700A2
tmp_type = tstate->exc_state.exc_type;
tmp_value = tstate->exc_state.exc_value;
tmp_tb = tstate->exc_state.exc_traceback;
@@ -526,8 +526,8 @@ static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject *
tstate->exc_type = *type;
tstate->exc_value = *value;
tstate->exc_traceback = *tb;
-
#endif
+
*type = tmp_type;
*value = tmp_value;
*tb = tmp_tb;