From 79107f876ba9765e3a15b2c511b4e1e0fc1eafdd Mon Sep 17 00:00:00 2001 From: Luna Date: Fri, 20 Sep 2019 13:34:13 -0300 Subject: [PATCH 1/2] add semicolons after statements --- src/parsers.zig | 1 + 1 file changed, 1 insertion(+) diff --git a/src/parsers.zig b/src/parsers.zig index 5470b75..3542261 100644 --- a/src/parsers.zig +++ b/src/parsers.zig @@ -679,6 +679,7 @@ pub const Parser = struct { while (self.peek().typ != .RightBrace) { var stmt = try self.parseStmt(); printer.printNode(try self.mkStmt(stmt), 0); + _ = try self.consumeSingle(.Semicolon); try stmts.append(stmt.*); } From d69365ba9266d4817a9fa0dbebc1392f9e677b79 Mon Sep 17 00:00:00 2001 From: Luna Date: Fri, 20 Sep 2019 13:36:15 -0300 Subject: [PATCH 2/2] ast_printer: fix printing of func params --- src/ast_printer.zig | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ast_printer.zig b/src/ast_printer.zig index 4d45ad7..e818c00 100644 --- a/src/ast_printer.zig +++ b/src/ast_printer.zig @@ -48,20 +48,21 @@ pub fn printNode(node: *const Node, ident: usize) void { const typ = method.typ.lexeme; if (method.mutable) { - warn("(method mut {} {} {} {} ", vari, typ, name, ret_type); + warn("(method mut {} {} {} {} (", vari, typ, name, ret_type); } else { - warn("(method {} {} {} {} ", vari, typ, name, ret_type); + warn("(method {} {} {} {} (", vari, typ, name, ret_type); } } else { warn("(fn {} {} (", name, ret_type); } for (decl.params.toSlice()) |param| { - warn("({} {}) ", param.name.lexeme, param.typ.lexeme); + warn(" ({} {})", param.name.lexeme, param.typ.lexeme); } + warn(") "); printBlock(ident + 1, decl.body, false); - warn(")\n"); + warn("\n"); }, .ConstDecl => |consts| {