diff options
author | Stefan Behnel <stefan_ml@behnel.de> | 2019-06-01 09:05:18 +0200 |
---|---|---|
committer | Stefan Behnel <stefan_ml@behnel.de> | 2019-06-01 09:05:18 +0200 |
commit | 6947db1c25142007aea389d39580d31c29ea8c09 (patch) | |
tree | 3b01585430764e573126356bbdc106b4b8133ca7 /Cython/Compiler/ModuleNode.py | |
parent | c8190c4de6745454022c481b014c8bca253ddec1 (diff) | |
download | cython-6947db1c25142007aea389d39580d31c29ea8c09.tar.gz |
Avoid checking Py_TPFLAGS_HAVE_FINALIZE in Py3.8 and later since CPython now relies on the feature being there.
Diffstat (limited to 'Cython/Compiler/ModuleNode.py')
-rw-r--r-- | Cython/Compiler/ModuleNode.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py index a705dfd48..2762c2d5b 100644 --- a/Cython/Compiler/ModuleNode.py +++ b/Cython/Compiler/ModuleNode.py @@ -1458,7 +1458,8 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): finalised_check = ( '(!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))') code.putln( - "if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)" + "if (unlikely(" + "(PY_VERSION_HEX >= 0x03080000 || PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE))" " && Py_TYPE(o)->tp_finalize) && %s) {" % finalised_check) # if instance was resurrected by finaliser, return code.putln("if (PyObject_CallFinalizerFromDealloc(o)) return;") |