~ chicken-core (chicken-5) 5193261cadd428bb2882546ade3be12088ea23e8
commit 5193261cadd428bb2882546ade3be12088ea23e8
Author: Peter Bex <peter@more-magic.net>
AuthorDate: Sat Oct 14 11:57:32 2017 +0200
Commit: Evan Hanson <evhan@foldling.org>
CommitDate: Mon Oct 16 09:11:26 2017 +1300
Kill temp hack for making gensym, add1 and sub1 globally available
Without the temp hack, we got segfaults due to these being unavailable
in chicken-ffi-syntax and it being declared with no-bound-checks and
no-procedure-checks. The reason they weren't available is because
chicken-ffi-syntax is compiled with -explicit-use, so we must import
chicken.base manually at the start.
Signed-off-by: Evan Hanson <evhan@foldling.org>
diff --git a/chicken-ffi-syntax.scm b/chicken-ffi-syntax.scm
index d78c2728..69808bf2 100644
--- a/chicken-ffi-syntax.scm
+++ b/chicken-ffi-syntax.scm
@@ -39,7 +39,8 @@
(no-bound-checks)
(no-procedure-checks))
-(import chicken.format
+(import chicken.base
+ chicken.format
chicken.string)
(include "common-declarations.scm")
diff --git a/library.scm b/library.scm
index 864d3032..5b55d5b4 100644
--- a/library.scm
+++ b/library.scm
@@ -5951,12 +5951,3 @@ EOF
(loop (##sys#slot ids 1))))))
) ; chicken.platform
-
-
-;; TODO: Figure out how to ensure chicken.base is always available at
-;; syntax expansion time. Related to #1131? This is a temporary
-;; workaround (go ahead, laugh....) so at least macros have gensym,
-;; add1 and so on available without needing (import (chicken base)):
-(define gensym chicken.base#gensym)
-(define add1 chicken.base#add1)
-(define sub1 chicken.base#sub1)
Trap