From 4a9dac7b9c9117a9ef553ae9f7c3250cd40ab32c Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Sat, 3 Nov 2001 22:15:05 +0000 Subject: [PATCH] . original commit: 2f7de086cea2d2de6a3ca9bd8c0c304a4cd05027 --- collects/mzlib/traceld.ss | 40 ++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/collects/mzlib/traceld.ss b/collects/mzlib/traceld.ss index 3845fb1..23065b9 100644 --- a/collects/mzlib/traceld.ss +++ b/collects/mzlib/traceld.ss @@ -17,27 +17,29 @@ (lambda () (set! tab (string-append " " tab))) (lambda () (if (regexp-match "_loader" filename) - (let ([f (load filename)]) - (lambda (sym expected-module) + (let ([f (load filename #f)]) + (lambda (sym) (fprintf ep "~atrying ~a's ~a~n" tab filename sym) - (let ([loader (f sym expected-module)]) - (and loader - (lambda () - (fprintf ep - "~astarting ~a's ~a at ~a~n" - tab filename sym - (current-process-milliseconds)) - (let ([s tab]) - (begin0 - (dynamic-wind - (lambda () (set! tab (string-append " " tab))) - (lambda () (loader)) - (lambda () (set! tab s))) - (fprintf ep - "~adone ~a's ~a at ~a~n" - tab filename sym - (current-process-milliseconds))))))))) + (let-values ([(loader provided-module) (f sym)]) + (values + (and loader + (lambda () + (fprintf ep + "~astarting ~a's ~a at ~a~n" + tab filename sym + (current-process-milliseconds)) + (let ([s tab]) + (begin0 + (dynamic-wind + (lambda () (set! tab (string-append " " tab))) + (lambda () (loader)) + (lambda () (set! tab s))) + (fprintf ep + "~adone ~a's ~a at ~a~n" + tab filename sym + (current-process-milliseconds)))))) + provided-module)))) (load filename expected-module))) (lambda () (set! tab s)))) (fprintf ep