RE: Profiling makes FFI Marshalling of Doubles and Int64s fail

Thanks, including the header does fix it. I was lazy, as you can link quite easily against a DLL without having to provide a header; just the import decls suffice, plus -l and -L directives. I have had this problem (not using the -I directive) in a different guise, when trying to optimise. I've added the header to the foreign import decls e.g. foreign import "sqlite.h sqlite3_open" ... I left it out earlier because this version of the Sqlite library ships just as a DLL, with no accompanying header. I downloaded the source and found one I could use (I *hope* it's the right one), but it does make you wonder what C (and other) programmers who want to use the library are expected to do... Alistair. -----Original Message----- From: Roberto Zunino [mailto:zunino@di.unipi.it] <snipped> AFAICS, it seems as the asm code generator knows about the Haskell types and therefore knows how to fetch the bits correctly, while the via-C code generator simply uses the C function calls (without prototypes), so functions return types are defaulted to int. Also, you can try adding -Wall and see if the C compiler warns about this (mine does). The GHC user's guide (section 8.2.2) is also insightful. It seems that using C headers is pretty much required, or, as the guide itself says, "You're crazy not to do it". ;-) Regards, Roberto Zunino. ----------------------------------------- ***************************************************************** Confidentiality Note: The information contained in this message, and any attachments, may contain confidential and/or privileged material. It is intended solely for the person(s) or entity to which it is addressed. Any review, retransmission, dissemination, or taking of any action in reliance upon this information by persons or entities other than the intended recipient(s) is prohibited. If you received this in error, please contact the sender and delete the material from any computer. *****************************************************************
participants (1)
-
Bayley, Alistair