~ chicken-core (master) ae88ee8027bcd2b90aba6f2a6a2d4ffb6bb176f5
commit ae88ee8027bcd2b90aba6f2a6a2d4ffb6bb176f5
Author: felix <felix@call-with-current-continuation.org>
AuthorDate: Thu Sep 24 14:36:46 2026 +0200
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Thu Sep 24 14:36:46 2026 +0200
remove dependency on lolevel module by using inline code
diff --git a/file.scm b/file.scm
index a672d541..b2112346 100644
--- a/file.scm
+++ b/file.scm
@@ -35,7 +35,7 @@
(declare
(unit file)
- (uses extras irregex lolevel pathname posix)
+ (uses extras irregex pathname posix)
(fixnum)
(disable-interrupts)
(foreign-declare #<<EOF
@@ -140,7 +140,6 @@ EOF
chicken.foreign
chicken.io
chicken.irregex
- chicken.memory.representation
chicken.pathname
chicken.process-context)
@@ -369,7 +368,7 @@ EOF
(if (file-exists? pn)
(loop)
(call-with-output-file pn (lambda (p) pn)))))
- (let* ((n (number-of-bytes ext))
+ (let* ((n (fx- (##sys#size (##sys#slot ext 0)) 1))
;; Account for the added dot.
(n (if (fx= n 0) 0 (fx+ n 1)))
(pn (make-pathname
diff --git a/rules.make b/rules.make
index a0537062..85111a3e 100644
--- a/rules.make
+++ b/rules.make
@@ -791,7 +791,6 @@ file.c: file.scm \
chicken.io.import.scm \
chicken.irregex.import.scm \
chicken.foreign.import.scm \
- chicken.memory.representation.import.scm \
chicken.pathname.import.scm \
chicken.process-context.import.scm
lolevel.c: lolevel.scm \
Trap