From: Richard M. S. <rm...@gn...> - 2005-12-26 18:43:48
|
This defalias gives it nil as a function definition if the unless condition is true. This does not seem right. Would you please fix it? Comments suggest that these definitions are intended for Emacs versions before Emacs 21. Since those are all rather old, how about desupporting them? Could that gain a simplification here? Meanwhile, I fixed a bug in this file, which caused an error if it is loaded when there is narrowing (as happens in Custom). ;; `c-clear-char-property' is complex enough in Emacs < 21 to make it ;; a function, since we have to mess with the `rear-nonsticky' property. (defalias 'c-clear-char-property-fun (cc-eval-when-compile (unless (or c-use-extents (cc-bytecomp-boundp 'text-property-default-nonsticky)) (byte-compile (lambda (pos property) (when (get-text-property pos property) (remove-text-properties pos (1+ pos) (list property nil)) (put-text-property pos (1+ pos) 'rear-nonsticky (delq property (get-text-property pos 'rear-nonsticky))))))))) (cc-bytecomp-defun c-clear-char-property-fun) ; Make it known below. |