Hi,
I believe the test case "Auxiliary definitions in custom macro
transformers" is incorrect. The
definition of the test is the following:
(define-syntax my-macro-transformer
(syntax-rules ()
((my-macro-transformer)
(begin (define foo 2)
(syntax-rules ()
((_) foo))))))
(letrec-syntax ((foo (my-macro-transformer)))
(foo))
However this would be expanded to like this:
(letrec-syntax ((foo (begin (define foo 2)
(syntax-rules ()
((_) foo)))))
(foo))
I think the correct definition of my-macro-transformer should be like this:
(define-syntax my-macro-transformer
(syntax-rules ()
((my-macro-transformer)
(syntax-rules ()
((_)
(begin
(define foo 2)
foo))))))
Cheers,
--
_/_/
Takashi Kato
E-mail: ktakashi19@gmail.com