diff options
author | Richard M. Stallman <rms@gnu.org> | 1993-07-09 06:33:05 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1993-07-09 06:33:05 +0000 |
commit | ca38179a7428456b4f41c3c21ff682c71c0b29a0 (patch) | |
tree | 77f28c7f77a1e2c8adfd431c48c13d27dcf4a4a5 /lisp/emacs-lisp/bytecomp.el | |
parent | 07a9765faacac296d46d89f264a6cca21fbe5fb5 (diff) | |
download | emacs-ca38179a7428456b4f41c3c21ff682c71c0b29a0.tar.gz emacs-ca38179a7428456b4f41c3c21ff682c71c0b29a0.tar.bz2 emacs-ca38179a7428456b4f41c3c21ff682c71c0b29a0.zip |
(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.
Diffstat (limited to 'lisp/emacs-lisp/bytecomp.el')
-rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 6bbe1eba7e7..7364f8803df 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -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)))) |