void TraversingVisitor::visit(Block &block)
{
- for(list<RefPtr<Node> >::iterator i=block.body.begin(); i!=block.body.end(); ++i)
+ for(list<RefPtr<Statement> >::iterator i=block.body.begin(); i!=block.body.end(); ++i)
(*i)->visit(*this);
}
void TraversingVisitor::visit(Iteration &iter)
{
- iter.init_statement->visit(*this);
+ if(iter.init_statement)
+ iter.init_statement->visit(*this);
if(iter.condition)
iter.condition->visit(*this);
if(iter.loop_expression)