changeset 23432:5f51adf0b6ec

(ccl-compile-if): If there's no false-cmds, set unconditional-jump to nil. (ccl-compile-read-multibyte-character): Return nil. (ccl-compile-write-multibyte-character): Likewise. (ccl-compile-translate-character): Likewise (ccl-compile-map-multiple): Likewise. (ccl-compile-map-single): Likewise.
author Kenichi Handa <handa@m17n.org>
date Mon, 12 Oct 1998 12:00:44 +0000
parents 9aad69351f7b
children a53274056f20
files lisp/international/ccl.el
diffstat 1 files changed, 15 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/international/ccl.el	Mon Oct 12 12:00:44 1998 +0000
+++ b/lisp/international/ccl.el	Mon Oct 12 12:00:44 1998 +0000
@@ -574,7 +574,9 @@
     (let ((unconditional-jump (ccl-compile-1 true-cmds)))
       (if (null false-cmds)
 	  ;; This is the place to jump to if condition is false.
-	  (ccl-embed-current-address jump-cond-address)
+	  (progn
+	    (ccl-embed-current-address jump-cond-address)
+	    (setq unconditional-jump nil))
 	(let (end-true-part-address)
 	  (if (not unconditional-jump)
 	      (progn
@@ -860,7 +862,8 @@
 	(rrr (nth 2 cmd)))
     (ccl-check-register rrr cmd)
     (ccl-check-register RRR cmd)
-    (ccl-embed-extended-command 'read-multibyte-character rrr RRR 0)))
+    (ccl-embed-extended-command 'read-multibyte-character rrr RRR 0))
+  nil)
 
 ;; Compile write-multibyte-character
 (defun ccl-compile-write-multibyte-character (cmd)
@@ -870,7 +873,8 @@
 	(rrr (nth 2 cmd)))
     (ccl-check-register rrr cmd)
     (ccl-check-register RRR cmd)
-    (ccl-embed-extended-command 'write-multibyte-character rrr RRR 0)))
+    (ccl-embed-extended-command 'write-multibyte-character rrr RRR 0))
+  nil)
 
 ;; Compile translate-character
 (defun ccl-compile-translate-character (cmd)
@@ -889,10 +893,12 @@
 	   (ccl-embed-data Rrr))
 	  (t
 	   (ccl-check-register Rrr cmd)
-	   (ccl-embed-extended-command 'translate-character rrr RRR Rrr)))))
+	   (ccl-embed-extended-command 'translate-character rrr RRR Rrr))))
+  nil)
 
 (defun ccl-compile-iterate-multiple-map (cmd)
-  (ccl-compile-multiple-map-function 'iterate-multiple-map cmd))
+  (ccl-compile-multiple-map-function 'iterate-multiple-map cmd)
+  nil)
 
 (defun ccl-compile-map-multiple (cmd)
   (if (/= (length cmd) 4)
@@ -916,7 +922,8 @@
 	arg)
     (setq arg (append (list (nth 0 cmd) (nth 1 cmd) (nth 2 cmd))
 		      (funcall func (nth 3 cmd) nil)))
-    (ccl-compile-multiple-map-function 'map-multiple arg)))
+    (ccl-compile-multiple-map-function 'map-multiple arg))
+  nil)
 
 (defun ccl-compile-map-single (cmd)
   (if (/= (length cmd) 4)
@@ -933,7 +940,8 @@
 	       (ccl-embed-data map)
 	     (error "CCL: Invalid map: %s" map)))
 	  (t
-	   (error "CCL: Invalid type of arguments: %s" cmd)))))
+	   (error "CCL: Invalid type of arguments: %s" cmd))))
+  nil)
 
 (defun ccl-compile-multiple-map-function (command cmd)
   (if (< (length cmd) 4)