# HG changeset patch # User Stefan Behnel <stefan_ml@behnel.de> # Date 1587721250 -7200 # Fri Apr 24 11:40:50 2020 +0200 # Node ID d840581e8419ead00dc49c9277630675de69811e # Parent b0221b4f0966a78b978a790227e0d7284e16dfb2 Avoid some unnecessary traversal in "ForwardDeclareTypes". diff --git a/Cython/Compiler/ParseTreeTransforms.py b/Cython/Compiler/ParseTreeTransforms.py --- a/Cython/Compiler/ParseTreeTransforms.py +++ b/Cython/Compiler/ParseTreeTransforms.py @@ -1510,6 +1510,10 @@ class ForwardDeclareTypes(CythonTransform): + """ + Declare all global cdef names that we allow referencing in other places, + before declaring everything (else) in source code order. + """ def visit_CompilerDirectivesNode(self, node): env = self.module_scope @@ -1553,6 +1557,14 @@ entry.type.get_all_specialized_function_types() return node + def visit_FuncDefNode(self, node): + # no traversal needed + return node + + def visit_PyClassDefNode(self, node): + # no traversal needed + return node + class AnalyseDeclarationsTransform(EnvTransform):