From 12821ebf0d0a080ee79e8c720c41a9460a9523f6 Mon Sep 17 00:00:00 2001 From: Peter Bex Date: Sat, 14 Oct 2017 11:57:32 +0200 Subject: [PATCH] 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. --- chicken-ffi-syntax.scm | 3 ++- library.scm | 9 --------- 2 files changed, 2 insertions(+), 10 deletions(-) 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) -- 2.11.0