comparison lisp/mule/mule-cmds.el @ 5266:f9ec07abdbf9

Transform safe calls to (= X Y Z) to (and (= X Y) (= Y Z)); same for < > <= >= lisp/ChangeLog addition: 2010-09-16 Aidan Kehoe <kehoea@parhasard.net> * cl-macs.el (= < > <= >=): When these functions are handed more than two arguments, and those arguments have no side effects, transform to a series of two argument calls, avoiding funcall in the byte-compiled code. * mule/mule-cmds.el (finish-set-language-environment): Take advantage of this change in a function called 256 times at startup.
author Aidan Kehoe <kehoea@parhasard.net>
date Thu, 16 Sep 2010 14:31:40 +0100
parents 0b0241ae382f
children f00192e1cd49 308d34e9f07d
comparison
equal deleted inserted replaced
5265:5663ae9a8989 5266:f9ec07abdbf9
787 unicode-error-default-translation-table)) 787 unicode-error-default-translation-table))
788 (when unicode-error-lookup 788 (when unicode-error-lookup
789 (setq string (format "%c" unicode-error-lookup))) 789 (setq string (format "%c" unicode-error-lookup)))
790 ;; Treat control characters specially: 790 ;; Treat control characters specially:
791 (setq first-char (aref string 0)) 791 (setq first-char (aref string 0))
792 (when (or (and (>= first-char #x00) (<= first-char #x1f)) 792 (when (or (<= #x00 first-char #x1f) (<= #x80 first-char #x9f))
793 (and (>= first-char #x80) (<= first-char #x9f)))
794 (setq string (format "^%c" (+ ?@ (aref string 0)))))) 793 (setq string (format "^%c" (+ ?@ (aref string 0))))))
795 (setq glyph (make-glyph (vector 'string :data string))) 794 (setq glyph (make-glyph (vector 'string :data string)))
796 (set-glyph-face glyph 'unicode-invalid-sequence-warning-face) 795 (set-glyph-face glyph 'unicode-invalid-sequence-warning-face)
797 (put-char-table key glyph disp-table) 796 (put-char-table key glyph disp-table)
798 nil) 797 nil)