diff options
| author | Michael Heerdegen | 2020-04-10 01:21:33 +0200 |
|---|---|---|
| committer | Michael Heerdegen | 2020-04-30 20:50:33 +0200 |
| commit | 0c899eede338e8e1e349ddcdaf88723569d48f8d (patch) | |
| tree | f9b987d4481eaef7c6184b11d416f060d696b014 | |
| parent | 691f19798a228f3d3cd031b9179311c5cf8394f5 (diff) | |
| download | emacs-0c899eede338e8e1e349ddcdaf88723569d48f8d.tar.gz emacs-0c899eede338e8e1e349ddcdaf88723569d48f8d.zip | |
Make `make-local-variable' declare the var locally dynamic
The only effect of this change is to get rid of some unnecessary
"assignment to free variable" warnings.
* lisp/emacs-lisp/bytecomp.el (byte-compile-make-local-variable): New
function.
| -rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 13b72196565..72dbfd74b11 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el | |||
| @@ -4752,6 +4752,14 @@ binding slots have been popped." | |||
| 4752 | (defun byte-compile-form-make-variable-buffer-local (form) | 4752 | (defun byte-compile-form-make-variable-buffer-local (form) |
| 4753 | (byte-compile-keep-pending form 'byte-compile-normal-call)) | 4753 | (byte-compile-keep-pending form 'byte-compile-normal-call)) |
| 4754 | 4754 | ||
| 4755 | ;; Make `make-local-variable' declare the variable locally | ||
| 4756 | ;; dynamic - this suppresses some unnecessary warnings | ||
| 4757 | (byte-defop-compiler-1 make-local-variable | ||
| 4758 | byte-compile-make-local-variable) | ||
| 4759 | (defun byte-compile-make-local-variable (form) | ||
| 4760 | (pcase form (`(,_ ',var) (byte-compile--declare-var var))) | ||
| 4761 | (byte-compile-normal-call form)) | ||
| 4762 | |||
| 4755 | (put 'function-put 'byte-hunk-handler 'byte-compile-define-symbol-prop) | 4763 | (put 'function-put 'byte-hunk-handler 'byte-compile-define-symbol-prop) |
| 4756 | (put 'define-symbol-prop 'byte-hunk-handler 'byte-compile-define-symbol-prop) | 4764 | (put 'define-symbol-prop 'byte-hunk-handler 'byte-compile-define-symbol-prop) |
| 4757 | (defun byte-compile-define-symbol-prop (form) | 4765 | (defun byte-compile-define-symbol-prop (form) |