~ chicken-core (chicken-5) /tests/test-line-numbers.scm
Trap1(define-syntax bar
2 (er-macro-transformer
3 (lambda (e inj cmp) (get-line-number (cadr e)))))
4
5(define-syntax foo
6 (ir-macro-transformer
7 (lambda (e inj cmp) (get-line-number (cadr e)))))
8
9(assert (equal? "test-line-numbers.scm:9" (the * (foo (hello-ir)))))
10(assert (equal? "test-line-numbers.scm:10" (the * (bar (hello-er)))))
11
12(define-syntax baz
13 (ir-macro-transformer
14 (lambda (e inj cmp)
15 (cadr e))))
16
17(define (f)
18 (baz
19 (+ 'a)))