authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-05-29 18:54:46-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-05-29 19:09:58-04:00
log8a4ee5942b996d2ffe9c61d7d73fe10f8b1ecea4
treedc16f295fa321543ec49755dd2ecfd96dd307180
parentb7a82288adae12ed52abafbc4e5a9ab391a1f09b
signaturelock-open Commit is signed but in an unrecognized format.

zig fmt: fix 2 bugs of mangling source files


4 files changed, 34 insertions(+), 2 deletions(-)

CMakeLists.txt+3
...@@ -6729,6 +6729,9 @@ add_custom_command(...@@ -6729,6 +6729,9 @@ add_custom_command(
6729 "${CMAKE_SOURCE_DIR}/src-self-hosted/stage1.zig"6729 "${CMAKE_SOURCE_DIR}/src-self-hosted/stage1.zig"
6730 "${CMAKE_SOURCE_DIR}/src-self-hosted/translate_c.zig"6730 "${CMAKE_SOURCE_DIR}/src-self-hosted/translate_c.zig"
6731 "${CMAKE_SOURCE_DIR}/build.zig"6731 "${CMAKE_SOURCE_DIR}/build.zig"
6732 "${CMAKE_SOURCE_DIR}/std/zig/parse.zig"
6733 "${CMAKE_SOURCE_DIR}/std/zig/render.zig"
6734 "${CMAKE_SOURCE_DIR}/std/zig/tokenizer.zig"
6732)6735)
6733add_custom_target(userland_target DEPENDS "${LIBUSERLAND}")6736add_custom_target(userland_target DEPENDS "${LIBUSERLAND}")
6734add_executable(zig "${ZIG_MAIN_SRC}")6737add_executable(zig "${ZIG_MAIN_SRC}")
std/zig/parse.zig+1-1
...@@ -1026,7 +1026,7 @@ fn parseWhileExpr(arena: *Allocator, it: *TokenIterator, tree: *Tree) !?*Node {...@@ -1026,7 +1026,7 @@ fn parseWhileExpr(arena: *Allocator, it: *TokenIterator, tree: *Tree) !?*Node {
1026 else_node.* = Node.Else{1026 else_node.* = Node.Else{
1027 .base = Node{ .id = .Else },1027 .base = Node{ .id = .Else },
1028 .else_token = else_token,1028 .else_token = else_token,
1029 .payload = null,1029 .payload = payload,
1030 .body = body,1030 .body = body,
1031 };1031 };
10321032
std/zig/parser_test.zig+29
...@@ -8,6 +8,35 @@ test "zig fmt: change use to usingnamespace" {...@@ -8,6 +8,35 @@ test "zig fmt: change use to usingnamespace" {
8 );8 );
9}9}
1010
11test "zig fmt: while else err prong with no block" {
12 try testCanonical(
13 \\test "" {
14 \\ const result = while (returnError()) |value| {
15 \\ break value;
16 \\ } else |err| i32(2);
17 \\ expect(result == 2);
18 \\}
19 \\
20 );
21}
22
23test "zig fmt: tagged union with enum values" {
24 try testCanonical(
25 \\const MultipleChoice2 = union(enum(u32)) {
26 \\ Unspecified1: i32,
27 \\ A: f32 = 20,
28 \\ Unspecified2: void,
29 \\ B: bool = 40,
30 \\ Unspecified3: i32,
31 \\ C: i8 = 60,
32 \\ Unspecified4: void,
33 \\ D: void = 1000,
34 \\ Unspecified5: i32,
35 \\};
36 \\
37 );
38}
39
11test "zig fmt: allowzero pointer" {40test "zig fmt: allowzero pointer" {
12 try testCanonical(41 try testCanonical(
13 \\const T = [*]allowzero const u8;42 \\const T = [*]allowzero const u8;
std/zig/render.zig+1-1
...@@ -214,7 +214,7 @@ fn renderTopLevelDecl(allocator: *mem.Allocator, stream: var, tree: *ast.Tree, i...@@ -214,7 +214,7 @@ fn renderTopLevelDecl(allocator: *mem.Allocator, stream: var, tree: *ast.Tree, i
214 try renderToken(tree, stream, field.name_token, indent, start_col, Space.None); // name214 try renderToken(tree, stream, field.name_token, indent, start_col, Space.None); // name
215 try renderToken(tree, stream, tree.nextToken(field.name_token), indent, start_col, Space.Space); // :215 try renderToken(tree, stream, tree.nextToken(field.name_token), indent, start_col, Space.Space); // :
216 try renderExpression(allocator, stream, tree, indent, start_col, field.type_expr.?, Space.Space); // type216 try renderExpression(allocator, stream, tree, indent, start_col, field.type_expr.?, Space.Space); // type
217 try renderToken(tree, stream, tree.nextToken(field.name_token), indent, start_col, Space.Space); // =217 try renderToken(tree, stream, tree.nextToken(field.type_expr.?.lastToken()), indent, start_col, Space.Space); // =
218 return renderExpression(allocator, stream, tree, indent, start_col, field.value_expr.?, Space.Comma); // value,218 return renderExpression(allocator, stream, tree, indent, start_col, field.value_expr.?, Space.Comma); // value,
219 }219 }
220 },220 },