[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master e13c301: * lisp/emacs-lisp/cconv.el (cconv--analyze-use): Warn ne
From: |
Stefan Monnier |
Subject: |
master e13c301: * lisp/emacs-lisp/cconv.el (cconv--analyze-use): Warn never-initialized vars |
Date: |
Thu, 11 Mar 2021 13:02:05 -0500 (EST) |
branch: master
commit e13c30132a81ca2087f7d1a3adc5f6feab84ea2e
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/cconv.el (cconv--analyze-use): Warn never-initialized vars
(byte-compile-not-lexical-var-p): Remove Emacs<24 compatibility.
---
lisp/emacs-lisp/cconv.el | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/lisp/emacs-lisp/cconv.el b/lisp/emacs-lisp/cconv.el
index 68e930f..ca641a2 100644
--- a/lisp/emacs-lisp/cconv.el
+++ b/lisp/emacs-lisp/cconv.el
@@ -585,9 +585,6 @@ places where they originally did not directly appear."
(_ (or (cdr (assq form env)) form))))
-(unless (fboundp 'byte-compile-not-lexical-var-p)
- ;; Only used to test the code in non-lexbind Emacs.
- (defalias 'byte-compile-not-lexical-var-p 'boundp))
(defvar byte-compile-lexical-variables)
(defun cconv--analyze-use (vardata form varkind)
@@ -603,7 +600,13 @@ FORM is the parent form that binds this var."
;; FIXME: Convert this warning to use `macroexp--warn-wrap'
;; so as to give better position information.
(byte-compile-warn
- "%s `%S' not left unused" varkind var)))
+ "%s `%S' not left unused" varkind var))
+ ((and (let (or 'let* 'let) (car form))
+ `(,(or `(,var) `(,var nil)) t nil ,_ ,_))
+ ;; FIXME: Convert this warning to use `macroexp--warn-wrap'
+ ;; so as to give better position information.
+ (unless (not (intern-soft var))
+ (byte-compile-warn "Variable `%S' left uninitialized" var))))
(pcase vardata
(`(,binder nil ,_ ,_ nil)
(push (cons (cons binder form) :unused) cconv-var-classification))
@@ -784,7 +787,7 @@ This function does not return anything but instead fills the
(let ((dv (assq form env))) ; dv = declared and visible
(when dv
(setf (nth 1 dv) t))))))
-(define-obsolete-function-alias 'cconv-analyse-form 'cconv-analyze-form "25.1")
+(define-obsolete-function-alias 'cconv-analyse-form #'cconv-analyze-form
"25.1")
(provide 'cconv)
;;; cconv.el ends here
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master e13c301: * lisp/emacs-lisp/cconv.el (cconv--analyze-use): Warn never-initialized vars,
Stefan Monnier <=