Function: cl--sm-macroexpand

cl--sm-macroexpand is a byte-compiled function defined in cl-macs.el.gz.

Signature

(cl--sm-macroexpand EXP &optional ENV)

Documentation

Special macro expander used inside cl-symbol-macrolet.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/cl-macs.el.gz
(defun cl--sm-macroexpand (exp &optional env)
  "Special macro expander used inside `cl-symbol-macrolet'."
  ;; FIXME: Arguably, this should be the official definition of `macroexpand'.
  (while (not (eq exp (setq exp (macroexpand-1 exp env)))))
  exp)