From 9123414ee030289e61d13f5a8d0bb7a798ce5876 Mon Sep 17 00:00:00 2001 From: Dirk Herrmann Date: Sun, 24 Nov 2002 08:18:19 +0000 Subject: [PATCH] Thanks to Mikael Djurfeldt for a bugreport which led to the following changes: * slib.scm (%system-define): Removed. (define): Changed to use define-private instead of %system-define. * boot-9.scm (define-private): Undid my changes from 2002-11-16 until Guile supports hygienic macros. --- THANKS | 1 + ice-9/ChangeLog | 13 +++++++++++++ ice-9/boot-9.scm | 5 +++-- ice-9/slib.scm | 4 +--- 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/THANKS b/THANKS index 49d087118..f4cc95176 100644 --- a/THANKS +++ b/THANKS @@ -20,6 +20,7 @@ For fixes or providing information which led to a fix: Stephen Compall Brian Crowder Christopher Cramer + Mikael Djurfeldt Alexandre Duret-Lutz John W Eaton Clinton Ebadi diff --git a/ice-9/ChangeLog b/ice-9/ChangeLog index 26d7fd9d8..56b7e8891 100644 --- a/ice-9/ChangeLog +++ b/ice-9/ChangeLog @@ -1,3 +1,16 @@ +2002-11-24 Dirk Herrmann + + Thanks to Mikael Djurfeldt for a bugreport which led to the + following changes: + + * slib.scm (%system-define): Removed. + + (define): Changed to use define-private instead of + %system-define. + + * boot-9.scm (define-private): Undid my changes from 2002-11-16 + until Guile supports hygienic macros. + 2002-11-17 Neil Jerram * emacs.scm (emacs-load): Locally define `read-and-eval!', as it diff --git a/ice-9/boot-9.scm b/ice-9/boot-9.scm index f470020cf..7b07a6239 100644 --- a/ice-9/boot-9.scm +++ b/ice-9/boot-9.scm @@ -2591,8 +2591,9 @@ (else (error "use-syntax can only be used at the top level")))) -(defmacro define-private args - `(define ,@args)) +;; Dirk:FIXME:: This incorrect (according to R5RS) syntax needs to be changed +;; as soon as guile supports hygienic macros. +(define define-private define) (defmacro define-public args (define (syntax) diff --git a/ice-9/slib.scm b/ice-9/slib.scm index cde54c339..8b96989ee 100644 --- a/ice-9/slib.scm +++ b/ice-9/slib.scm @@ -269,14 +269,12 @@ (define offset-time +) -(define %system-define define) - (define define (procedure->memoizing-macro (lambda (exp env) (if (= (length env) 1) `(define-public ,@(cdr exp)) - `(%system-define ,@(cdr exp)))))) + `(define-private ,@(cdr exp)))))) ;;; Hack to make syncase macros work in the slib module (if (nested-ref the-root-module '(app modules ice-9 syncase))