Changelog for libffi-0.2.1
0.2.1 [2022.09.24]
- Add
sizeAndAlignmentOfCTypetoForeign.LibFFI.Base, which can be used to retrieve the size and alignment of aCType.
0.2 [2022.08.11]
-
The
libffilibrary now usesbracketinternally and should now be exception-safe. -
There is a now a
ghc-bundled-libfficabalflag that makes this library statically link against GHC's bundled copy oflibffirather than attempt to link against the systemlibffi. On the vast majority of GHCs, this is the most reasonable option, as linking against the systemlibffiis inherently fragile. As a result,+ghc-bundled-libffiis now the defalut setting. See theREADMEfor more discussion on this point. -
The definition of
Arghas changed:-newtype Arg = Arg { unArg :: IO (Ptr CType, Ptr CValue, IO ()) } +newtype Arg = Arg { unArg :: forall a. (Ptr CType -> Ptr CValue -> IO a) -> IO a } -
The definition of
RetTypehas changed:-data RetType a = RetType (Ptr CType) ((Ptr CValue -> IO ()) -> IO a) +newtype RetType a = RetType { unRetType :: (Ptr CType -> Ptr CValue -> IO ()) -> IO a }
0.1 [2009.03.17]
- Initial release.