authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-05-26 16:43:33-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-05-26 16:43:33-04:00
log0bef1f98247160cbd5101c763404c76ae287b2bd
treed4f2efcc4ea3929a9045529ea482f5df5747b84f
parent0ab888c639dffcc48bc08a6ff186aa3da0ecbf74

zig fmt: fix rendering of struct with no trailing comma on last field


2 files changed, 16 insertions(+), 2 deletions(-)

std/zig/parser_test.zig+15
......@@ -1,3 +1,18 @@
1test "zig fmt: no trailing comma on struct decl" {
2 try testTransform(
3 \\const RoundParam = struct {
4 \\ k: usize, s: u32, t: u32
5 \\};
6 ,
7 \\const RoundParam = struct {
8 \\ k: usize,
9 \\ s: u32,
10 \\ t: u32,
11 \\};
12 \\
13 );
14}
15
116test "zig fmt: simple asm" {
217 try testTransform(
318 \\comptime {
std/zig/render.zig+1-2
......@@ -102,8 +102,7 @@ fn renderTopLevelDecl(allocator: &mem.Allocator, stream: var, tree: &ast.Tree, i
102102 }
103103 try renderToken(tree, stream, field.name_token, indent, Space.None); // name
104104 try renderToken(tree, stream, tree.nextToken(field.name_token), indent, Space.Space); // :
105 try renderExpression(allocator, stream, tree, indent, field.type_expr, Space.None); // type
106 try renderToken(tree, stream, tree.nextToken(field.lastToken()), indent, Space.Newline); // ,
105 try renderTrailingComma(allocator, stream, tree, indent, field.type_expr, Space.Newline); // type,
107106 },
108107
109108 ast.Node.Id.UnionTag => {