mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-12 16:23:57 +00:00
(byte-compile-setq-default):
Generate a progn of calls to set-default, then compile it. (byte-compile-file-form-defmumble): Put back second arg of byte-compile-keep-pending, accidentally deleted before.
This commit is contained in:
parent
07a9765faa
commit
ca38179a74
@ -1589,7 +1589,8 @@ With argument, insert value in current buffer after the form."
|
||||
(list 'cons ''macro code))
|
||||
((list 'quote (if macrop
|
||||
(cons 'macro new-one)
|
||||
new-one))))))
|
||||
new-one)))))
|
||||
'byte-compile-two-args)
|
||||
;; Output the form by hand, that's much simpler than having
|
||||
;; b-c-output-file-form analyze the defalias.
|
||||
(byte-compile-flush-pending)
|
||||
@ -2420,15 +2421,14 @@ If FORM is a lambda or a macro, byte-compile it as a function."
|
||||
(setq for-effect nil)))
|
||||
|
||||
(defun byte-compile-setq-default (form)
|
||||
(let ((args (cdr form)))
|
||||
(if args
|
||||
(while args
|
||||
(byte-compile-form
|
||||
(list 'set-default (list 'quote (car args)) (car (cdr args))))
|
||||
(setq args (cdr (cdr args))))
|
||||
;; (setq-default), with no arguments.
|
||||
(byte-compile-form nil for-effect))
|
||||
(setq for-effect nil)))
|
||||
(let ((args (cdr form))
|
||||
setters)
|
||||
(while args
|
||||
(setq setters
|
||||
(cons (list 'set-default (list 'quote (car args)) (car (cdr args)))
|
||||
setters))
|
||||
(setq args (cdr (cdr args))))
|
||||
(byte-compile-form (cons 'progn (nreverse setters)))))
|
||||
|
||||
(defun byte-compile-quote (form)
|
||||
(byte-compile-constant (car (cdr form))))
|
||||
|
Loading…
Reference in New Issue
Block a user