diff options
author | Vibhav Pant <vibhavp@gmail.com> | 2017-03-10 00:09:58 +0530 |
---|---|---|
committer | Vibhav Pant <vibhavp@gmail.com> | 2017-03-10 00:22:35 +0530 |
commit | 092071345f265efcd3abd6de01552ebe95ffb9a1 (patch) | |
tree | f7a304a37159799fd28b8a394f31fed76f9c3d4a /lisp/emacs-lisp | |
parent | 37b88d7b92ba77a771ce0dbff940b3dec1a366c5 (diff) | |
download | emacs-092071345f265efcd3abd6de01552ebe95ffb9a1.tar.gz emacs-092071345f265efcd3abd6de01552ebe95ffb9a1.tar.bz2 emacs-092071345f265efcd3abd6de01552ebe95ffb9a1.zip |
Byte compile cond clauses without any bodies correctly.
* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table): When a
cond clause has no body, push t on to the stack.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 25513bd0248..7cbef8e4340 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -4128,7 +4128,9 @@ Return a list of the form ((TEST . VAR) ((VALUE BODY) ...))" ;; depth/tag conflicts or violating asserts down the road. ;; To make sure `byte-compile-body' itself doesn't violate this, ;; we use `cl-assert'. - (byte-compile-body body byte-compile--for-effect) + (if (null body) + (byte-compile-form t byte-compile--for-effect) + (byte-compile-body body byte-compile--for-effect)) (cl-assert (or (= byte-compile-depth init-depth) (= byte-compile-depth (1+ init-depth)))) (byte-compile-goto 'byte-goto donetag) |