changeset 47017:0ba62d75345e

(unload-feature): Distinguish functions from variables in load-history. (feature-symbols): Doc fix.
author Richard M. Stallman <rms@gnu.org>
date Sat, 24 Aug 2002 03:00:29 +0000
parents 876e9026e464
children 101eb25eab6d
files lisp/loadhist.el
diffstat 1 files changed, 15 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/loadhist.el	Sat Aug 24 02:59:27 2002 +0000
+++ b/lisp/loadhist.el	Sat Aug 24 03:00:29 2002 +0000
@@ -32,7 +32,9 @@
 ;;; Code:
 
 (defun feature-symbols (feature)
-  "Return the file and list of symbols associated with a given FEATURE."
+  "Return the file and list of definitions associated with FEATURE.
+The value is actually the element of `load-history'
+for the file that did (provide FEATURE)."
    (catch 'foundit
      (mapc (lambda (x)
 	     (if (member (cons 'provide feature) (cdr x))
@@ -98,15 +100,15 @@
 
 (defvar loadhist-hook-functions
   '(after-change-functions
-after-insert-file-functions auto-fill-function
-before-change-functions blink-paren-function
-buffer-access-fontify-functions command-line-functions
-comment-indent-function kill-buffer-query-functions
-kill-emacs-query-functions lisp-indent-function
-mouse-position-function
-redisplay-end-trigger-functions temp-buffer-show-function
-window-scroll-functions window-size-change-functions
-write-region-annotate-functions)
+    after-insert-file-functions auto-fill-function
+    before-change-functions blink-paren-function
+    buffer-access-fontify-functions command-line-functions
+    comment-indent-function kill-buffer-query-functions
+    kill-emacs-query-functions lisp-indent-function
+    mouse-position-function
+    redisplay-end-trigger-functions temp-buffer-show-function
+    window-scroll-functions window-size-change-functions
+    write-region-annotate-functions)
   "A list of special hooks from Info node `(elisp)Standard Hooks'.
 
 These are symbols with hook-type values whose names don't end in
@@ -164,10 +166,10 @@
              ((consp x)
               ;; Remove any feature names that this file provided.
               (if (eq (car x) 'provide)
-                  (setq features (delq (cdr x) features))))
+                  (setq features (delq (cdr x) features)))
+              (if (eq (car x) 'defvar)
+		  (makunbound (cdr x))))
 	     (t
-	      (when (boundp x)
-		(makunbound x))
 	      (when (fboundp x)
 		(if (fboundp 'ad-unadvise)
 		    (ad-unadvise x))