diff --git a/Cython/Compiler/FlowControl.py b/Cython/Compiler/FlowControl.py index 4bce8e0c8f54b84dcf5b835ecd1addf79643f62d_Q3l0aG9uL0NvbXBpbGVyL0Zsb3dDb250cm9sLnB5..f520493102bde61f09c72eeb41a40ddb0e41ca6a_Q3l0aG9uL0NvbXBpbGVyL0Zsb3dDb250cm9sLnB5 100644 --- a/Cython/Compiler/FlowControl.py +++ b/Cython/Compiler/FlowControl.py @@ -1220,6 +1220,7 @@ if self.flow.loops: self.flow.loops[-1].exceptions.append(descr) self.flow.block = body_block + body_block.add_child(entry_point) self.flow.nextblock() self._visit(node.body) self.flow.exceptions.pop() diff --git a/tests/compile/tryfinally.pyx b/tests/compile/tryfinally.pyx index 4bce8e0c8f54b84dcf5b835ecd1addf79643f62d_dGVzdHMvY29tcGlsZS90cnlmaW5hbGx5LnB5eA==..f520493102bde61f09c72eeb41a40ddb0e41ca6a_dGVzdHMvY29tcGlsZS90cnlmaW5hbGx5LnB5eA== 100644 --- a/tests/compile/tryfinally.pyx +++ b/tests/compile/tryfinally.pyx @@ -18,4 +18,10 @@ finally: i = 42 +def use_name_in_finally(name): + # GH3712 + try: + [] + finally: + name() @@ -21,1 +27,2 @@ +