IR: implement defer

This commit is contained in:
Andrew Kelley
2016-12-06 21:26:17 -05:00
parent 0c531d447d
commit 6ed202ab16
8 changed files with 95 additions and 189 deletions

View File

@@ -455,8 +455,11 @@ static void render_node_extra(AstRender *ar, AstNode *node, bool grouped) {
case NodeTypeReturnExpr:
{
const char *return_str = return_string(node->data.return_expr.kind);
fprintf(ar->f, "%s ", return_str);
render_node_grouped(ar, node->data.return_expr.expr);
fprintf(ar->f, "%s", return_str);
if (node->data.return_expr.expr) {
fprintf(ar->f, " ");
render_node_grouped(ar, node->data.return_expr.expr);
}
break;
}
case NodeTypeDefer: