A trivial optimization and a formatting fix
* lisp/subr.el (internal--compiler-macro-cXXr): Re-use `head' for `n'. Fix indentation and line length.
This commit is contained in:
@@ -540,12 +540,12 @@ i.e., subtract 2 * `most-negative-fixnum' from VALUE before shifting it."
|
||||
;; you may want to amend the other, too.
|
||||
(defun internal--compiler-macro-cXXr (form x)
|
||||
(let* ((head (car form))
|
||||
(n (symbol-name (car form)))
|
||||
(n (symbol-name head))
|
||||
(i (- (length n) 2)))
|
||||
(if (not (string-match "c[ad]+r\\'" n))
|
||||
(if (and (fboundp head) (symbolp (symbol-function head)))
|
||||
(internal--compiler-macro-cXXr (cons (symbol-function head) (cdr form))
|
||||
x)
|
||||
(internal--compiler-macro-cXXr
|
||||
(cons (symbol-function head) (cdr form)) x)
|
||||
(error "Compiler macro for cXXr applied to non-cXXr form"))
|
||||
(while (> i (match-beginning 0))
|
||||
(setq x (list (if (eq (aref n i) ?a) 'car 'cdr) x))
|
||||
|
||||
Reference in New Issue
Block a user