;;;; A node the macro built has no line; the leaves it built it from keep ;;;; theirs. ;;;; ;;;; flip does not splice a body, it assembles a new list out of its two ;;;; arguments. That list is the macro's own -- it is reported at the call -- ;;;; while nosuchname inside it is the author's form, spliced through ;;;; untouched, and is reported where it is written. (defmacro flip [a b] `(~b ~a)) (defn g [x i32] i32 x) (defn main [] i32 (flip nosuchname g) 0)