))
(defun file-dependents (file)
- ;; Return the list of loaded libraries that depend on FILE.
+ "Return the list of loaded libraries that depend on FILE.
+This can include FILE itself."
(let ((provides (file-provides file)) (dependents nil))
(mapcar
(function (lambda (x)
(if (not (featurep feature))
(error "%s is not a currently loaded feature." (symbol-name feature)))
(if (not force)
- (let* ((file (feature-file feature)) (dependents (file-dependents file)))
+ (let* ((file (feature-file feature))
+ (dependents (delete file (copy-sequence (file-dependents file)))))
(if dependents
(error "Loaded libraries %s depend on %s."
(prin1-to-string dependents) file)