diff options
| author | Vibhav Pant | 2017-03-10 00:09:58 +0530 |
|---|---|---|
| committer | Vibhav Pant | 2017-03-10 00:22:35 +0530 |
| commit | 092071345f265efcd3abd6de01552ebe95ffb9a1 (patch) | |
| tree | f7a304a37159799fd28b8a394f31fed76f9c3d4a | |
| parent | 37b88d7b92ba77a771ce0dbff940b3dec1a366c5 (diff) | |
| download | emacs-092071345f265efcd3abd6de01552ebe95ffb9a1.tar.gz 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.
| -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) ...))" | |||
| 4128 | ;; depth/tag conflicts or violating asserts down the road. | 4128 | ;; depth/tag conflicts or violating asserts down the road. |
| 4129 | ;; To make sure `byte-compile-body' itself doesn't violate this, | 4129 | ;; To make sure `byte-compile-body' itself doesn't violate this, |
| 4130 | ;; we use `cl-assert'. | 4130 | ;; we use `cl-assert'. |
| 4131 | (byte-compile-body body byte-compile--for-effect) | 4131 | (if (null body) |
| 4132 | (byte-compile-form t byte-compile--for-effect) | ||
| 4133 | (byte-compile-body body byte-compile--for-effect)) | ||
| 4132 | (cl-assert (or (= byte-compile-depth init-depth) | 4134 | (cl-assert (or (= byte-compile-depth init-depth) |
| 4133 | (= byte-compile-depth (1+ init-depth)))) | 4135 | (= byte-compile-depth (1+ init-depth)))) |
| 4134 | (byte-compile-goto 'byte-goto donetag) | 4136 | (byte-compile-goto 'byte-goto donetag) |