;;;; 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
;;;;
;;;; *************************************************************************
#-x86-64 (:unsigned-long . (alien:unsigned 32))
#+x86-64 (:long . (alien:signed 64))
#+x86-64 (:unsigned-long . (alien:unsigned 64))
+ (:long-long (alien:signed 64))
+ (:unsigned-long-long (alien:unsigned 64))
(:float . alien:single-float)
(:double . alien:double-float)
(:void . t)
#-x86-64 (:unsigned-long . (sb-alien:unsigned 32))
#+x86-64 (:long . (sb-alien:signed 64))
#+x86-64 (:unsigned-long . (sb-alien:unsigned 64))
+ (:long-long (sb-alien:signed 64))
+ (:unsigned-long-long (sb-alien:unsigned 64))
(:float . sb-alien:single-float)
(:double . sb-alien:double-float)
(:void . t)
(: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)
+ (:long-long . c-call:long-long)
+ (:unsigned-long-long . c-call:unsigned-long-long)
(:float . c-call:float) (:double . c-call:double)
(:array . alien:array)))
(:unsigned-short . sb-alien:unsigned-short)
(:int . sb-alien:int) (:unsigned-int . sb-alien:unsigned-int)
(:long . sb-alien:long) (:unsigned-long . sb-alien:unsigned-long)
+ (:long-long . sb-alien:long-long)
+ (:unsigned-long-long . sb-alien:unsigned-long-long)
(:float . sb-alien:float) (:double . sb-alien:double)
(:array . sb-alien:array)))
(:float . :float) (:double . :double)
(:array . :array)))
+#+(or allegro cormanlisp)
+(push 'uffi:no-long-long cl:*features*)
+
#+lispworks
(setq *type-conversion-list*
'((* . :pointer) (:void . :void)
(:unsigned-char . (:unsigned :char))
(:int . :int) (:unsigned-int . (:unsigned :int))
(:long . :long) (:unsigned-long . (:unsigned :long))
+ #+lispworks6 (:long-long . :int64)
+ #+lispworks6 (:unsigned-long-long . :uint64)
(:float . :float) (:double . :double)
(:array . :c-array)))
+#+(and lispworks (not lispworks6))
+(push 'uffi:no-long-long cl:*features*)
+
#+digitool
(setq *type-conversion-list*
'((* . :pointer) (:void . :void)
(:long . :long) (:unsigned-long . :unsigned-long)
(:float . :single-float) (:double . :double-float)
(:array . :array)))
+#+digitool
+(push 'uffi:no-long-long cl:*features*)
#+openmcl
(setq *type-conversion-list*