From 89d2927116ea7bee0f3cedfcf17bf32827697f4a Mon Sep 17 00:00:00 2001 From: Baitinq Date: Sat, 31 May 2025 23:26:13 +0200 Subject: Boostrap: Tokenizer: Fix allocation --- src/codegen.zig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/codegen.zig') diff --git a/src/codegen.zig b/src/codegen.zig index 152572f..30ef293 100644 --- a/src/codegen.zig +++ b/src/codegen.zig @@ -248,7 +248,7 @@ pub const CodeGen = struct { for (0.., function_call_statement.arguments) |i, argument| { const arg = try self.generate_expression_value(argument, null); - const expected_type = function.node_type.TYPE.FUNCTION_TYPE.parameters[i]; + const expected_type = function.node_type.TYPE.FUNCTION_TYPE.parameters[i]; //TODO: If varargs we shouldnt do this std.debug.print("2 TYP {s}: {any} vs {any}\n", .{ function_call_statement.expression.PRIMARY_EXPRESSION.IDENTIFIER.name, expected_type.TYPE, arg.node_type.TYPE }); std.debug.assert(self.compare_types(expected_type, arg.node_type, false)); try arguments.append(arg.value); @@ -1066,6 +1066,7 @@ const Environment = struct { } fn add_variable(self: *Environment, name: []const u8, variable: *Variable) !void { + // TODO: Dont allow shadowing if value != value or type != type (across things) try self.scope_stack.getLast().variables.put(name, variable); } -- cgit 1.4.1