Function: ccl-compile-loop
ccl-compile-loop is a byte-compiled function defined in ccl.el.gz.
Signature
(ccl-compile-loop CMD)
Documentation
Compile LOOP statement.
Source Code
;; Defined in /usr/src/emacs/lisp/international/ccl.el.gz
(defun ccl-compile-loop (cmd)
"Compile LOOP statement."
(if (< (length cmd) 2)
(error "CCL: Invalid number of arguments: %s" cmd))
(let* ((ccl-loop-head ccl-current-ic)
(ccl-breaks nil)
unconditional-jump)
(setq cmd (cdr cmd))
(if cmd
(progn
(setq unconditional-jump t)
(while cmd
(setq unconditional-jump
(and (ccl-compile-1 (car cmd)) unconditional-jump))
(setq cmd (cdr cmd)))
(if (not ccl-breaks)
unconditional-jump
;; Embed jump address for break statements encountered in
;; this loop.
(while ccl-breaks
(ccl-embed-current-address (car ccl-breaks))
(setq ccl-breaks (cdr ccl-breaks))))
nil))))