commit: Back out revision c673987f5f3d, undump mule/make-coding-system.el.

Aidan Kehoe kehoea at parhasard.net
Fri Feb 26 10:52:22 EST 2010


changeset:   5083:88f955fa5a7f
tag:         tip
user:        Aidan Kehoe <kehoea at parhasard.net>
date:        Fri Feb 26 15:52:24 2010 +0000
files:       lisp/ChangeLog lisp/coding.el lisp/mule/make-coding-system.el src/ChangeLog src/file-coding.c
description:
Back out revision c673987f5f3d, undump mule/make-coding-system.el.

lisp/ChangeLog addition:

2010-02-26  Aidan Kehoe  <kehoea at parhasard.net>

	Back out Ben's revision c673987f5f3d.
	* coding.el:
	Add a compiler macro for #'make-coding-system on non-Mule builds
	too, to fix the problem he addressed with that changeset.
	* mule/make-coding-system.el (fixed-width-private-use-start):
	Don't call (decode-char ... 'ucs) here, it can make bootstrapping
	harder.

src/ChangeLog addition:

2010-02-26  Aidan Kehoe  <kehoea at parhasard.net>

	* file-coding.c (Fmake_coding_system_internal):
	Be somewhat clearer in this docstring, especially for the sake of
	people running non-Mule builds who will see this docstring when
	they do F1 f make-coding-system RET.


diff -r 37a17808de95 -r 88f955fa5a7f lisp/ChangeLog
--- a/lisp/ChangeLog	Fri Feb 26 15:24:58 2010 +0000
+++ b/lisp/ChangeLog	Fri Feb 26 15:52:24 2010 +0000
@@ -1,3 +1,13 @@
+2010-02-26  Aidan Kehoe  <kehoea at parhasard.net>
+
+	Back out Ben's revision c673987f5f3d.
+	* coding.el:
+	Add a compiler macro for #'make-coding-system on non-Mule builds
+	too, to fix the problem he addressed with that changeset.
+	* mule/make-coding-system.el (fixed-width-private-use-start):
+	Don't call (decode-char ... 'ucs) here, it can make bootstrapping
+	harder.
+
 2010-02-25  Didier Verna  <didier at xemacs.org>
 
 	The background-placement face property.
diff -r 37a17808de95 -r 88f955fa5a7f lisp/coding.el
--- a/lisp/coding.el	Fri Feb 26 15:24:58 2010 +0000
+++ b/lisp/coding.el	Fri Feb 26 15:52:24 2010 +0000
@@ -487,6 +487,19 @@
 
   ;; Mule's not available; 
   (fset 'make-coding-system (symbol-function 'make-coding-system-internal))
+  (define-compiler-macro make-coding-system (&whole form name type
+                                             &optional description props)
+    (cond
+     ;; We shouldn't normally see these forms under non-Mule; they're all in
+     ;; the mule/ subdirectory.
+     ((equal '(quote fixed-width) type)
+      form)
+     ((byte-compile-constp type)
+      `(funcall (or (and (fboundp 'make-coding-system-internal)
+                         'make-coding-system-internal) 'make-coding-system)
+        ,@(cdr form)))
+     (t form)))
+
   (define-coding-system-alias 'escape-quoted 'binary)
 
   ;; These are so that gnus and friends work when not mule:
diff -r 37a17808de95 -r 88f955fa5a7f lisp/mule/make-coding-system.el
--- a/lisp/mule/make-coding-system.el	Fri Feb 26 15:24:58 2010 +0000
+++ b/lisp/mule/make-coding-system.el	Fri Feb 26 15:52:24 2010 +0000
@@ -26,7 +26,7 @@
 
 ;;; Code:
 
-(defvar fixed-width-private-use-start (decode-char 'ucs #xE000)
+(defvar fixed-width-private-use-start ?\uE000
   "Start of a 256 code private use area for fixed-width coding systems.
 
 This is used to ensure that distinct octets on disk for a given coding
diff -r 37a17808de95 -r 88f955fa5a7f src/ChangeLog
--- a/src/ChangeLog	Fri Feb 26 15:24:58 2010 +0000
+++ b/src/ChangeLog	Fri Feb 26 15:52:24 2010 +0000
@@ -1,3 +1,10 @@
+2010-02-26  Aidan Kehoe  <kehoea at parhasard.net>
+
+	* file-coding.c (Fmake_coding_system_internal):
+	Be somewhat clearer in this docstring, especially for the sake of
+	people running non-Mule builds who will see this docstring when
+	they do F1 f make-coding-system RET.
+
 2010-02-25  Didier Verna  <didier at xemacs.org>
 
 	The background-placement face property.
diff -r 37a17808de95 -r 88f955fa5a7f src/file-coding.c
--- a/src/file-coding.c	Fri Feb 26 15:24:58 2010 +0000
+++ b/src/file-coding.c	Fri Feb 26 15:52:24 2010 +0000
@@ -1407,13 +1407,15 @@
 }
 
 DEFUN ("make-coding-system-internal", Fmake_coding_system_internal, 2, 4, 0, /*
-See `make-coding-system'.  This does much of the work of that function.
-
+Create a new coding system object, and register NAME as its name.
+
+With Mule support, this does much of the work of `make-coding-system'.
 Without Mule support, it does all the work of that function, and an alias
-exists, mapping `make-coding-system' to
-`make-coding-system-internal'. You'll need a non-Mule XEmacs to read the
-complete docstring. Or you can just read it in make-coding-system.el;
-something like the following should work:
+exists, mapping `make-coding-system' to `make-coding-system-internal'.
+
+You'll need a Mule XEmacs to read the complete docstring. Or you can
+just read it in make-coding-system.el; something like the following
+should work:
 
  \\[find-function-other-window] find-file RET \\[find-file] mule/make-coding-system.el RET
 



More information about the XEmacs-Patches mailing list