ctype-basetype now holds:

* a symbol naming the type for primitive types
* a list of ctypes for cstruct types
* another ctype for user-defined ctypes

svn: r12882

original commit: 6283205982477aec904affbffa8eab57d239dd31
This commit is contained in:
Eli Barzilay 2008-12-18 06:48:10 +00:00
parent ac1f721985
commit ad2792fb85

View File

@ -1500,7 +1500,7 @@
;; Used by set-ffi-obj! to get the actual value so it can be kept around ;; Used by set-ffi-obj! to get the actual value so it can be kept around
(define (get-lowlevel-object x type) (define (get-lowlevel-object x type)
(let ([basetype (ctype-basetype type)]) (let ([basetype (ctype-basetype type)])
(if basetype (if (ctype? basetype)
(let ([s->c (ctype-scheme->c type)]) (let ([s->c (ctype-scheme->c type)])
(get-lowlevel-object (if s->c (s->c x) x) basetype)) (get-lowlevel-object (if s->c (s->c x) x) basetype))
(values x type)))) (values x type))))