Mercurial > emacs
changeset 4049:7908fc6e4fb9
(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.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 09 Jul 1993 06:33:05 +0000 |
parents | 26b434331fce |
children | 0439eaf6f94a |
files | lisp/emacs-lisp/bytecomp.el |
diffstat | 1 files changed, 10 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/bytecomp.el Fri Jul 09 04:04:39 1993 +0000 +++ b/lisp/emacs-lisp/bytecomp.el Fri Jul 09 06:33:05 1993 +0000 @@ -1589,7 +1589,8 @@ (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 @@ (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))))