[Openmcl-cvs-notifications] r10045 - /trunk/source/library/parse-ffi.lisp

gb at clozure.com gb at clozure.com
Tue Jul 15 09:36:30 EDT 2008


Author: gb
Date: Tue Jul 15 09:36:30 2008
New Revision: 10045

Log:
C 'sizeof' can be used on parenthesized expressions as well as types.
We don't yet handle expressions; ignore errors if parsing a type fails.

Modified:
    trunk/source/library/parse-ffi.lisp

Modified: trunk/source/library/parse-ffi.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/library/parse-ffi.lisp (original)
+++ trunk/source/library/parse-ffi.lisp Tue Jul 15 09:36:30 2008
@@ -255,7 +255,7 @@
            (operands (cdr expression))
            (noperands (length operands)))
       (case operator
-        (c::resolve-type (let* ((foreign-type  (parse-c-ffi-type (car oper=
ands))))
+        (c::resolve-type (let* ((foreign-type  (ignore-errors (parse-c-ffi=
-type (car operands)))))
                            (when foreign-type
                              (setf (cdr expression) nil
                                    (car expression) foreign-type)
@@ -280,7 +280,7 @@
 		  (c::+ operand)
                   (c::~ (lognot operand))
                   (c::size-of
-                   (let* ((bits (ensure-foreign-type-bits operand)))
+                   (let* ((bits (ignore-errors (ensure-foreign-type-bits o=
perand))))
                      (when bits
                        (ash (+ bits 7) -3))))
                   (t



More information about the Openmcl-cvs-notifications mailing list