authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-05-26 18:29:14-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-05-26 18:29:14-04:00
logb8d4e05361d6a01ae1c0bf931e27e2bfdb25551d
tree12eed9b8a6ea2abe1a2d841691672cc9d6ebe4f7
parent7e900d28be00e03eee2ec3703c0c45247b4748b1

zig fmt: handle empty block with comment inside


2 files changed, 12 insertions(+), 1 deletions(-)

std/zig/parser_test.zig+11
...@@ -1,3 +1,14 @@...@@ -1,3 +1,14 @@
1test "zig fmt: empty block with only comment" {
2 try testCanonical(
3 \\comptime {
4 \\ {
5 \\ // comment
6 \\ }
7 \\}
8 \\
9 );
10}
11
1test "zig fmt: no trailing comma on struct decl" {12test "zig fmt: no trailing comma on struct decl" {
2 try testTransform(13 try testTransform(
3 \\const RoundParam = struct {14 \\const RoundParam = struct {
std/zig/render.zig+1-1
...@@ -1519,7 +1519,7 @@ fn renderToken(tree: &ast.Tree, stream: var, token_index: ast.TokenIndex, indent...@@ -1519,7 +1519,7 @@ fn renderToken(tree: &ast.Tree, stream: var, token_index: ast.TokenIndex, indent
15191519
1520 const after_comment_token = tree.tokens.at(token_index + offset);1520 const after_comment_token = tree.tokens.at(token_index + offset);
1521 const next_line_indent = switch (after_comment_token.id) {1521 const next_line_indent = switch (after_comment_token.id) {
1522 Token.Id.RParen, Token.Id.RBrace, Token.Id.RBracket => indent,1522 Token.Id.RParen, Token.Id.RBrace, Token.Id.RBracket => indent - indent_delta,
1523 else => indent,1523 else => indent,
1524 };1524 };
1525 try stream.writeByteNTimes(' ', next_line_indent);1525 try stream.writeByteNTimes(' ', next_line_indent);