Skip to content

Commit

Permalink
Remove old control flow stuff (analyse_control_flow is still there)
Browse files Browse the repository at this point in the history
  • Loading branch information
vitek committed May 29, 2011
1 parent dd389de commit 68dfde1
Show file tree
Hide file tree
Showing 4 changed files with 0 additions and 216 deletions.
178 changes: 0 additions & 178 deletions Cython/Compiler/ControlFlow.py

This file was deleted.

2 changes: 0 additions & 2 deletions Cython/Compiler/ExprNodes.py
Expand Up @@ -1392,8 +1392,6 @@ def analyse_target_declaration(self, env):
else:
type = py_object_type
self.entry = env.declare_var(self.name, type, self.pos)
env.control_flow.set_state(self.pos, (self.name, 'initialized'), True)
env.control_flow.set_state(self.pos, (self.name, 'source'), 'assignment')
if self.entry.is_declared_generic:
self.result_ctype = py_object_type

Expand Down
22 changes: 0 additions & 22 deletions Cython/Compiler/Nodes.py
Expand Up @@ -25,7 +25,6 @@
from Code import UtilityCode, ClosureTempAllocator
from StringEncoding import EncodedString, escape_byte_string, split_string_literal
import Options
import ControlFlow
import DebugFlags

absolute_path_length = 0
Expand Down Expand Up @@ -2249,9 +2248,6 @@ def declare_arguments(self, env):
for arg in self.args:
if not arg.name:
error(arg.pos, "Missing argument name")
else:
env.control_flow.set_state((), (arg.name, 'source'), 'arg')
env.control_flow.set_state((), (arg.name, 'initialized'), True)
if arg.needs_conversion:
arg.entry = env.declare_var(arg.name, arg.type, arg.pos)
if arg.type.is_pyobject:
Expand All @@ -2278,7 +2274,6 @@ def declare_python_arg(self, env, arg):
entry.init = "0"
entry.xdecref_cleanup = 1
arg.entry = entry
env.control_flow.set_state((), (arg.name, 'initialized'), True)

def analyse_expressions(self, env):
self.local_scope.directives = env.directives
Expand Down Expand Up @@ -4347,13 +4342,10 @@ class IfStatNode(StatNode):
child_attrs = ["if_clauses", "else_clause"]

def analyse_control_flow(self, env):
env.start_branching(self.pos)
for if_clause in self.if_clauses:
if_clause.analyse_control_flow(env)
env.next_branch(if_clause.end_pos())
if self.else_clause:
self.else_clause.analyse_control_flow(env)
env.finish_branching(self.end_pos())

def analyse_declarations(self, env):
for if_clause in self.if_clauses:
Expand Down Expand Up @@ -4499,12 +4491,9 @@ def annotate(self, code):
class LoopNode(object):

def analyse_control_flow(self, env):
env.start_branching(self.pos)
self.body.analyse_control_flow(env)
env.next_branch(self.body.end_pos())
if self.else_clause:
self.else_clause.analyse_control_flow(env)
env.finish_branching(self.end_pos())


class WhileStatNode(LoopNode, StatNode):
Expand Down Expand Up @@ -5044,22 +5033,14 @@ class TryExceptStatNode(StatNode):
child_attrs = ["body", "except_clauses", "else_clause"]

def analyse_control_flow(self, env):
env.start_branching(self.pos)
self.body.analyse_control_flow(env)
successful_try = env.control_flow # grab this for later
env.next_branch(self.body.end_pos())
env.finish_branching(self.body.end_pos())

env.start_branching(self.except_clauses[0].pos)
for except_clause in self.except_clauses:
except_clause.analyse_control_flow(env)
env.next_branch(except_clause.end_pos())

# the else cause it executed only when the try clause finishes
env.control_flow.incoming = successful_try
if self.else_clause:
self.else_clause.analyse_control_flow(env)
env.finish_branching(self.end_pos())

def analyse_declarations(self, env):
self.body.analyse_declarations(env)
Expand Down Expand Up @@ -5382,10 +5363,7 @@ def create_analysed(pos, env, body, finally_clause):
create_analysed = staticmethod(create_analysed)

def analyse_control_flow(self, env):
env.start_branching(self.pos)
self.body.analyse_control_flow(env)
env.next_branch(self.body.end_pos())
env.finish_branching(self.body.end_pos())
self.finally_clause.analyse_control_flow(env)

def analyse_declarations(self, env):
Expand Down
14 changes: 0 additions & 14 deletions Cython/Compiler/Symtab.py
Expand Up @@ -13,7 +13,6 @@
from TypeSlots import \
pyfunction_signature, pymethod_signature, \
get_special_method_signature, get_property_accessor_signature
import ControlFlow
import Code
import __builtin__ as builtins
try:
Expand Down Expand Up @@ -224,7 +223,6 @@ class Scope(object):
# qualified_name string "modname" or "modname.classname"
# pystring_entries [Entry] String const entries newly used as
# Python strings in this scope
# control_flow ControlFlow Used for keeping track of environment state
# nogil boolean In a nogil section
# directives dict Helper variable for the recursive
# analysis, contains directive values.
Expand Down Expand Up @@ -276,19 +274,9 @@ def __init__(self, name, outer_scope, parent_scope):
self.pystring_entries = []
self.buffer_entries = []
self.lambda_defs = []
self.control_flow = ControlFlow.LinearControlFlow()
self.return_type = None
self.id_counters = {}

def start_branching(self, pos):
self.control_flow = self.control_flow.start_branch(pos)

def next_branch(self, pos):
self.control_flow = self.control_flow.next_branch(pos)

def finish_branching(self, pos):
self.control_flow = self.control_flow.finish_branch(pos)

def __str__(self):
return "<%s %s>" % (self.__class__.__name__, self.qualified_name)

Expand Down Expand Up @@ -528,7 +516,6 @@ def declare_var(self, name, type, pos,
if api:
entry.api = 1
entry.used = 1
self.control_flow.set_state((), (name, 'initialized'), False)
return entry

def declare_builtin(self, name, pos):
Expand Down Expand Up @@ -1374,7 +1361,6 @@ def declare_arg(self, name, type, pos):
entry.is_arg = 1
#entry.borrowed = 1 # Not using borrowed arg refs for now
self.arg_entries.append(entry)
self.control_flow.set_state((), (name, 'source'), 'arg')
return entry

def declare_var(self, name, type, pos,
Expand Down

0 comments on commit 68dfde1

Please sign in to comment.