diff --git a/src/translate_c/ast.zig b/src/translate_c/ast.zig index 99d198c995..7b54d6a8bb 100644 --- a/src/translate_c/ast.zig +++ b/src/translate_c/ast.zig @@ -2407,13 +2407,13 @@ fn renderFunc(c: *Context, node: Node) !NodeIndex { }); }; - const body = if (payload.body) |some| - try renderNode(c, some) - else if (payload.is_extern) blk: { - _ = try c.addToken(.semicolon, ";"); - break :blk 0; - } else return fn_proto; - + const payload_body = payload.body orelse { + if (payload.is_extern) { + _ = try c.addToken(.semicolon, ";"); + } + return fn_proto; + }; + const body = try renderNode(c, payload_body); return c.addNode(.{ .tag = .fn_decl, .main_token = fn_token, diff --git a/test/translate_c.zig b/test/translate_c.zig index 6eb23201e5..fe89e073c9 100644 --- a/test/translate_c.zig +++ b/test/translate_c.zig @@ -3117,7 +3117,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void { \\} }); - // TODO fix zig fmt here + // TODO fix zig fmt here - it incorrectly inserts an additional indentation + // level inside blk_1. // cases.add("nested assignment", // \\int foo(int *p, int x) { // \\ return *p++ = x;