From ae7155155be576e156e9c6655c823d95ce50ec67 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Tue, 29 Sep 2009 04:12:46 +0000 Subject: [PATCH] (check-declare-verify): Add basic defmethod and defclass, and define-overloadable-function. --- lisp/ChangeLog | 8 ++++++++ lisp/emacs-lisp/check-declare.el | 12 ++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index b486ab5f6ae..c5cd49d5801 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -12,9 +12,17 @@ 2009-09-29 Glenn Morris + * cedet/ede/srecode.el (srecode-resolve-arguments): Fix declaration. + + * cedet/semantic/complete.el (semantic-displayor-focus-abstract-child-p): + * cedet/semantic/tag-file.el (semanticdb-table-child-p): + * cedet/srecode/compile.el (srecode-template-inserter-newline-child-p): + Mark declarations not understood by check-declare. + * emacs-lisp/check-declare.el (check-declare-locate): Remove pointless file-name-nondirectory call preventing location of cedet files. (check-declare-verify): Use literal search rather than re-search. + Add basic defmethod and defclass, and define-overloadable-function. * net/tramp-smb.el (tramp-smb-handle-directory-files-and-attributes): Use tramp-compat-file-attributes rather than nonexistent diff --git a/lisp/emacs-lisp/check-declare.el b/lisp/emacs-lisp/check-declare.el index 1251699f8f1..9e1f8b4f089 100644 --- a/lisp/emacs-lisp/check-declare.el +++ b/lisp/emacs-lisp/check-declare.el @@ -34,6 +34,8 @@ ;; 1. Warn about functions marked as obsolete, eg ;; password-read-and-add in smime.el. +;; 2. defmethod, defclass argument checking. +;; 3. defclass also defines -p and -child-p. ;;; Code: @@ -143,9 +145,10 @@ is a string giving details of the error." (setq re (format (if cflag "^[ \t]*\\(DEFUN\\)[ \t]*([ \t]*\"%s\"" "^[ \t]*(\\(fset[ \t]+'\\|\ -def\\(?:un\\|subst\\|foo\\|\ -ine-\\(?:derived\\|generic\\|\\(?:global\\(?:ized\\)?-\\)?minor\\)-mode\ -\\|\\(?:ine-obsolete-function-\\)?alias[ \t]+'\\)\\)\ +def\\(?:un\\|subst\\|foo\\|method\\|class\\|\ +ine-\\(?:derived\\|generic\\|\\(?:global\\(?:ized\\)?-\\)?minor\\)-mode\\|\ +\\(?:ine-obsolete-function-\\)?alias[ \t]+'\\|\ +ine-overloadable-function\\)\\)\ \[ \t]*%s\\([ \t;]+\\|$\\)") (regexp-opt (mapcar 'cadr fnlist) t))) (while (re-search-forward re nil t) @@ -185,7 +188,8 @@ ine-\\(?:derived\\|generic\\|\\(?:global\\(?:ized\\)?-\\)?minor\\)-mode\ type) 'obsolete) ;; Can't easily check arguments in these cases. - ((string-match "\\`\\(defalias\\|fset\\)\\>" type) + ((string-match "\\`\\(def\\(alias\\|\ +method\\|class\\)\\|fset\\)\\>" type) t) ((looking-at "\\((\\|nil\\)") (byte-compile-arglist-signature -- 2.39.2