From 3be74cbdc522ffc11da5b13160c70d8086d400fa Mon Sep 17 00:00:00 2001 From: Alexandros Naskos Date: Sun, 28 Jun 2020 16:08:15 +0300 Subject: [PATCH] Dont use variable decl init node blindly --- src/analysis.zig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/analysis.zig b/src/analysis.zig index bfb06f1..e042199 100644 --- a/src/analysis.zig +++ b/src/analysis.zig @@ -276,6 +276,7 @@ pub fn resolveVarDeclAlias(store: *DocumentStore, arena: *std.heap.ArenaAllocato if (decl.cast(ast.Node.VarDecl)) |var_decl| { if (var_decl.init_node == null) return null; if (handle.tree.token_ids[var_decl.mut_token] != .Keyword_const) return null; + if (var_decl.init_node == null) return null; const base_expr = var_decl.init_node.?; if (base_expr.cast(ast.Node.InfixOp)) |infix_op| { @@ -577,6 +578,7 @@ pub fn resolveTypeOfNodeInternal( bound_type_params, )) orelse break :block).instanceTypeVal(); } + if (vari.init_node == null) return null; return try resolveTypeOfNodeInternal(store, arena, .{ .node = vari.init_node.?, .handle = handle }, bound_type_params); },