I have a problem defining callbacks that use user-defined types. After
quite a bit of debugging I traced it down to this:
(defcallback %callback-resize :void ((ee ecore-evas))
...)
ecore-evas is defined using defctype, I also have translate-from-foreign
and translate-to-foreign defined for it.
Now, everything works fine for normal function calls, types get
translated back and forth, but when the callback gets called, CFFI calls
translate-to-foreign on ee instead of the seemingly correct
translate-from-foreign. This obviously fails, as it's trying to
translate-to-foreign a foreign pointer.
I can't understand the defcallback macrology, so I can't trace this any
further -- am I doing something wrong, or is there a bug in CFFI?
--J.