Open mokshasoft opened 4 years ago
There's a few gaps in the gambit back end, and in fact it seems I've introduced a couple more now since moving some of the FFI code to C. I don't think it's able to deal with callbacks in general yet.
I'm not likely to spend much time maintaining the gambit back end for the moment (since I can't do everything, sorry!) but maybe @abdelq as the original author might be able to help?
Error when compiling an FFI function with a callback function of type PrimIO (), using Gambit but not Chez. A callback function of String -> PrimIO () seems to work better.
https://gist.github.com/mokshasoft/e0d3b39b2be5bbd766d93605a4d7e48d
Steps to Reproduce
Expected Behavior
If passing functions of type String -> PrimIO () to an FFI works it seems like passing functions of type PrimIO () should also work.
Observed Behavior
Both files pass the --check compile step. The Gambit CG cannot handle FFI callbacks of PrimIO () and prints error "Uncaught error: Bug1.idr:1:1--4:1:Can't pass argument of type %World to foreign function".