(:unsigned-short . (alien:unsigned 16))
(:int . (alien:signed 32))
(:unsigned-int . (alien:unsigned 32))
- (:long . (alien:signed 32))
- (:unsigned-long . (alien:unsigned 32))
+ #-x86-64 (:long . (alien:signed 32))
+ #-x86-64 (:unsigned-long . (alien:unsigned 32))
+ #+x86-64 (:long . (alien:signed 64))
+ #+x86-64 (:unsigned-long . (alien:unsigned 64))
(:float . alien:single-float)
(:double . alien:double-float)
(:void . t)
#+mcl `(:struct ,(%convert-from-uffi-type (cadr type) :struct))
#-mcl (%convert-from-uffi-type (cadr type) :struct)
)
- (t
- (cons (%convert-from-uffi-type (first type) context)
- (%convert-from-uffi-type (rest type) context)))))))
+ (:union
+ #+mcl `(:union ,(%convert-from-uffi-type (cadr type) :union))
+ #-mcl (%convert-from-uffi-type (cadr type) :union)
+ )
+ (t
+ (cons (%convert-from-uffi-type (first type) context)
+ (%convert-from-uffi-type (rest type) context)))))))
(defun convert-from-uffi-type (type context)
(let ((result (%convert-from-uffi-type type context)))