Fix comparison for dereference
[uffi.git] / src / primitives.lisp
index 50023b354919a1932ae1e06d07efcd29f4cbe89a..a43eb8dd24e4c2ff1b615475be0cdd900113cfae 100644 (file)
@@ -7,9 +7,7 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Feb 2002
 ;;;;
-;;;; $Id$
-;;;;
-;;;; This file, part of UFFI, is Copyright (c) 2002-2005 by Kevin M. Rosenberg
+;;;; This file, part of UFFI, is Copyright (c) 2002-2010 by Kevin M. Rosenberg
 ;;;;
 ;;;; *************************************************************************
 
@@ -143,7 +141,15 @@ supports takes advantage of this optimization."
       (:unsigned-short . c-call:unsigned-short)
       (:int . alien:integer) (:unsigned-int . c-call:unsigned-int)
       (:long . c-call:long) (:unsigned-long . c-call:unsigned-long)
+      #+#.(cl:if (cl:and (cl:find-package (cl:string '#:c-call))
+                         (cl:find-symbol (cl:string '#:long-long)
+                                         (cl:string '#:c-call)))
+                 '(and) '(or))
       (:long-long . c-call:long-long)
+      #+#.(cl:if (cl:and (cl:find-package (cl:string '#:c-call))
+                         (cl:find-symbol (cl:string '#:unsigned-long-long)
+                                         (cl:string '#:c-call)))
+                 '(and) '(or))
       (:unsigned-long-long . c-call:unsigned-long-long)
       (:float . c-call:float) (:double . c-call:double)
       (:array . alien:array)))
@@ -183,7 +189,7 @@ supports takes advantage of this optimization."
       (:array . :array)))
 
 #+(or allegro cormanlisp)
-(push 'uffi:no-long-long cl:*features)
+(push 'uffi:no-long-long cl:*features*)
 
 #+lispworks
 (setq *type-conversion-list*
@@ -208,7 +214,7 @@ supports takes advantage of this optimization."
       (:array . :c-array)))
 
 #+(and lispworks (not lispworks6))
-(push 'uffi:no-long-long cl:*features)
+(push 'uffi:no-long-long cl:*features*)
 
 #+digitool
 (setq *type-conversion-list*
@@ -224,7 +230,7 @@ supports takes advantage of this optimization."
        (:float . :single-float) (:double . :double-float)
        (:array . :array)))
 #+digitool
-(push 'uffi:no-long-long cl:*features)
+(push 'uffi:no-long-long cl:*features*)
 
 #+openmcl
 (setq *type-conversion-list*