url/url.el line 32-42:

,----
| (eval-when-compile (require 'cl))
| ;; Don't require CL at runtime if we can avoid it (Emacs 21).
| ;; Otherwise we need it for hashing functions.  `puthash' was never
| ;; defined in the Emacs 20 cl.el for some reason.
| (if (fboundp 'puthash)
|     nil                                       ; internal or CL is loaded
|   (defalias 'puthash 'cl-puthash)
|   (autoload 'cl-puthash "cl")
|   (autoload 'gethash "cl")
|   (autoload 'maphash "cl")
|   (autoload 'make-hash-table "cl"))
`----

As it explains, (require 'cl) is for hash functions. 

But now puthash/gethash/maphash/make-hash-table are all builtins. And in
fact in cl-extra.el line 607-627:
,----
| ;;; Hash tables.
| ;; This is just kept for compatibility with code byte-compiled by Emacs-20.
| 
| ;; No idea if this might still be needed.
| (defun cl-not-hash-table (x &optional y &rest z)
|   (signal 'wrong-type-argument (list 'cl-hash-table-p (or y x))))
| 
| (defvar cl-builtin-gethash (symbol-function 'gethash))
| (defvar cl-builtin-remhash (symbol-function 'remhash))
| (defvar cl-builtin-clrhash (symbol-function 'clrhash))
| (defvar cl-builtin-maphash (symbol-function 'maphash))
| 
| (defalias 'cl-gethash 'gethash)
| (defalias 'cl-puthash 'puthash)
| (defalias 'cl-remhash 'remhash)
| (defalias 'cl-clrhash 'clrhash)
| (defalias 'cl-maphash 'maphash)
| ;; These three actually didn't exist in Emacs-20.
| (defalias 'cl-make-hash-table 'make-hash-table)
| (defalias 'cl-hash-table-p 'hash-table-p)
| (defalias 'cl-hash-table-count 'hash-table-count)
`----
cl-* ones are in fact alias of builtins.

So I guess these lines in url.el should be removed.



_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to