From 98d8acfd4e6f264db3f096670dfc7751d1ceb6bc Mon Sep 17 00:00:00 2001 From: Ryan Culpepper Date: Mon, 31 Oct 2011 17:45:22 -0600 Subject: [PATCH] avoid including lazy-required names in (all-defined-out) closes PR 12335 --- collects/unstable/lazy-require.rkt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/collects/unstable/lazy-require.rkt b/collects/unstable/lazy-require.rkt index 6b4462c1f7..e4605dcbdc 100644 --- a/collects/unstable/lazy-require.rkt +++ b/collects/unstable/lazy-require.rkt @@ -18,8 +18,14 @@ (for/list ([name (in-list (syntax->list #'(name ...)))]) (unless (identifier? name) (raise-syntax-error #f "expected identifier" #'orig-stx name)) - #`(define #,name (make-lazy-function '#,name get-sym)))]) - ;; implicit quasiquote, so can use normal module-path syntax' + (with-syntax ([name name] + [(aux) (generate-temporaries (list name))]) + #`(begin (define aux (make-lazy-function 'name get-sym)) + (define-syntax name + (make-rename-transformer + (syntax-property (quote-syntax aux) + 'not-provide-all-defined #t))))))]) + ;; implicit quasiquote, so can use normal module-path syntax ;; or escape to compute a the module-path via expression #'(begin (define-runtime-module-path-index mpi-var (quasiquote modpath)) (define (get-sym sym)