diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2018-05-25 02:19:53 -0400 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2018-05-25 02:19:53 -0400 |
| commit | a630d3e851a62c0e8971cbd2183e215606f35ab1 (patch) | |
| tree | 49d75e0e2a5df49b7e89712e07eeb1dcf552db4a /std | |
| parent | 56cb7f1740bf369b7cd2cac29db559c5c6bccc22 (diff) | |
| download | zig-a630d3e851a62c0e8971cbd2183e215606f35ab1.tar.gz zig-a630d3e851a62c0e8971cbd2183e215606f35ab1.zip | |
zig fmt: fix rendering of align keyword of slice type
Diffstat (limited to 'std')
| -rw-r--r-- | std/zig/parser_test.zig | 9 | ||||
| -rw-r--r-- | std/zig/render.zig | 12 |
2 files changed, 15 insertions, 6 deletions
diff --git a/std/zig/parser_test.zig b/std/zig/parser_test.zig index cabfb48387..ada132e775 100644 --- a/std/zig/parser_test.zig +++ b/std/zig/parser_test.zig @@ -1,3 +1,12 @@ +test "zig fmt: slice align" { + try testCanonical( + \\const A = struct { + \\ items: []align(A) T, + \\}; + \\ + ); +} + test "zig fmt: first thing in file is line comment" { try testTransform( \\comptime { diff --git a/std/zig/render.zig b/std/zig/render.zig index 61c66aaaf8..215e57ceb8 100644 --- a/std/zig/render.zig +++ b/std/zig/render.zig @@ -268,10 +268,10 @@ fn renderExpression(allocator: &mem.Allocator, stream: var, tree: &ast.Tree, ind ast.Node.PrefixOp.Op.AddrOf => |addr_of_info| { try renderToken(tree, stream, prefix_op_node.op_token, indent, Space.None); // & if (addr_of_info.align_info) |align_info| { - const align_token = tree.nextToken(prefix_op_node.op_token); - try renderToken(tree, stream, align_token, indent, Space.None); // align - const lparen_token = tree.prevToken(align_info.node.firstToken()); + const align_token = tree.prevToken(lparen_token); + + try renderToken(tree, stream, align_token, indent, Space.None); // align try renderToken(tree, stream, lparen_token, indent, Space.None); // ( try renderExpression(allocator, stream, tree, indent, align_info.node, Space.None); @@ -305,10 +305,10 @@ fn renderExpression(allocator: &mem.Allocator, stream: var, tree: &ast.Tree, ind try renderToken(tree, stream, tree.nextToken(prefix_op_node.op_token), indent, Space.None); // ] if (addr_of_info.align_info) |align_info| { - const align_token = tree.nextToken(prefix_op_node.op_token); - try renderToken(tree, stream, align_token, indent, Space.None); // align - const lparen_token = tree.prevToken(align_info.node.firstToken()); + const align_token = tree.prevToken(lparen_token); + + try renderToken(tree, stream, align_token, indent, Space.None); // align try renderToken(tree, stream, lparen_token, indent, Space.None); // ( try renderExpression(allocator, stream, tree, indent, align_info.node, Space.None); |
