void TraversingVisitor::visit(Block &block)
{
+ SetForScope<Block *> set_block(current_block, &block);
for(NodeList<Statement>::iterator i=block.body.begin(); i!=block.body.end(); ++i)
(*i)->visit(*this);
}
{
stage = &s;
to_remove = &tr;
- visit(s.content);
+ s.content.visit(*this);
}
void NodeRemover::remove_variable(map<string, VariableDeclaration *> &vars, VariableDeclaration &decl)