diff options
author | Stefan Behnel <stefan_ml@behnel.de> | 2016-08-30 11:47:18 +0200 |
---|---|---|
committer | Stefan Behnel <stefan_ml@behnel.de> | 2016-08-30 11:47:18 +0200 |
commit | 2ca582e4e1873906798c8cb34358aa489370ff59 (patch) | |
tree | 3d0d3fe9b0c60229086f6f55e2d01a8eec6d7b37 /Cython/Compiler/ModuleNode.py | |
parent | 2eb51aabb80f41b9f41d3791c1c5215d604f231f (diff) | |
download | cython-2ca582e4e1873906798c8cb34358aa489370ff59.tar.gz |
avoid generating a PyMethodDef entry for the newly implemented CyFunction methods
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 cb2ab97b3..80e61e660 100644 --- a/Cython/Compiler/ModuleNode.py +++ b/Cython/Compiler/ModuleNode.py @@ -1975,12 +1975,13 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): def generate_method_table(self, env, code): if env.is_c_class_scope and not env.pyfunc_entries: return + binding = env.directives['binding'] code.putln("") code.putln( "static PyMethodDef %s[] = {" % ( env.method_table_cname)) for entry in env.pyfunc_entries: - if not entry.fused_cfunction: + if not entry.fused_cfunction and not (binding and entry.is_overridable): code.put_pymethoddef(entry, ",") code.putln( "{0, 0, 0, 0}") |