about summary refs log tree commit diff
path: root/src/codegen.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/codegen.zig')
-rw-r--r--src/codegen.zig13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/codegen.zig b/src/codegen.zig
index 5733d5f..05cb877 100644
--- a/src/codegen.zig
+++ b/src/codegen.zig
@@ -426,6 +426,19 @@ pub const CodeGen = struct {
                 return try self.generate_function_call_statement(@ptrCast(fn_call));
             },
             .PRIMARY_EXPRESSION => |primary_expression| switch (primary_expression) {
+                .NULL => {
+                    return try self.generate_literal(llvm.LLVMConstNull(llvm.LLVMPointerType(llvm.LLVMInt8Type(), 0)), name, expression, try self.create_node(.{
+                        .TYPE = .{
+                            .POINTER_TYPE = .{
+                                .type = try self.create_node(.{
+                                    .TYPE = .{ .SIMPLE_TYPE = .{
+                                        .name = "i8",
+                                    } },
+                                }),
+                            },
+                        },
+                    }));
+                },
                 .NUMBER => |n| {
                     return try self.generate_literal(llvm.LLVMConstInt(llvm.LLVMInt64Type(), @intCast(n.value), 0), name, expression, try self.create_node(.{
                         .TYPE = .{