aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoam Postavsky2017-01-14 01:47:52 -0500
committerNoam Postavsky2017-01-19 20:15:18 -0500
commit82a5e4dc889ecbfa35374616fe9c5edfa23f4504 (patch)
treed2117aff60cc9b49b2b7ecac362db0b9307656ac
parent9c4e3097b595c739bb29261759b9ba631431329e (diff)
downloademacs-82a5e4dc889ecbfa35374616fe9c5edfa23f4504.tar.gz
emacs-82a5e4dc889ecbfa35374616fe9c5edfa23f4504.zip
Fix free var FOO-mode-{syntax,abbrev}-table warnings
* lisp/emacs-lisp/derived.el (define-derived-mode): Unconditionally defvar the syntax and abbrev tables so that the compiler will know that they are dynamically bound variables (Bug#25446).
-rw-r--r--lisp/emacs-lisp/derived.el2
1 files changed, 2 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el
index 762c7624577..fffe972460c 100644
--- a/lisp/emacs-lisp/derived.el
+++ b/lisp/emacs-lisp/derived.el
@@ -216,6 +216,7 @@ No problems result if this variable is not bound.
216 (purecopy ,(format "Keymap for `%s'." child)))) 216 (purecopy ,(format "Keymap for `%s'." child))))
217 ,(if declare-syntax 217 ,(if declare-syntax
218 `(progn 218 `(progn
219 (defvar ,syntax)
219 (unless (boundp ',syntax) 220 (unless (boundp ',syntax)
220 (put ',syntax 'definition-name ',child) 221 (put ',syntax 'definition-name ',child)
221 (defvar ,syntax (make-syntax-table))) 222 (defvar ,syntax (make-syntax-table)))
@@ -224,6 +225,7 @@ No problems result if this variable is not bound.
224 (purecopy ,(format "Syntax table for `%s'." child)))))) 225 (purecopy ,(format "Syntax table for `%s'." child))))))
225 ,(if declare-abbrev 226 ,(if declare-abbrev
226 `(progn 227 `(progn
228 (defvar ,abbrev)
227 (unless (boundp ',abbrev) 229 (unless (boundp ',abbrev)
228 (put ',abbrev 'definition-name ',child) 230 (put ',abbrev 'definition-name ',child)
229 (defvar ,abbrev 231 (defvar ,abbrev