summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2002-12-13 19:52:46 +0000
committerStefan Monnier <monnier@iro.umontreal.ca>2002-12-13 19:52:46 +0000
commite8f3c355cf98d3df5054ad1f277fc053ce65870e (patch)
treebcfe7ecf27279a5f2490a465be22481956d45592 /lisp/emacs-lisp
parent8b374c3fd77fb0c798ba434a04be7abc646985bc (diff)
downloademacs-e8f3c355cf98d3df5054ad1f277fc053ce65870e.tar.gz
emacs-e8f3c355cf98d3df5054ad1f277fc053ce65870e.tar.bz2
emacs-e8f3c355cf98d3df5054ad1f277fc053ce65870e.zip
(byte-optimize-form-code-walker):
Optimize the remaining part of for-effect and/or expressions.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/byte-opt.el4
1 files changed, 3 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el
index 2e29e467d92..8a44ea020f3 100644
--- a/lisp/emacs-lisp/byte-opt.el
+++ b/lisp/emacs-lisp/byte-opt.el
@@ -467,7 +467,7 @@
(byte-compile-log
" all subforms of %s called for effect; deleted" form))
(and backwards
- (cons fn (nreverse backwards))))
+ (cons fn (nreverse (mapcar 'byte-optimize-form backwards)))))
(cons fn (mapcar 'byte-optimize-form (cdr form)))))
((eq fn 'interactive)
@@ -1159,6 +1159,8 @@
(put 'featurep 'byte-optimizer 'byte-optimize-featurep)
(defun byte-optimize-featurep (form)
+ ;; Emacs-21's byte-code doesn't run under XEmacs anyway, so we can
+ ;; safely optimize away this test.
(if (equal '((quote xemacs)) (cdr-safe form))
nil
form))