summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2007-11-09 15:57:46 +0000
committerStefan Monnier <monnier@iro.umontreal.ca>2007-11-09 15:57:46 +0000
commitb7c76a30f9717dccc396fd4fc7493cbbf589a8e8 (patch)
treeb8dc5d731d08a77607d5555c42381710b1c5793d /lisp/emacs-lisp
parentd54ad496474b0294cb99bd072e17c9db56e97c53 (diff)
downloademacs-b7c76a30f9717dccc396fd4fc7493cbbf589a8e8.tar.gz
emacs-b7c76a30f9717dccc396fd4fc7493cbbf589a8e8.tar.bz2
emacs-b7c76a30f9717dccc396fd4fc7493cbbf589a8e8.zip
(byte-compile-file-form-define-abbrev-table): New function.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/bytecomp.el7
1 files changed, 7 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index c1f547e215d..7dbeb66db77 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -2260,6 +2260,13 @@ list that represents a doc string reference.
(byte-compile-top-level (nth 2 form) nil 'file))))
form))
+(put 'define-abbrev-table 'byte-hunk-handler 'byte-compile-file-form-define-abbrev-table)
+(defun byte-compile-file-form-define-abbrev-table (form)
+ (when (and (byte-compile-warning-enabled-p 'free-vars)
+ (eq 'quote (car-safe (car-safe (cdr form)))))
+ (push (car-safe (cdr (cadr form))) byte-compile-bound-variables))
+ (byte-compile-keep-pending form))
+
(put 'custom-declare-variable 'byte-hunk-handler
'byte-compile-file-form-custom-declare-variable)
(defun byte-compile-file-form-custom-declare-variable (form)