diff options
| author | Josh Wolfe <thejoshwolfe@gmail.com> | 2017-04-12 22:18:56 -0700 |
|---|---|---|
| committer | Josh Wolfe <thejoshwolfe@gmail.com> | 2017-04-12 23:22:32 -0700 |
| commit | 356424916ced599852e2c38265eebe7a1fc1637d (patch) | |
| tree | 2bec2154f1e4bbb93b0f9d5e959aaf491240ccd0 /src/ast_render.cpp | |
| parent | 919910312d7d25fe8f894adbc9ff8a449ac26281 (diff) | |
| download | zig-356424916ced599852e2c38265eebe7a1fc1637d.tar.gz zig-356424916ced599852e2c38265eebe7a1fc1637d.zip | |
block statement lists never get fake expressions
instead blocks have a field that encodes whether the last statement ended with
a semicolon.
Diffstat (limited to 'src/ast_render.cpp')
| -rw-r--r-- | src/ast_render.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/ast_render.cpp b/src/ast_render.cpp index faebd8f7a3..72906610a4 100644 --- a/src/ast_render.cpp +++ b/src/ast_render.cpp @@ -464,8 +464,10 @@ static void render_node_extra(AstRender *ar, AstNode *node, bool grouped) { } print_indent(ar); render_node_grouped(ar, statement); - if (i != node->data.block.statements.length - 1) + if (!(i == node->data.block.statements.length - 1 && + node->data.block.last_statement_is_result_expression)) { fprintf(ar->f, ";"); + } fprintf(ar->f, "\n"); } ar->indent -= ar->indent_size; |
