mirror of
https://github.com/ziglang/zig.git
synced 2026-01-05 21:13:24 +00:00
parent
d96dd5bc32
commit
bb80daf509
@ -490,7 +490,10 @@ static void render_node_extra(AstRender *ar, AstNode *node, bool grouped) {
|
||||
AstNode *statement = node->data.block.statements.at(i);
|
||||
print_indent(ar);
|
||||
render_node_grouped(ar, statement);
|
||||
fprintf(ar->f, ";");
|
||||
|
||||
if (!statement_terminates_without_semicolon(statement))
|
||||
fprintf(ar->f, ";");
|
||||
|
||||
fprintf(ar->f, "\n");
|
||||
}
|
||||
ar->indent -= ar->indent_size;
|
||||
|
||||
@ -2315,7 +2315,7 @@ static AstNode *ast_parse_expression(ParseContext *pc, size_t *token_index, bool
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
static bool statement_terminates_without_semicolon(AstNode *node) {
|
||||
bool statement_terminates_without_semicolon(AstNode *node) {
|
||||
switch (node->type) {
|
||||
case NodeTypeIfBoolExpr:
|
||||
if (node->data.if_bool_expr.else_node)
|
||||
|
||||
@ -23,4 +23,6 @@ void ast_print(AstNode *node, int indent);
|
||||
|
||||
void ast_visit_node_children(AstNode *node, void (*visit)(AstNode **, void *context), void *context);
|
||||
|
||||
bool statement_terminates_without_semicolon(AstNode *node);
|
||||
|
||||
#endif
|
||||
|
||||
@ -351,7 +351,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ var i: c_int = 0;
|
||||
\\ while (a > c_uint(0)) {
|
||||
\\ a >>= @import("std").math.Log2Int(c_uint)(1);
|
||||
\\ };
|
||||
\\ }
|
||||
\\ return i;
|
||||
\\}
|
||||
);
|
||||
@ -498,7 +498,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ var i: c_int = 0;
|
||||
\\ while (a > c_uint(0)) {
|
||||
\\ a >>= u5(1);
|
||||
\\ };
|
||||
\\ }
|
||||
\\ return i;
|
||||
\\}
|
||||
);
|
||||
@ -867,12 +867,12 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ while (true) {
|
||||
\\ a -= 1;
|
||||
\\ if (!(a != 0)) break;
|
||||
\\ };
|
||||
\\ }
|
||||
\\ var b: c_int = 2;
|
||||
\\ while (true) {
|
||||
\\ b -= 1;
|
||||
\\ if (!(b != 0)) break;
|
||||
\\ };
|
||||
\\ }
|
||||
\\}
|
||||
);
|
||||
|
||||
@ -962,8 +962,8 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\pub fn foo() void {
|
||||
\\ {
|
||||
\\ var i: c_int = 0;
|
||||
\\ while (i < 10) : (i += 1) {};
|
||||
\\ };
|
||||
\\ while (i < 10) : (i += 1) {}
|
||||
\\ }
|
||||
\\}
|
||||
);
|
||||
|
||||
@ -973,7 +973,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\}
|
||||
,
|
||||
\\pub fn foo() void {
|
||||
\\ while (true) {};
|
||||
\\ while (true) {}
|
||||
\\}
|
||||
);
|
||||
|
||||
@ -987,7 +987,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\pub fn foo() void {
|
||||
\\ while (true) {
|
||||
\\ break;
|
||||
\\ };
|
||||
\\ }
|
||||
\\}
|
||||
);
|
||||
|
||||
@ -1001,7 +1001,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\pub fn foo() void {
|
||||
\\ while (true) {
|
||||
\\ continue;
|
||||
\\ };
|
||||
\\ }
|
||||
\\}
|
||||
);
|
||||
|
||||
@ -1058,7 +1058,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ {
|
||||
\\ var x_0: c_int = 2;
|
||||
\\ x_0 += 1;
|
||||
\\ };
|
||||
\\ }
|
||||
\\ return x;
|
||||
\\}
|
||||
);
|
||||
@ -1147,7 +1147,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ return 0;
|
||||
\\ } else {
|
||||
\\ return 1;
|
||||
\\ };
|
||||
\\ }
|
||||
\\}
|
||||
);
|
||||
|
||||
@ -1164,7 +1164,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ break :__to_bool_expr @bitCast(@IntType(false, @sizeOf(@typeOf(_tmp)) * 8), _tmp) != 0;
|
||||
\\ }) {
|
||||
\\ return 0;
|
||||
\\ };
|
||||
\\ }
|
||||
\\}
|
||||
);
|
||||
|
||||
@ -1185,7 +1185,7 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ break :__to_bool_expr @bitCast(@IntType(false, @sizeOf(@typeOf(_tmp)) * 8), _tmp) != 0;
|
||||
\\ }) {
|
||||
\\ return 0;
|
||||
\\ };
|
||||
\\ }
|
||||
\\ {
|
||||
\\ var j: c_int = 4;
|
||||
\\ while (__to_bool_expr: {
|
||||
@ -1193,8 +1193,8 @@ pub fn addCases(cases: &tests.TranslateCContext) void {
|
||||
\\ break :__to_bool_expr @bitCast(@IntType(false, @sizeOf(@typeOf(_tmp)) * 8), _tmp) != 0;
|
||||
\\ }) : (j -= 1) {
|
||||
\\ return 0;
|
||||
\\ };
|
||||
\\ };
|
||||
\\ }
|
||||
\\ }
|
||||
\\}
|
||||
);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user