Suppose I have defined the following macro:
(defmacro mymacro (a) "" (eval a))
If I then use
C-x C-e) to evaluate the following,
(defun somefcn (b) "" (mymacro b))
I get the error
(void-variable b). However, if I evaluate the definition another way (e.g. using
eval-expression), it evaluates fine and works fine.
Note that the following expression evaluates without a problem
(defun somefcn (a) "" (mymacro a))
What is going on?