Don't warn about obsolete defgenerics when defining them
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): The declaration code should run after the definition code (Bug#25556).
This commit is contained in:
parent
0073223c23
commit
9bf94639b8
1 changed files with 8 additions and 7 deletions
|
@ -226,7 +226,13 @@ DEFAULT-BODY, if present, is used as the body of a default method.
|
|||
(when (eq 'setf (car-safe name))
|
||||
(require 'gv)
|
||||
(setq name (gv-setter (cadr name))))
|
||||
`(progn
|
||||
`(prog1
|
||||
(progn
|
||||
(defalias ',name
|
||||
(cl-generic-define ',name ',args ',(nreverse options))
|
||||
,(help-add-fundoc-usage doc args))
|
||||
,@(mapcar (lambda (method) `(cl-defmethod ,name ,@method))
|
||||
(nreverse methods)))
|
||||
,@(mapcar (lambda (declaration)
|
||||
(let ((f (cdr (assq (car declaration)
|
||||
defun-declarations-alist))))
|
||||
|
@ -235,12 +241,7 @@ DEFAULT-BODY, if present, is used as the body of a default method.
|
|||
(t (message "Warning: Unknown defun property `%S' in %S"
|
||||
(car declaration) name)
|
||||
nil))))
|
||||
(cdr declarations))
|
||||
(defalias ',name
|
||||
(cl-generic-define ',name ',args ',(nreverse options))
|
||||
,(help-add-fundoc-usage doc args))
|
||||
,@(mapcar (lambda (method) `(cl-defmethod ,name ,@method))
|
||||
(nreverse methods)))))
|
||||
(cdr declarations)))))
|
||||
|
||||
;;;###autoload
|
||||
(defun cl-generic-define (name args options)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue