From fa02dc97367fed2b487f53877ce3879d1769682b Mon Sep 17 00:00:00 2001 From: gingerBill Date: Thu, 11 Feb 2021 10:15:58 +0000 Subject: [PATCH] Fix #840 --- core/odin/parser/parser.odin | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/odin/parser/parser.odin b/core/odin/parser/parser.odin index e5d74f049..fab822e1e 100644 --- a/core/odin/parser/parser.odin +++ b/core/odin/parser/parser.odin @@ -150,7 +150,7 @@ parse_file :: proc(p: ^Parser, file: ^ast.File) -> bool { switch name := pkg_name.text; { case is_blank_ident(name): error(p, pkg_name.pos, "invalid package name '_'"); - case is_package_name_reserved(name), file.pkg.kind != .Runtime && name == "runtime": + case is_package_name_reserved(name), file.pkg != nil && file.pkg.kind != .Runtime && name == "runtime": error(p, pkg_name.pos, "use of reserved package name '%s'", name); } } @@ -3070,7 +3070,7 @@ parse_binary_expr :: proc(p: ^Parser, lhs: bool, prec_in: int) -> ^ast.Expr { if expr == nil { return ast.new(ast.Bad_Expr, start_pos, end_pos(p.prev_tok)); } - + for prec := token_precedence(p, p.curr_tok.kind); prec >= prec_in; prec -= 1 { for { op := p.curr_tok;