void DumpTree::visit(Assignment &assign)
{
- append(format("Assignment%s", (assign.self_referencing ? " (self-referencing)" : "")));
+ append(format("Assignment: %s%s", assign.oper, (assign.self_referencing ? " (self-referencing)" : "")));
begin_sub();
assign.left->visit(*this);
last_branch();
void DumpTree::visit(FunctionCall &call)
{
- string head = format("Function call: %s", call.name);
+ string head = "Function call: ";
if(call.declaration)
- head += format(", declaration %%%d", get_label(*call.declaration));
+ head += format("%%%d ", get_label(*call.declaration));
+ head += call.name;
if(call.constructor)
- head += ", constructor";
+ head += " (constructor)";
append(head);
begin_sub();
if(!var.precision.empty())
decl += format("%s ", var.precision);
decl += format("%s %s", var.type, var.name);
+ if(var.linked_declaration)
+ decl += " (linked)";
append(decl);
begin_sub();