summaryrefslogtreecommitdiff
path: root/lisp/subr.el
diff options
context:
space:
mode:
authorPaul Eggert <eggert@twinsun.com>1999-10-19 07:18:58 +0000
committerPaul Eggert <eggert@twinsun.com>1999-10-19 07:18:58 +0000
commit64ed733adadc4012f0182b1daee7e105994e85d0 (patch)
treec5c1e1b269716db99ec75e396f7b5ad5b031f9c7 /lisp/subr.el
parent4ee9629e2beb7a870ab30509d547b6845ef645cf (diff)
downloademacs-64ed733adadc4012f0182b1daee7e105994e85d0.tar.gz
Fix bootstrapping problems.
Use the system locale to specify Emacs locale defaults. * international/mule-cmds.el (global-map): Do not use backquote, because that makes a bootstrapping problem if you need to recompile all Lisp files using interpreted code. * international/mule.el (charset-id, charset-bytes, charset-dimension, charset-chars, charset-width, charset-direction, charset-iso-final-char, charset-iso-graphic-plane, charset-reverse-charset, charset-short-name, charset-long-name, charset-description, charset-plist): Likewise. * subr.el (save-match-data): Likewise. * international/mule-cmds.el (set-display-table-and-terminal-coding-system): New function, containing code migrated out of set-language-environment. (set-language-environment, set-locale-environment): Use it. (locale-translation-file-name): Moved here from startup.el. (locale-language-names, locale-preferred-coding-systems): New vars. (locale-name-match, set-locale-environment): New functions. * language/japan-util.el (setup-japanese-environment-internal): Prefer japanese-iso-8bit if the system-type is usg-unix-v. * startup.el (iso-8859-n-locale-regexp): Remove. (locale-translation-file-name): Move to mule-cmds.el. (command-line): Move locale-stuff into set-locale-environment.
Diffstat (limited to 'lisp/subr.el')
-rw-r--r--lisp/subr.el14
1 files changed, 9 insertions, 5 deletions
diff --git a/lisp/subr.el b/lisp/subr.el
index 66c1986f4b5..f90d0d9da05 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -1,6 +1,6 @@
;;; subr.el --- basic lisp subroutines for Emacs
-;; Copyright (C) 1985, 1986, 1992, 1994, 1995 Free Software Foundation, Inc.
+;; Copyright (C) 1985, 86, 92, 94, 95, 1999 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
@@ -1069,10 +1069,14 @@ in BODY."
;; now, but it generates slower code.
(defmacro save-match-data (&rest body)
"Execute the BODY forms, restoring the global value of the match data."
- `(let ((save-match-data-internal (match-data)))
- (unwind-protect
- (progn ,@body)
- (set-match-data save-match-data-internal))))
+ ;; It is better not to use backquote here,
+ ;; because that makes a bootstrapping problem
+ ;; if you need to recompile all the Lisp files using interpreted code.
+ (list 'let
+ '((save-match-data-internal (match-data)))
+ (list 'unwind-protect
+ (cons 'progn body)
+ '(set-match-data save-match-data-internal))))
(defun match-string (num &optional string)
"Return string of text matched by last search.