about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBaitinq <[email protected]>2025-07-05 23:23:03 +0200
committerBaitinq <[email protected]>2025-07-05 23:23:03 +0200
commitd3ea9c73e5cc9070abbf66bf8834228c1e77d57a (patch)
tree8e8b06d5dd85a1ddeb60def21737951dd3a11622
parentBoostrap: Codegen for strings (diff)
downloadpry-lang-d3ea9c73e5cc9070abbf66bf8834228c1e77d57a.tar.gz
pry-lang-d3ea9c73e5cc9070abbf66bf8834228c1e77d57a.tar.bz2
pry-lang-d3ea9c73e5cc9070abbf66bf8834228c1e77d57a.zip
Boostrap: Get printf working
-rw-r--r--examples/-1.pry6
-rw-r--r--src/bootstrap/codegen.pry2
2 files changed, 3 insertions, 5 deletions
diff --git a/examples/-1.pry b/examples/-1.pry
index 03bac03..0f33c37 100644
--- a/examples/-1.pry
+++ b/examples/-1.pry
@@ -1,11 +1,9 @@
 /* HELLO! Welcome to the unnamed language */
 
-let putchar = () => i64 {
-	return 0;
-};
+extern printf = (*i8, varargs) => void;
 
 let main = () => i64 {
-	putchar();
+	printf("HELLO WORLD!\n");
 	return 7;
 };
 
diff --git a/src/bootstrap/codegen.pry b/src/bootstrap/codegen.pry
index a7b5c93..b920de4 100644
--- a/src/bootstrap/codegen.pry
+++ b/src/bootstrap/codegen.pry
@@ -498,7 +498,7 @@ let codegen_generate_function_call_statement = (c: *codegen, statement: *Node) =
 		};
 		/* TODO: Typecheck */
 
-		(*(arguments + cast(*LLVMValueRef, i))) = arg;
+		(*(arguments + cast(*LLVMValueRef, i))) = (*arg).value;
 
 		i = i + 1;
 	};