X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fghci%2FLibFFI.hsc;h=86714effa42f3b4bfc4331719ce2b33190404407;hp=7f24d01a7d2b945c3b09a09c2602a0d73c8203bc;hb=16b9e80dc14db24509f051f294b5b51943285090;hpb=e0fcf61dca4dfac99cb5417e1bc4cbee18822cf2 diff --git a/compiler/ghci/LibFFI.hsc b/compiler/ghci/LibFFI.hsc index 7f24d01..86714ef 100644 --- a/compiler/ghci/LibFFI.hsc +++ b/compiler/ghci/LibFFI.hsc @@ -16,13 +16,12 @@ module LibFFI ( import TyCon import ForeignCall import Panic -import Outputable +-- import Outputable import Constants import Foreign import Foreign.C import Text.Printf -import Control.Exception ---------------------------------------------------------------------------- @@ -45,7 +44,7 @@ prepForeignCall cconv arg_types result_type let res_ty = primRepToFFIType result_type r <- ffi_prep_cif cif abi (fromIntegral n_args) res_ty arg_arr if (r /= fFI_OK) - then throwDyn (InstallationError + then ghcError (InstallationError (printf "prepForeignCallFailed: %d" (show r))) else return cif @@ -54,7 +53,8 @@ convToABI CCallConv = fFI_DEFAULT_ABI #ifdef mingw32_HOST_OS convToABI StdCallConv = fFI_STDCALL #endif -convToABI _ = panic "convToABI: convention not supported" +-- unknown conventions are mapped to the default, (#3336) +convToABI _ = fFI_DEFAULT_ABI -- c.f. DsForeign.primTyDescChar primRepToFFIType :: PrimRep -> Ptr C_ffi_type