(mode-line-position, mode-line-modes): New variables.
(mode-line-format): Use mode-line-position for the part
that displays the position-in-buffer info. Use
mode-line-modes for the part that displays major and minor modes.
(make-face-bold, make-face-unbold, make-face-italic)
(make-face-unitalic, make-face-bold-italic, invert-face): Remove
trailing blank from the prompt passed to read-face-name.
(font-lock-defaults-alist): Don't define keywords for lisp languages.
Use `c-font-lock-syntactic-face-function' for c languages.
(font-lock-mode): Don't unset vars when turning the mode off.
(font-lock-default-fontify-buffer): Don't unset vars at the end.
(font-lock-extra-managed-props): New var.
(font-lock-default-unfontify-region): Use it.
(font-lock-apply-syntactic-highlight): Flush the syntax cache.
Don't eval the value when there's no match.
(font-lock-ppss-stats): New var.
(font-lock-ppss): New fun.
(font-lock-fontify-syntactically-region): Use it and syntax.ppss.
(font-lock-apply-highlight): Allow `highlight' to set several props.
(font-lock-set-defaults): Use dolist.
(font-lock-unset-defaults): Remove.
(font-lock-match-c-style-declaration-item-and-skip-to-next):
Try to recognize prototypes using `foo P_ ((args))'.
({c,c++,java,objc}-font-lock-keywords-{1,2,3}): Don't setq a defconst.
(c-font-lock-keywords-2): Fix last change to still use Anders' trick.
(c-font-lock-syntactic-face-function): New function.
(font-lock-match-c++-style-declaration-item-and-skip-to-next)
(c++-keywords): Use a more sophisticated regexp to handle
shallowly nested templates.
(artist-butlast-fn): New variable.
(artist-butlast): New function.
(artist-ellipse-mirror-quadrant): Use it.
(artist-mouse-draw-poly): Use nil for `point-list'.
(artist-mouse-draw-poly): Check for point-list being nil.