authorgravatar for thejoshwolfe@gmail.comJosh Wolfe <thejoshwolfe@gmail.com> 2018-04-10 22:44:55-04:00
committergravatar for thejoshwolfe@gmail.comJosh Wolfe <thejoshwolfe@gmail.com> 2018-04-10 22:44:55-04:00
log405a2390f09c78fb5db435e97d8ff23c0b44753b
treeb19f1ae0ecc6e835f8665390b1d83b99e67f6d44
parentf6c77746d6be1bb238bf632f74c6dfc28de034ed

zig fmt while-else with no blocks


1 files changed, 7 insertions(+), 1 deletions(-)

std/zig/parser.zig+7-1
...@@ -3839,12 +3839,13 @@ pub const Parser = struct {...@@ -3839,12 +3839,13 @@ pub const Parser = struct {
3839 },3839 },
3840 ast.Node.Id.Else => {3840 ast.Node.Id.Else => {
3841 const else_node = @fieldParentPtr(ast.NodeElse, "base", base);3841 const else_node = @fieldParentPtr(ast.NodeElse, "base", base);
3842 try stream.print("{} ", self.tokenizer.getTokenSlice(else_node.else_token));3842 try stream.print("{}", self.tokenizer.getTokenSlice(else_node.else_token));
38433843
3844 switch (else_node.body.id) {3844 switch (else_node.body.id) {
3845 ast.Node.Id.Block, ast.Node.Id.If,3845 ast.Node.Id.Block, ast.Node.Id.If,
3846 ast.Node.Id.For, ast.Node.Id.While,3846 ast.Node.Id.For, ast.Node.Id.While,
3847 ast.Node.Id.Switch => {3847 ast.Node.Id.Switch => {
3848 try stream.print(" ");
3848 try stack.append(RenderState { .Expression = else_node.body });3849 try stack.append(RenderState { .Expression = else_node.body });
3849 },3850 },
3850 else => {3851 else => {
...@@ -4805,6 +4806,11 @@ test "zig fmt: while" {...@@ -4805,6 +4806,11 @@ test "zig fmt: while" {
4805 \\ unreachable;4806 \\ unreachable;
4806 \\ };4807 \\ };
4807 \\4808 \\
4809 \\ const res = while (0 < 10)
4810 \\ break 7
4811 \\ else
4812 \\ unreachable;
4813 \\
4808 \\ var a: error!u8 = 0;4814 \\ var a: error!u8 = 0;
4809 \\ while (a) |v| {4815 \\ while (a) |v| {
4810 \\ a = error.Err;4816 \\ a = error.Err;