~ chicken-core (chicken-5) 06a82e81257984cf551df320ce17042292983046


commit 06a82e81257984cf551df320ce17042292983046
Author:     felix <felix@call-with-current-continuation.org>
AuthorDate: Sun Nov 12 12:42:54 2023 +0100
Commit:     Peter Bex <peter@more-magic.net>
CommitDate: Mon Nov 13 08:39:13 2023 +0100

    Avoid loop when looking up alias when canonicalizing body
    
    Signed-off-by: Peter Bex <peter@more-magic.net>

diff --git a/expand.scm b/expand.scm
index 67ddf228..ec94086a 100644
--- a/expand.scm
+++ b/expand.scm
@@ -469,7 +469,9 @@
           (let ((f (or (lookup id se)
                        (lookup id (##sys#macro-environment)))))
             (or (eq? f def)
-                (and (symbol? f) (repeat f)))))))
+                (and (symbol? f)
+                     (not (eq? f id))
+                     (repeat f)))))))
     (define comp-define (comp-def define-definition))
     (define comp-define-syntax (comp-def define-syntax-definition))
     (define comp-define-values (comp-def define-values-definition))
Trap