aboutsummaryrefslogtreecommitdiff
path: root/src/ast_render.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2016-12-12 00:31:35 -0500
committerAndrew Kelley <superjoe30@gmail.com>2016-12-12 00:31:35 -0500
commitef63bc9cca6370f03d76a2a19dd7cdd7e23270d4 (patch)
treefca2d675e920c9809d7a7b3d9ed858e44589d286 /src/ast_render.cpp
parentfb2157063060682a314cb8f2e34efc7989646455 (diff)
downloadzig-ef63bc9cca6370f03d76a2a19dd7cdd7e23270d4.tar.gz
zig-ef63bc9cca6370f03d76a2a19dd7cdd7e23270d4.zip
IR: implement memcpy, memset, and slice expression
Diffstat (limited to 'src/ast_render.cpp')
-rw-r--r--src/ast_render.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/ast_render.cpp b/src/ast_render.cpp
index 929aa17c6f..013408b4b7 100644
--- a/src/ast_render.cpp
+++ b/src/ast_render.cpp
@@ -849,11 +849,23 @@ static void render_node_extra(AstRender *ar, AstNode *node, bool grouped) {
fprintf(ar->f, "%scontinue", inline_str);
break;
}
+ case NodeTypeSliceExpr:
+ {
+ render_node_ungrouped(ar, node->data.slice_expr.array_ref_expr);
+ fprintf(ar->f, "[");
+ render_node_grouped(ar, node->data.slice_expr.start);
+ fprintf(ar->f, "...");
+ if (node->data.slice_expr.end)
+ render_node_grouped(ar, node->data.slice_expr.end);
+ fprintf(ar->f, "]");
+ if (node->data.slice_expr.is_const)
+ fprintf(ar->f, "const");
+ break;
+ }
case NodeTypeFnDecl:
case NodeTypeParamDecl:
case NodeTypeErrorValueDecl:
case NodeTypeUnwrapErrorExpr:
- case NodeTypeSliceExpr:
case NodeTypeStructField:
case NodeTypeUse:
case NodeTypeZeroesLiteral: