[cffi-devel] Re: cffi-uffi-compat, cl-gd, and openmcl

Luis Oliveira luismbo at gmail.com
Sun Oct 2 12:50:03 UTC 2005


bryan d.o'connor <bryan-lisp at lunch.org> writes:
> i'm trying to get cl-gd up and running on openmcl 1.0-rc1
> (darwin32) using cffi-uffi-compat (cffi-luis branch).
>
> some of the cl-gd tests crash my lisp, i think i've boiled
> it down to this (hopefully valid) test case which does work
> in uffi:

> (def-struct a (x :int) (y :int))
>
> (let ((array (allocate-foreign-object 'a 3)))
>    (loop for i below 3
>          do (setf (get-slot-value (deref-array array '(:array a) i)
>          a 'x) 1))
>    (get-slot-value (deref-array array '(:array a) 2) 'a 'x))
>
> the (setf ...) SIGSEGVs in %mem-set.
>
> i see similar results with sbcl 0.9.5.2.

Thanks for bug report and test case! This should be fixed now. Let me
know if something is still broken though. Changelog follows.


Sun Oct  2 13:24:16 WEST 2005  Luis Oliveira <loliveira at common-lisp.net>
  * pointer-eq and bug fixes
  
  - New CFFI-SYS primitive: POINTER-EQ. Implemented for all Lisps except
    ECL and GCL. Exported it from the CFFI package.
  - Added POINTER-EQ to the user manual.
  - Bug fix: dereferencing an aggregate type should return a pointer to
    it, not dereference it as a :pointer.
  - Bug fix: mem-aref setf expander was returning a bogus getter (mem-ref
    instead of mem-aref).
  - Two regressions tests for the bugs above: DEREF.AGGREGATE and
    DEREF.ARRAY-OF-AGGREGATES.

Tue Sep 27 00:41:41 WEST 2005  Luis Oliveira <loliveira at common-lisp.net>
  * New test: void callback

-- 
Luis Oliveira
luismbo (@) gmail (.) com
Equipa Portuguesa do Translation Project
http://www.iro.umontreal.ca/translation/registry.cgi?team=pt




More information about the cffi-devel mailing list