parser: port test "struct literal containing a multiline expression"
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -2278,6 +2278,67 @@ test "zig fmt: struct literal no trailing comma" {
|
||||
);
|
||||
}
|
||||
|
||||
test "zig fmt: struct literal containing a multiline expression" {
|
||||
try testTransform(
|
||||
\\const a = A{ .x = if (f1()) 10 else 20 };
|
||||
\\const a = A{ .x = if (f1()) 10 else 20, };
|
||||
\\const a = A{ .x = if (f1())
|
||||
\\ 10 else 20 };
|
||||
\\const a = A{ .x = if (f1())
|
||||
\\ 10 else 20,};
|
||||
\\const a = A{ .x = if (f1()) 10 else 20, .y = f2() + 100 };
|
||||
\\const a = A{ .x = if (f1()) 10 else 20, .y = f2() + 100, };
|
||||
\\const a = A{ .x = if (f1())
|
||||
\\ 10 else 20};
|
||||
\\const a = A{ .x = if (f1())
|
||||
\\ 10 else 20,};
|
||||
\\const a = A{ .x = switch(g) {0 => "ok", else => "no"} };
|
||||
\\const a = A{ .x = switch(g) {0 => "ok", else => "no"}, };
|
||||
\\
|
||||
,
|
||||
\\const a = A{ .x = if (f1()) 10 else 20 };
|
||||
\\const a = A{
|
||||
\\ .x = if (f1()) 10 else 20,
|
||||
\\};
|
||||
\\const a = A{ .x = if (f1())
|
||||
\\ 10
|
||||
\\else
|
||||
\\ 20 };
|
||||
\\const a = A{
|
||||
\\ .x = if (f1())
|
||||
\\ 10
|
||||
\\ else
|
||||
\\ 20,
|
||||
\\};
|
||||
\\const a = A{ .x = if (f1()) 10 else 20, .y = f2() + 100 };
|
||||
\\const a = A{
|
||||
\\ .x = if (f1()) 10 else 20,
|
||||
\\ .y = f2() + 100,
|
||||
\\};
|
||||
\\const a = A{ .x = if (f1())
|
||||
\\ 10
|
||||
\\else
|
||||
\\ 20 };
|
||||
\\const a = A{
|
||||
\\ .x = if (f1())
|
||||
\\ 10
|
||||
\\ else
|
||||
\\ 20,
|
||||
\\};
|
||||
\\const a = A{ .x = switch (g) {
|
||||
\\ 0 => "ok",
|
||||
\\ else => "no",
|
||||
\\} };
|
||||
\\const a = A{
|
||||
\\ .x = switch (g) {
|
||||
\\ 0 => "ok",
|
||||
\\ else => "no",
|
||||
\\ },
|
||||
\\};
|
||||
\\
|
||||
);
|
||||
}
|
||||
|
||||
test "zig fmt: multiline string with backslash at end of line" {
|
||||
try testCanonical(
|
||||
\\comptime {
|
||||
|
||||
Reference in New Issue
Block a user