message: Correctly handle return statements in with statements.
diff: @@ -108,6 +108,13 @@ class ConditionalReturnRewriter(converter.Base):
  node.orelse, _ = self._visit_statement_block(node, node.orelse)
  return node
  + def visit_With(self, node):
  + node.items = self.visit_block(node.items)
  + node.body, definitely_returns = self._visit_statement_block(node, node.body)
  + if definitely_returns:
  + anno.setanno(node, STMT_DEFINITELY_RETURNS, True)
  + return node
  +
  def visit_If(self, node):
  node.test = self.visit(node.test)
  @@ -305,6 +312,11 @@ class ReturnStatementsTransformer(converter.Base):
  node.orelse = self._visit_statement_block(node, node.orelse)
  return node
  + def visit_With(self, node):
  + node.items = self.visit_block(node.items)
  + node.body = self._visit_statement_block(node, node.body)
  + return node
  +
  def visit_If(self, node):
  node.test = self.visit(node.test)
  node.body = self._visit_statement_block(node, node.body)
  