From: Eshel Yaron Date: Thu, 12 Jun 2025 14:27:22 +0000 (+0200) Subject: scope.el: Improve cl-defun support X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6bd023bf4ee643a0548ab1d1cc4bbfd26697eab4;p=emacs.git scope.el: Improve cl-defun support --- diff --git a/lisp/emacs-lisp/scope.el b/lisp/emacs-lisp/scope.el index 5595f2dc48c..d857c510542 100644 --- a/lisp/emacs-lisp/scope.el +++ b/lisp/emacs-lisp/scope.el @@ -1235,10 +1235,11 @@ Optional argument LOCAL is a local context to extend." (scope-defmethod-1 local local (car rest) (cdr rest))) (defun scope-cl-defun (local name arglist body) - (when-let ((beg (scope-sym-pos name)) - (bare (scope-sym-bare name))) - (scope-report 'defun beg (length (symbol-name bare)))) - (scope-cl-lambda local arglist body)) + (let ((beg (scope-sym-pos name)) + (bare (scope-sym-bare name))) + (when beg (scope-report 'defun beg (length (symbol-name bare)))) + (let ((scope-block-alist (scope-local-new bare beg scope-block-alist))) + (scope-cl-lambda local arglist body)))) (defun scope-cl-lambda (local arglist body) (scope-cl-lambda-1 local arglist nil body))