diff options
Diffstat (limited to 'module/ice-9/psyntax.scm')
-rw-r--r-- | module/ice-9/psyntax.scm | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm index 72a3c3f16..e6eaf9384 100644 --- a/module/ice-9/psyntax.scm +++ b/module/ice-9/psyntax.scm @@ -1206,7 +1206,14 @@ (if rib (cons rib (cons 'shift s)) (cons 'shift s))) - (cons 'hygiene (module-name (procedure-module p)))))))) ;; hither the hygiene + (let ((pmod (procedure-module p))) + (if pmod + ;; hither the hygiene + (cons 'hygiene (module-name pmod)) + ;; but it's possible for the proc to have + ;; no mod, if it was made before modules + ;; were booted + '(hygiene guile)))))))) ((vector? x) (let* ((n (vector-length x)) (v (make-vector n))) (do ((i 0 (fx+ i 1))) |