mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-26 07:33:47 +00:00
Make checkdoc-defun-info parsing slightly less wrong
* lisp/emacs-lisp/checkdoc.el (checkdoc-defun-info): Disregard `interactive' in nested parts of the defun (bug#56052).
This commit is contained in:
parent
93b018c664
commit
196eebda16
@ -2007,6 +2007,7 @@ from the comment."
|
||||
(let ((defun (looking-at
|
||||
"(\\(?:cl-\\)?def\\(un\\|macro\\|subst\\|advice\\|generic\\|method\\)"))
|
||||
(is-advice (looking-at "(defadvice"))
|
||||
(defun-depth (ppss-depth (syntax-ppss)))
|
||||
(lst nil)
|
||||
(ret nil)
|
||||
(oo (make-vector 3 0))) ;substitute obarray for `read'
|
||||
@ -2022,11 +2023,17 @@ from the comment."
|
||||
(setq ret (cons nil ret))
|
||||
;; Interactive
|
||||
(save-excursion
|
||||
(setq ret (cons
|
||||
(re-search-forward "^\\s-*(interactive"
|
||||
(save-excursion (end-of-defun) (point))
|
||||
t)
|
||||
ret)))
|
||||
(push (and (re-search-forward "^\\s-*(interactive"
|
||||
(save-excursion
|
||||
(end-of-defun)
|
||||
(point))
|
||||
t)
|
||||
;; Disregard `interactive' from other parts of
|
||||
;; the function.
|
||||
(= (ppss-depth (syntax-ppss))
|
||||
(+ defun-depth 2))
|
||||
(point))
|
||||
ret))
|
||||
(skip-chars-forward " \t\n")
|
||||
(let ((bss (buffer-substring (point) (save-excursion (forward-sexp 1)
|
||||
(point))))
|
||||
|
Loading…
Reference in New Issue
Block a user