Commits

Anonymous committed d881266

Have 21.5 + Mule compile Mule-UCS again.

Comments (0)

Files changed (3)

+2005-05-08  Aidan Kehoe  <kehoea@parhasard.net>
+
+	* mucs.el (mucs-import-package): Bind the same magic variable as
+	in the previous commit--mucs-import-package wraps a require at
+	compile time and another at runtime. 
+	* un-supple.el:
+	Error if we're being loaded by an XEmacs that's incompatible with
+	Mule-UCS. (We do this because otherwise a (require 'un-supple)
+	will succeed and provide the un-define feature on 21.5 at runtime.)
+	
 2005-05-05  Aidan Kehoe  <kehoea@parhasard.net>
 
 	* un-define.el: Refuse to load un-define if 21.5's Unicode support
 
 (defmacro mucs-import-package (package)
   "Import package."
-  (require package)
-  (let ((import-list
-	 (get mucs-current-package 'mucs-imported-packages)))
-    (if (memq package import-list)
-	nil
-      (put mucs-current-package 'mucs-imported-packages
-	   (cons package import-list)))
-    `(require (quote ,package))))
+  (let ((mucs-ignore-version-incompatibilities t))
+    (require package)
+    (let ((import-list
+	   (get mucs-current-package 'mucs-imported-packages)))
+      (if (memq package import-list)
+	  nil
+	(put mucs-current-package 'mucs-imported-packages
+	     (cons package import-list)))
+      `(let ((mucs-ignore-version-incompatibilities t))
+	(require (quote ,package))))))
 
 (defsubst mucs-get-current-registered-alist ()
   (get mucs-current-package

lisp/un-supple.el

 
 ;;; Comment:
 
-;; The dynamic binding of mucs-ignore-version-incompatibilities is to allow
-;; 21.5 to compile the package.
+;; There should be no need for this file, as opposed to un-define.el, to
+;; ever be loaded by a 21.5 XEmacs, which is why we don't provide the
+;; mucs-ignore-version-incompatiblities workaround to suppress this error.
+(if (fboundp 'unicode-precedence-list)
+    (error "Your XEmacs version is incompatible with Mule-UCS; not loaded."))
+
 (let ((mucs-ignore-version-incompatibilities t))
   (require 'un-define))
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.