(define-syntax foo (ir-macro-transformer (lambda (e i c) (print "--") (print "e\t " e) (print "(i e)\t "(i e)) `(begin)))) (begin-for-syntax (print "without module")) (foo (bar foo baz a)) (foo (bar foo baz 'a)) (module irtest-foo * (import chicken scheme) (define-syntax foo (ir-macro-transformer (lambda (e i c) (print "--") (print "e\t " e) (print "(i e)\t "(i e)) `(begin))))) (import irtest-foo) (begin-for-syntax (print "with module")) (foo (bar foo baz a)) (foo (bar foo baz 'a)) ;; without module ;; -- ;; e (foo28 (bar29 foo28 baz30 a31)) ;; (i e) (foo (bar foo baz a)) <--- OK ;; -- ;; e (foo33 (bar34 foo33 baz35 (quote36 a37))) ;; (i e) (foo (bar foo baz (quote a))) <--- OK ;; with module ;; -- ;; e (foo57 (bar58 foo57 baz59 a60)) ;; (i e) (foo5761 (bar foo5761 baz a)) <--- ?????????? ;; -- ;; e (foo63 (bar64 foo63 baz65 (quote66 a67))) ;; (i e) (foo6368 (bar foo6368 baz (quote6669 a))) <--- ??????????