module SyntaxTree::WithScope

def visit_method_add_block(node)

itself happens in the same scope.
inside of the block needs a fresh scope. The method invocation
When we find a method invocation with a block, only the code that happens
def visit_method_add_block(node)
  visit(node.call)
  with_scope(current_scope) { visit(node.block) }
end