(dir-locals-collect-variables): Avoid spurious safety warnings

* lisp/files.el (dir-locals-collect-variables): Silence warnings for
extra parents' variables.
This commit is contained in:
Stefan Monnier 2024-03-08 12:44:38 -05:00
parent 345cdd7a70
commit 454a55dbd9

View file

@ -4446,6 +4446,12 @@ to see whether it should be considered."
(funcall predicate key)
(or (not key)
(derived-mode-p key)))
;; If KEY is an extra parent it may remain not loaded
;; (hence with some of its mode-specific vars missing their
;; `safe-local-variable' property), leading to spurious
;; prompts about unsafe vars (bug#68246).
(if (and (symbolp key) (autoloadp (indirect-function key)))
(ignore-errors (autoload-do-load (indirect-function key))))
(let* ((alist (cdr entry))
(subdirs (assq 'subdirs alist)))
(if (or (not subdirs)