X-Git-Url: http://git.megacz.com/?p=ghc-base.git;a=blobdiff_plain;f=Foreign.hs;h=a26ffaf2bd401a5709622826252ee49a1d35c87a;hp=41c56a67d093a60ae9056c836e7d63f66c55638a;hb=7a97ec4b12e1fbec5505f82032cf4dc435b5a60c;hpb=9fa9bc17072a58c0bae2cce4764d38677e96ac29 diff --git a/Foreign.hs b/Foreign.hs index 41c56a6..a26ffaf 100644 --- a/Foreign.hs +++ b/Foreign.hs @@ -1,44 +1,44 @@ -{-# OPTIONS -fno-implicit-prelude #-} +{-# LANGUAGE NoImplicitPrelude #-} + ----------------------------------------------------------------------------- -- | -- Module : Foreign -- Copyright : (c) The FFI task force 2001 --- License : BSD-style (see the file libraries/core/LICENSE) +-- License : BSD-style (see the file libraries/base/LICENSE) -- -- Maintainer : ffi@haskell.org -- Stability : provisional -- Portability : portable -- --- $Id: Foreign.hs,v 1.3 2002/04/24 16:31:37 simonmar Exp $ --- -- A collection of data types, classes, and functions for interfacing --- with another programming language. This is only a convenience module --- in the future, but currently it has the additional task of hiding --- those entities exported from other modules, which are not part of the --- FFI proposal. +-- with another programming language. -- ----------------------------------------------------------------------------- module Foreign - ( module Data.Int - , module Data.Word - , module Foreign.Ptr - , module Foreign.ForeignPtr - , module Foreign.StablePtr + ( module Data.Bits + , module Data.Int + , module Data.Word + , module Foreign.Ptr + , module Foreign.ForeignPtr + , module Foreign.StablePtr , module Foreign.Storable - , module Foreign.Marshal.Alloc - , module Foreign.Marshal.Array - , module Foreign.Marshal.Error - , module Foreign.Marshal.Utils + , module Foreign.Marshal + + -- | 'unsafePerformIO' is exported here for backwards + -- compatibility reasons only. For doing local marshalling in + -- the FFI, use 'unsafeLocalState'. For other uses, see + -- 'System.IO.Unsafe.unsafePerformIO'. + , unsafePerformIO ) where +import Data.Bits import Data.Int import Data.Word import Foreign.Ptr import Foreign.ForeignPtr import Foreign.StablePtr import Foreign.Storable -import Foreign.Marshal.Alloc -import Foreign.Marshal.Array -import Foreign.Marshal.Error -import Foreign.Marshal.Utils +import Foreign.Marshal + +import System.IO.Unsafe (unsafePerformIO)