From 4f39d095cb8c377d2f0220c0f53aaea2b5dcbd19 Mon Sep 17 00:00:00 2001 From: Mikael Djurfeldt Date: Mon, 24 Sep 2001 11:13:43 +0000 Subject: [PATCH] * boot-9.scm (process-define-module): Added :re-export. --- ice-9/ChangeLog | 4 ++++ ice-9/boot-9.scm | 26 +++++++++++++++++++------- 2 files changed, 23 insertions(+), 7 deletions(-) diff --git a/ice-9/ChangeLog b/ice-9/ChangeLog index 11cdc20a6..c46e5a8ed 100644 --- a/ice-9/ChangeLog +++ b/ice-9/ChangeLog @@ -1,3 +1,7 @@ +2001-09-24 Mikael Djurfeldt + + * boot-9.scm (process-define-module): Added :re-export. + 2001-09-19 Thien-Thi Nguyen * expect.scm: Commentary fix; nfc. diff --git a/ice-9/boot-9.scm b/ice-9/boot-9.scm index 708cb072c..8a55f3de4 100644 --- a/ice-9/boot-9.scm +++ b/ice-9/boot-9.scm @@ -1735,13 +1735,15 @@ (beautify-user-module! module) (let loop ((kws kws) (reversed-interfaces '()) - (exports '())) + (exports '()) + (re-exports '())) (if (null? kws) (begin (for-each (lambda (interface) (module-use! module interface)) (reverse reversed-interfaces)) - (module-export! module exports)) + (module-export! module exports) + (module-re-export! module re-exports)) (case (car kws) ((#:use-module #:use-syntax) (or (pair? (cdr kws)) @@ -1759,7 +1761,8 @@ #f))) (loop (cddr kws) (cons interface reversed-interfaces) - exports))) + exports + re-exports))) ((#:autoload) (or (and (pair? (cdr kws)) (pair? (cddr kws))) (unrecognized kws)) @@ -1768,19 +1771,28 @@ (cadr kws) (caddr kws)) reversed-interfaces) - exports)) + exports + re-exports)) ((#:no-backtrace) (set-system-module! module #t) - (loop (cdr kws) reversed-interfaces exports)) + (loop (cdr kws) reversed-interfaces exports re-exports)) ((#:pure) (purify-module! module) - (loop (cdr kws) reversed-interfaces exports)) + (loop (cdr kws) reversed-interfaces exports re-exports)) ((#:export) (or (pair? (cdr kws)) (unrecognized kws)) (loop (cddr kws) reversed-interfaces - (append (cadr kws) exports))) + (append (cadr kws) exports) + re-exports)) + ((#:re-export) + (or (pair? (cdr kws)) + (unrecognized kws)) + (loop (cddr kws) + reversed-interfaces + exports + (append (cadr kws) re-exports))) (else (unrecognized kws))))) module))