diff options
Diffstat (limited to 'libraries/ghci/GHCi/FFI.hsc')
-rw-r--r-- | libraries/ghci/GHCi/FFI.hsc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libraries/ghci/GHCi/FFI.hsc b/libraries/ghci/GHCi/FFI.hsc index 36619aeb5d..7fd75bb8e4 100644 --- a/libraries/ghci/GHCi/FFI.hsc +++ b/libraries/ghci/GHCi/FFI.hsc @@ -12,6 +12,7 @@ module GHCi.FFI ( FFIType(..) , FFIConv(..) + , C_ffi_cif , prepForeignCall , freeForeignCallInfo ) where @@ -47,7 +48,7 @@ prepForeignCall :: FFIConv -> [FFIType] -- arg types -> FFIType -- result type - -> IO (Ptr ()) -- token for making calls (must be freed by caller) + -> IO (Ptr C_ffi_cif) -- token for making calls (must be freed by caller) prepForeignCall cconv arg_types result_type = do let n_args = length arg_types @@ -60,7 +61,7 @@ prepForeignCall cconv arg_types result_type = do then throwIO (ErrorCall ("prepForeignCallFailed: " ++ show r)) else return (castPtr cif) -freeForeignCallInfo :: Ptr () -> IO () +freeForeignCallInfo :: Ptr C_ffi_cif -> IO () freeForeignCallInfo p = do free ((#ptr ffi_cif, arg_types) p) free p |