下面这个宏, 展开后, message打印一行会丢失, 这是什么原理?
(defmacro test-macro1 (arg &rest body)
(declare (indent 1))
`(message "arg: %s" ,arg)
`(progn
,@body))
(macroexpand '(test-macro1 123 (eobp)))
展开后结果:
(progn (eobp))
有点出乎意料, 对宏了解不深, 只是简单使用, 这个情况是正常的吗?