emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-24 r117593: * lisp/emacs-lisp/bytecomp.el (=, <, >,


From: Stefan Monnier
Subject: [Emacs-diffs] emacs-24 r117593: * lisp/emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-arg
Date: Mon, 20 Oct 2014 02:36:28 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117593
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18767
committer: Stefan Monnier <address@hidden>
branch nick: emacs-24
timestamp: Sun 2014-10-19 22:36:22 -0400
message:
  * lisp/emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-arg
  case.
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/emacs-lisp/bytecomp.el    bytecomp.el-20091113204419-o5vbwnq5f7feedwu-492
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2014-10-15 15:23:27 +0000
+++ b/lisp/ChangeLog    2014-10-20 02:36:22 +0000
@@ -1,3 +1,8 @@
+2014-10-20  Stefan Monnier  <address@hidden>
+
+       * emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-arg
+       case (bug#18767).
+
 2014-10-15  Alan Mackenzie  <address@hidden>
 
        * cus-edit.el (custom-command-apply): Specify the return value in

=== modified file 'lisp/emacs-lisp/bytecomp.el'
--- a/lisp/emacs-lisp/bytecomp.el       2014-03-14 00:32:41 +0000
+++ b/lisp/emacs-lisp/bytecomp.el       2014-10-20 02:36:22 +0000
@@ -3261,11 +3261,11 @@
 (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)
@@ -3332,6 +3332,7 @@
 (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)))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]