ffi:defcallback with cxx

hiro hiro hirohiro447 at gmail.com
Thu Nov 12 13:00:32 UTC 2015


Hello,

  I compiled ecl16.0.0 with option "--with-cxx".

  Then I use ffi:defcallback function like

    (ffi:defcallback yyyy :void () ..... )

  then compile-file
    (compile-file "xxxxx.lisp" :c-file "xxxxx.cpp" :system-p t)

  I received error message as follows
   (freebsd10.1 clang++)
    xxxxx.cpp:162:8: error: no matching function for call to
      'ecl_make_foreign_data'
      T0 =
ecl_make_foreign_data(ECL_SYM("POINTER-VOID",1381),0,ecl_callback_0)

  I try as follows

    in src/cmp/cmpcbk.lsp & src/new-cmp/cmpc-cbk.lsp   line 44
     from:
       ,(format nil "ecl_make_foreign_data(@':pointer-void,0,~a)" c-name)
     to:
       ,(format nil "ecl_make_foreign_data(@':pointer-void,0,(void*)~a)"
c-name)

  after that, I did not receive error message and ffi:callback work fine.

  Would you let me know what your thoughts are on this matter.

                                                   hirohiro447
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20151112/806b35bd/attachment.html>


More information about the ecl-devel mailing list