summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/emacs-lisp/bytecomp.el5
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index b608844a08a..dff8bcfa209 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -4020,7 +4020,10 @@ that suppresses all warnings during execution of BODY."
(cases (cadr table-info))
jump-table test-obj body tag donetag default-tag default-case)
(when (and cases (not (= (length cases) 1)))
- (setq jump-table (make-hash-table :test test :size (length cases))
+ (setq jump-table (make-hash-table :test test
+ :size (if (assq 'default cases)
+ (1- (length cases))
+ (length cases)))
default-tag (byte-compile-make-tag)
donetag (byte-compile-make-tag))
(byte-compile-variable-ref var)