On Mon, Jan 06, 2003 at 03:42:27PM -0500, R. Legere wrote: > I ran into a possible problem while testing some ffi code. > This is with hugs compiled for cygwin or with the windows (msi) version. > Hugs says: sizeOf x::CDouble is 4, > wheras 'C' says sizeof(double) is 8. > > I ~~think~~ I see what the problem is with sizeOf. I am using the > new hierarchical libs, and it defines sizeOf by hardcoding the sizes rather > then asking 'c' like the previous versions did. And sizeOf Double is coded > as 4 in libraries\Foreign\Storable.hs
Thanks for the report. It's a bug on all architectures, now fixed in CVS. (The sizes are computed in the configuration process, and there was some confusion about doubles.) A workaround is to change that 4 to an 8. > As a side note, is alignPtr implemented somewhere? Not in the Nov 2002 release. The CVS version has alignPtr :: Ptr a -> Int -> Ptr a alignPtr p n = p `plusPtr` ((n - ptrToInt p `mod` n) `mod` n) _______________________________________________ Hugs-Bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/hugs-bugs
