comparison lisp/bytecomp.el @ 5358:31475de17064

#'byte-compile-normal-call; only examine properties of (car FORM) if a symbol 2011-02-16 Aidan Kehoe <kehoea@parhasard.net> * bytecomp.el (byte-compile-normal-call): Check that the car of FORM is a symbol before examining its properties; it can be a lambda form if byte-optimize.el hasn't worked its magic and transformed such a lambda call into inline code.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 16 Feb 2011 18:26:40 +0000
parents 5dd1ba5e0113
children f00192e1cd49 e79980ee5efe
comparison
equal deleted inserted replaced
5357:503b9a3e5e46 5358:31475de17064
2886 (subsetp . 3) (subst . 4) (subst-if . 4) (subst-if-not . 4) 2886 (subsetp . 3) (subst . 4) (subst-if . 4) (subst-if-not . 4)
2887 (substitute . 4) (substitute-if . 4) (substitute-if-not . 4) 2887 (substitute . 4) (substitute-if . 4) (substitute-if-not . 4)
2888 (tree-equal . 3))) 2888 (tree-equal . 3)))
2889 2889
2890 (defun byte-compile-normal-call (form) 2890 (defun byte-compile-normal-call (form)
2891 (and (get (car form) 'byte-compile-keyword-start) 2891 (and (symbolp (car form)) (get (car form) 'byte-compile-keyword-start)
2892 (let ((plist (nthcdr (get (car form) 'byte-compile-keyword-start) 2892 (let ((plist (nthcdr (get (car form) 'byte-compile-keyword-start)
2893 form))) 2893 form)))
2894 (symbol-macrolet 2894 (symbol-macrolet
2895 ((not-present '#:not-present)) 2895 ((not-present '#:not-present))
2896 (if (not (valid-plist-p plist)) 2896 (if (not (valid-plist-p plist))