diff --git a/collects/mzlib/cm-accomplice.ss b/collects/mzlib/cm-accomplice.ss index d9ceaa9..2320062 100644 --- a/collects/mzlib/cm-accomplice.ss +++ b/collects/mzlib/cm-accomplice.ss @@ -6,6 +6,9 @@ (complete-path? f)) (raise-type-error 'register-external-file "complete-path string" f)) (let ([param (lambda () void)]) + ;; Load the code in a separate thread, so that the dynamic + ;; extent of this one (likely a pase-sensitive macro expansion) + ;; doesn't pollute the load: (thread-wait (thread (lambda () (set! param diff --git a/collects/mzlib/cm.ss b/collects/mzlib/cm.ss index b5e77eb..903a64a 100644 --- a/collects/mzlib/cm.ss +++ b/collects/mzlib/cm.ss @@ -77,8 +77,8 @@ (let ([param ;; Avoid using cm while loading cm-ctime: (parameterize ([use-compiled-file-kinds 'none]) - (dynamic-require-for-syntax '(lib "cm-ctime.ss" "mzlib" "private") - 'current-external-file-registrar))] + (dynamic-require '(lib "cm-ctime.ss" "mzlib" "private") + 'current-external-file-registrar))] [external-deps null]) (let ((code (parameterize ([param (lambda (ext-file) (set! external-deps (cons ext-file external-deps)))])