Hallo,

On 7/8/07, Robin Lee Powell <[EMAIL PROTECTED]> wrote:

(I was ordered to complain by the Cowan)

I have code that calls (with easyffi) a C library function.  One
argument is a function.  I've defined, with define-external, the
scheme function play.  I pass a pointer to play to the C library
function with (location play).  This breaks if play is not defined
on the same Scheme source file as the C library function call.

I'll let jcowan speak to the details, as I don't get it.

    18:17 < jcowan> You need (location play) because that's the only
    way to pass a C pointer to a function (afaik)


    I don't know if this applies to the easyFFI, but one can use the
functions defined with (define-external) in (foreign-lambda*) bodies,
which have been useful to me.

Cheers,
--
-alex
http://www.ventonegro.org/


_______________________________________________
Chicken-users mailing list
Chicken-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to