From 11409d5efa6c4547088f5e2f3c39399faa6fc764 Mon Sep 17 00:00:00 2001
From: Evan Hanson <evhan@foldling.org>
Date: Tue, 28 Sep 2021 09:27:07 +1300
Subject: [PATCH] Omit builtin-features from link files

---
 eval.scm | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/eval.scm b/eval.scm
index 9421e83d..31e6e31a 100644
--- a/eval.scm
+++ b/eval.scm
@@ -917,6 +917,11 @@
     irregex library lolevel pathname port posix profiler read-syntax
     repl scheduler srfi-4 tcp))
 
+(define-constant builtin-features
+  '(srfi-30 srfi-46 srfi-61 srfi-62                     ; runtime
+    srfi-0 srfi-2 srfi-8 srfi-9 srfi-11 srfi-15 srfi-16 ; syntax
+    srfi-17 srfi-26 srfi-31 srfi-55 srfi-87 srfi-88))   ; syntax cont
+
 (define-constant cygwin-default-dynamic-load-libraries '("cygchicken-0"))
 (define-constant macosx-load-library-extension ".dylib")
 (define-constant windows-load-library-extension ".dll")
@@ -934,16 +939,10 @@
 (define ##sys#load-dynamic-extension default-load-library-extension)
 
 (define (chicken.load#core-unit? id) ; used by batch-driver.scm
-  (or (memq id core-units)
+  (or (memq id builtin-features)
+      (memq id core-units)
       (assq id core-unit-requirements)))
 
-; these are actually in unit extras, but that is used by default
-
-(define-constant builtin-features
-  '(srfi-30 srfi-46 srfi-61 srfi-62                     ; runtime
-    srfi-0 srfi-2 srfi-8 srfi-9 srfi-11 srfi-15 srfi-16 ; syntax
-    srfi-17 srfi-26 srfi-31 srfi-55 srfi-87 srfi-88))   ; syntax cont
-
 (define default-dynamic-load-libraries
   (case (software-version)
     ((cygwin) cygwin-default-dynamic-load-libraries)
-- 
2.31.1

