projects
/
uffi.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r9012: add make-pointer and pointer-address
[uffi.git]
/
src
/
primitives.lisp
diff --git
a/src/primitives.lisp
b/src/primitives.lisp
index 007355c316209082abc7d6d22886cfe297b3403a..c430894f711922ace55c007c5e25b1e660128575 100644
(file)
--- a/
src/primitives.lisp
+++ b/
src/primitives.lisp
@@
-87,9
+87,6
@@
supports takes advantage of this optimization."
(make-hash-table :size 20 :test #'eq))
)
(make-hash-table :size 20 :test #'eq))
)
-#+(or cmu sbcl scl)
-(defvar *cmu-sbcl-def-type-list* nil)
-
#+(or cmu scl)
(defvar *cmu-sbcl-def-type-list*
'((:char . (alien:signed 8))
#+(or cmu scl)
(defvar *cmu-sbcl-def-type-list*
'((:char . (alien:signed 8))
@@
-104,8
+101,10
@@
supports takes advantage of this optimization."
(:unsigned-long . (alien:unsigned 32))
(:float . alien:single-float)
(:double . alien:double-float)
(:unsigned-long . (alien:unsigned 32))
(:float . alien:single-float)
(:double . alien:double-float)
+ (:void . t)
)
"Conversions in CMUCL for def-foreign-type are different than in def-function")
)
"Conversions in CMUCL for def-foreign-type are different than in def-function")
+
#+sbcl
(defvar *cmu-sbcl-def-type-list*
'((:char . (sb-alien:signed 8))
#+sbcl
(defvar *cmu-sbcl-def-type-list*
'((:char . (sb-alien:signed 8))
@@
-120,6
+119,7
@@
supports takes advantage of this optimization."
(:unsigned-long . (sb-alien:unsigned 32))
(:float . sb-alien:single-float)
(:double . sb-alien:double-float)
(:unsigned-long . (sb-alien:unsigned 32))
(:float . sb-alien:single-float)
(:double . sb-alien:double-float)
+ (:void . t)
)
"Conversions in SBCL for def-foreign-type are different than in def-function")
)
"Conversions in SBCL for def-foreign-type are different than in def-function")
@@
-286,3
+286,9
@@
supports takes advantage of this optimization."
((and (eq (car result) :pointer) (eq context :allocation) :pointer))
(t result))))
((and (eq (car result) :pointer) (eq context :allocation) :pointer))
(t result))))
+
+(defun make-lisp-name (name)
+ (let ((converted (substitute #\- #\_ name)))
+ (intern
+ #+case-sensitive converted
+ #-case-sensitive (string-upcase converted))))