Commit 21a8a75d authored by simonmar's avatar simonmar
Browse files

[project @ 2002-09-06 13:51:38 by simonmar]

Disallow 'ForeignPtr' as an FFI argument type.  It has been deprecated
for some time (withForeignPtr is the approved way to pass a
ForeignPtr).  The changes I'm about to make to ForeignPtr will stop it
working anyhow.
parent f8e722a4
......@@ -43,7 +43,7 @@ import TcType ( Type, tcSplitFunTys, tcSplitTyConApp_maybe,
isFFIArgumentTy, isFFIImportResultTy,
isFFIExportResultTy, isFFILabelTy,
isFFIExternalTy, isFFIDynArgumentTy,
isFFIDynResultTy, isForeignPtrTy
isFFIDynResultTy,
)
import ForeignCall ( CExportSpec(..), CCallTarget(..), CCallConv(..),
isDynamicTarget, isCasmTarget )
......@@ -251,11 +251,7 @@ checkForeignArgs pred tys
= mapNF_Tc go tys `thenNF_Tc_`
returnNF_Tc ()
where
go ty = check (pred ty) (illegalForeignTyErr argument ty) `thenNF_Tc_`
warnTc (isForeignPtrTy ty) foreignPtrWarn
--
foreignPtrWarn =
text "`ForeignPtr' as argument type in a foreign import is deprecated"
go ty = check (pred ty) (illegalForeignTyErr argument ty)
------------ Checking result types for foreign calls ----------------------
-- Check that the type has the form
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment