[Openmcl-cvs-notifications] r14742 - /trunk/source/lib/foreign-types.lisp
gb at clozure.com
gb at clozure.com
Wed Apr 27 18:19:01 CDT 2011
Author: gb
Date: Wed Apr 27 18:19:01 2011
New Revision: 14742
Log:
Register the foreign type ordinal of :ARRAY foreign types.
Modified:
trunk/source/lib/foreign-types.lisp
Modified: trunk/source/lib/foreign-types.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/lib/foreign-types.lisp (original)
+++ trunk/source/lib/foreign-types.lisp Wed Apr 27 18:19:01 2011
@@ -1845,18 +1845,21 @@
(pair (cons type dims)))
(declare (dynamic-extent pair))
(ensure-foreign-type-bits type)
- (or (gethash pair (ftd-array-types *target-ftd*))
- (setf (gethash (cons type dims) (ftd-array-types *target-ftd*))
- =
- (make-foreign-array-type
- :element-type type
- :dimensions dims
- :alignment (foreign-type-alignment type)
- :bits (if (and (ensure-foreign-type-bits type)
- (every #'integerp dims))
- (* (align-offset (foreign-type-bits type)
- (foreign-type-alignment type))
- (reduce #'* dims))))))))
+ (let* ((atype =
+ (or (gethash pair (ftd-array-types *target-ftd*))
+ (setf (gethash (cons type dims) (ftd-array-types *targ=
et-ftd*))
+ =
+ (make-foreign-array-type
+ :element-type type
+ :dimensions dims
+ :alignment (foreign-type-alignment type)
+ :bits (if (and (ensure-foreign-type-bits type)
+ (every #'integerp dims))
+ (* (align-offset (foreign-type-bits typ=
e)
+ (foreign-type-alignmen=
t type))
+ (reduce #'* dims))))))))
+ (note-foreign-type-ordinal atype *target-ftd*)
+ atype)))
=
(def-foreign-type-translator * (to)
(let* ((ftd *target-ftd*)
More information about the Openmcl-cvs-notifications
mailing list