diff options
Diffstat (limited to 'lisp/international/ccl.el')
-rw-r--r-- | lisp/international/ccl.el | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/international/ccl.el b/lisp/international/ccl.el index 04f0e957d7a..c445d7d40e1 100644 --- a/lisp/international/ccl.el +++ b/lisp/international/ccl.el @@ -1507,7 +1507,12 @@ MAP-IDs := MAP-ID ... MAP-SET := MAP-IDs | (MAP-IDs) MAP-SET MAP-ID := integer " - `(let ((prog ,(ccl-compile (eval ccl-program)))) + `(let ((prog ,(unwind-protect + (progn + ;; To make ,(charset-id CHARSET) works well. + (fset 'charset-id 'charset-id-internal) + (ccl-compile (eval ccl-program))) + (fmakunbound 'charset-id)))) (defconst ,name prog ,doc) (put ',name 'ccl-program-idx (register-ccl-program ',name prog)) nil)) |