;;; Used by make-obsolete.
(defun byte-compile-obsolete (form)
(let* ((new (get (car form) 'byte-obsolete-info))
+ (use (car new))
(handler (nth 1 new))
(when (nth 2 new)))
(byte-compile-set-symbol-position (car form))
(if (byte-compile-warning-enabled-p 'obsolete)
- (byte-compile-warn "`%s' is an obsolete function%s; %s" (car form)
+ (byte-compile-warn "`%s' is an obsolete function%s%s" (car form)
(if when (concat " (as of Emacs " when ")") "")
- (if (stringp (car new))
- (car new)
- (format "use `%s' instead." (car new)))))
+ (cond ((stringp use)
+ (concat "; " use))
+ (use (format "; use `%s' instead." use))
+ (t "."))))
(funcall (or handler 'byte-compile-normal-call) form)))
\f
;; Compiler options