- changed status to resolved
expanding local macro during syntax-case compilation causes an error
Issue #15
resolved
This should be compiled without an error.
(let ()
(define-syntax foo
(syntax-rules ()
((_ ?atom ?stx ...)
(or (free-identifier=? ?atom ?stx) ...))))
(define-syntax bar
(syntax-rules ()
((_ ?atom ((?s ...) ?e ...) ... )
(cond ((foo ?atom (syntax ?s) ...) ?e ...) ... ))))
'ok)
The reason why this raises an error is that foo
will be expanded during compile-syntax-case
then subtemplate will be invalid.
Comments (1)
-
reporter - Log in to comment
Removed expand-local-macro and introduced retry in p1env-lookup (fixes
#15)→ <<cset 20dbf0ec4354>>