From 6c1fda3f99ebef60f4cb45b6bd66e76c85483c36 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Mon, 28 May 2018 17:09:55 -0400 Subject: [PATCH] zig fmt: fix switch body indent --- std/zig/parser_test.zig | 12 ++++++++++++ std/zig/render.zig | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/std/zig/parser_test.zig b/std/zig/parser_test.zig index 72818bc074..dc522b3ef4 100644 --- a/std/zig/parser_test.zig +++ b/std/zig/parser_test.zig @@ -1,3 +1,15 @@ +test "zig fmt: switch comment before prong" { + try testCanonical( + \\comptime { + \\ switch (a) { + \\ // hi + \\ 0 => {}, + \\ } + \\} + \\ + ); +} + test "zig fmt: struct literal no trailing comma" { try testTransform( \\const a = foo{ .x = 1, .y = 2 }; diff --git a/std/zig/render.zig b/std/zig/render.zig index 86e972c173..2f94d1cf8a 100644 --- a/std/zig/render.zig +++ b/std/zig/render.zig @@ -1050,11 +1050,11 @@ fn renderExpression(allocator: &mem.Allocator, stream: var, tree: &ast.Tree, ind try renderExpression(allocator, stream, tree, indent, switch_node.expr, Space.None); - try renderToken(tree, stream, rparen, indent, Space.Space); // ) - try renderToken(tree, stream, lbrace, indent, Space.Newline); // { - const new_indent = indent + indent_delta; + try renderToken(tree, stream, rparen, indent, Space.Space); // ) + try renderToken(tree, stream, lbrace, new_indent, Space.Newline); // { + var it = switch_node.cases.iterator(0); while (it.next()) |node| { try stream.writeByteNTimes(' ', new_indent);