Mercurial > emacs
changeset 104586:2786934ea419
(byte-compile-eval): Fix test for cl in load-history for absolute file-names.
(byte-compile-file-form-require): Warn about use of the cl package.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Tue, 25 Aug 2009 07:28:16 +0000 |
parents | dc1af63f6b73 |
children | 169761687b63 |
files | lisp/ChangeLog lisp/emacs-lisp/bytecomp.el |
diffstat | 2 files changed, 12 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Tue Aug 25 07:05:47 2009 +0000 +++ b/lisp/ChangeLog Tue Aug 25 07:28:16 2009 +0000 @@ -4,6 +4,10 @@ 2009-08-25 Glenn Morris <rgm@gnu.org> + * emacs-lisp/bytecomp.el (byte-compile-eval): Fix test for cl in + load-history for absolute file-names. + (byte-compile-file-form-require): Warn about use of the cl package. + * format.el (format-alist): Doc fix. * play/bubbles.el (top-level): Don't require cl at run-time.
--- a/lisp/emacs-lisp/bytecomp.el Tue Aug 25 07:05:47 2009 +0000 +++ b/lisp/emacs-lisp/bytecomp.el Tue Aug 25 07:28:16 2009 +0000 @@ -902,8 +902,10 @@ (while (and hist-new (not (eq hist-new hist-orig))) (let ((xs (pop hist-new))) ;; Make sure the file was not already loaded before. - (when (and (equal (car xs) "cl") (not (assoc (car xs) hist-orig))) - (byte-compile-find-cl-functions))))))))) + (and (stringp (car xs)) + (string-match "^cl\\>" (file-name-nondirectory (car xs))) + (not (assoc (car xs) hist-orig)) + (byte-compile-find-cl-functions))))))))) (defun byte-compile-eval-before-compile (form) "Evaluate FORM for `eval-and-compile'." @@ -2322,8 +2324,10 @@ (let ((args (mapcar 'eval (cdr form)))) (apply 'require args) ;; Detect (require 'cl) in a way that works even if cl is already loaded. - (if (member (car args) '("cl" cl)) - (byte-compile-disable-warning 'cl-functions))) + (when (member (car args) '("cl" cl)) + (if (byte-compile-warning-enabled-p 'cl-functions) + (byte-compile-warn "cl package required at runtime")) + (byte-compile-disable-warning 'cl-functions))) (byte-compile-keep-pending form 'byte-compile-normal-call)) (put 'progn 'byte-hunk-handler 'byte-compile-file-form-progn)