summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/bytecomp.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2014-10-20 20:59:41 +0100
committerGlenn Morris <rgm@gnu.org>2014-10-20 20:59:41 +0100
commit8a85c254de2528be0f3ff154fa24df65e6557c1a (patch)
treedfc704abfcaf816f3be832097805523536347a43 /lisp/emacs-lisp/bytecomp.el
parent9d9bcb5020987f07dd2b9ab994f8826c07182829 (diff)
parentd20b72d9fa987ea9a511c6bed909c09929dc78f8 (diff)
downloademacs-8a85c254de2528be0f3ff154fa24df65e6557c1a.tar.gz
Merge from emacs-24; up to 2014-07-28T06:28:15Z!dmantipov@yandex.ru
Diffstat (limited to 'lisp/emacs-lisp/bytecomp.el')
-rw-r--r--lisp/emacs-lisp/bytecomp.el11
1 files changed, 6 insertions, 5 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 0e96ba93f44..264539e03a7 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -3285,11 +3285,11 @@ If it is nil, then the handler is \"byte-compile-SYMBOL.\""
(byte-defop-compiler cons 2)
(byte-defop-compiler aref 2)
(byte-defop-compiler set 2)
-(byte-defop-compiler (= byte-eqlsign) 2-and)
-(byte-defop-compiler (< byte-lss) 2-and)
-(byte-defop-compiler (> byte-gtr) 2-and)
-(byte-defop-compiler (<= byte-leq) 2-and)
-(byte-defop-compiler (>= byte-geq) 2-and)
+(byte-defop-compiler (= byte-eqlsign) 2) ;; -and bug#18767
+(byte-defop-compiler (< byte-lss) 2) ;; -and bug#18767
+(byte-defop-compiler (> byte-gtr) 2) ;; -and bug#18767
+(byte-defop-compiler (<= byte-leq) 2) ;; -and bug#18767
+(byte-defop-compiler (>= byte-geq) 2) ;; -and bug#18767
(byte-defop-compiler get 2)
(byte-defop-compiler nth 2)
(byte-defop-compiler substring 2-3)
@@ -3356,6 +3356,7 @@ If it is nil, then the handler is \"byte-compile-SYMBOL.\""
(defun byte-compile-and-folded (form)
"Compile calls to functions like `<='.
These implicitly `and' together a bunch of two-arg bytecodes."
+ ;; FIXME: bug#18767 means we can't do it this way!
(let ((l (length form)))
(cond
((< l 3) (byte-compile-form `(progn ,(nth 1 form) t)))