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.
This commit is contained in:
parent
37b88d7b92
commit
092071345f
1 changed files with 3 additions and 1 deletions
|
@ -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)
|
||||
|
|
Loading…
Add table
Reference in a new issue