657 |
binding slots have been popped." |
binding slots have been popped." |
658 |
;; Unbind dynamic variables |
;; Unbind dynamic variables |
659 |
(let ((num-dynamic-bindings 0)) |
(let ((num-dynamic-bindings 0)) |
660 |
(dolist (clause clauses) |
(if lforminfo |
661 |
(unless (assq (if (consp clause) (car clause) clause) |
(dolist (clause clauses) |
662 |
(byte-compile-lforminfo-vars lforminfo)) |
(unless (assq (if (consp clause) (car clause) clause) |
663 |
(setq num-dynamic-bindings (1+ num-dynamic-bindings)))) |
(byte-compile-lforminfo-vars lforminfo)) |
664 |
|
(setq num-dynamic-bindings (1+ num-dynamic-bindings)))) |
665 |
|
(setq num-dynamic-bindings (length clauses))) |
666 |
(unless (zerop num-dynamic-bindings) |
(unless (zerop num-dynamic-bindings) |
667 |
(byte-compile-out 'byte-unbind num-dynamic-bindings))) |
(byte-compile-out 'byte-unbind num-dynamic-bindings))) |
668 |
;; Pop lexical variables off the stack, possibly preserving the |
;; Pop lexical variables off the stack, possibly preserving the |