r2885: *** empty log message ***
[uffi.git] / tests / union.cl
index 967fc25b1ef73ca6d64901cb1c25ffc05d1a0d2b..fc14c4a7c251d67b01fff40cb0852a73d269d7e1 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Mar 2002
 ;;;;
-;;;; $Id: union.cl,v 1.8 2002/09/20 05:38:01 kevin Exp $
+;;;; $Id: union.cl,v 1.10 2002/09/29 17:31:20 kevin Exp $
 ;;;;
 ;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
 (defun run-union-1 ()
   (let ((u (uffi:allocate-foreign-object 'tunion1)))
     (setf (uffi:get-slot-value u 'tunion1 'uint)
-         #-sparc
-         (+ (* 1 (char-code #\A))
-            (* 256 (char-code #\B))
-            (* 65536 (char-code #\C))
-            (* 16777216 255))
-         #+(or sparc sparc-v9)
-         (+ (* 16777216 (char-code #\A))
-            (* 65536 (char-code #\B))
-            (* 256 (char-code #\C))
-            (* 1 255)))
+      ;; little endian
+      #-(or sparc sparc-v9 powerpc ppc)
+      (+ (* 1 (char-code #\A))
+        (* 256 (char-code #\B))
+        (* 65536 (char-code #\C))
+        (* 16777216 128))
+      ;; big endian
+      #+(or sparc sparc-v9 powerpc ppc)
+      (+ (* 16777216 (char-code #\A))
+        (* 65536 (char-code #\B))
+        (* 256 (char-code #\C))
+        (* 1 128)))
     (format *standard-output* "~&Should be #\A: ~S" 
            (uffi:ensure-char-character 
             (uffi:get-slot-value u 'tunion1 'char)))
 (defun test-union-1 ()
   (let ((u (uffi:allocate-foreign-object 'tunion1)))
     (setf (uffi:get-slot-value u 'tunion1 'uint)
-         #-sparc
+         #-(or sparc sparc-v9 powerpc ppc)
          (+ (* 1 (char-code #\A))
             (* 256 (char-code #\B))
             (* 65536 (char-code #\C))
             (* 16777216 128))
-         #+(or sparc sparc-v9)
+         #+(or sparc sparc-v9 powerpc ppc)
          (+ (* 16777216 (char-code #\A))
             (* 65536 (char-code #\B))
             (* 256 (char-code #\C))
@@ -67,7 +69,7 @@
               #\A
               :test #'eql
               :fail-info "Error with union character")
-    #-(or sparc sparc-v9)
+    #-(or sparc sparc-v9 mcl)
     (util.test:test (> 0 (uffi:get-slot-value u 'tunion1 'int))
               t
               :fail-info