From 8722e226a9c745c7879f21bb6bdd68710c4207d4 Mon Sep 17 00:00:00 2001 From: Toni Date: Tue, 8 Jul 2025 14:57:17 +0200 Subject: [PATCH] fix listdir --- README.md | 4 ++-- src/codegen_x86_64.rs | 2 ++ test.zr | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 78a1591..9325959 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,9 @@ A very cool language ## Huh? -* Indentation-based syntax +* Clean indentation-based syntax * Compiles to x86_64 Assembly -* Sometimes works +* Almost works ## Syntax ```rust diff --git a/src/codegen_x86_64.rs b/src/codegen_x86_64.rs index dd59e16..f0b0541 100644 --- a/src/codegen_x86_64.rs +++ b/src/codegen_x86_64.rs @@ -210,7 +210,9 @@ _builtin_listdir: call strdup mov rsi, rax mov rdi, rbx + mov [rsp], rbx call Array.push + mov rbx, [rsp] jmp ._builtin_listdir.1 ._builtin_listdir.3: mov rdi, r14 diff --git a/test.zr b/test.zr index f53eb54..cd8e68b 100644 --- a/test.zr +++ b/test.zr @@ -11,7 +11,7 @@ func run_test[x: String] : Void printf(" %ldms\n", build_end_time - build_start_time) if strcmp(x, "guess_number.zr") == 0 || strcmp(x, "tcp_server.zr") == 0 - printf("\033[93mSkipping %s...\033[0m\n") + printf("\033[93mSkipping %s...\033[0m\n", x) else let run_start_time: I64 = OS.time() if system("./out") != 0