-#ifndef __PARALLEL_HASKELL__
---instance CCallable ForeignObj
---instance CCallable ForeignObj#
-
-makeForeignObj :: Addr -> IO ForeignObj
-makeForeignObj (A# obj) = IO ( \ s# ->
- case makeForeignObj# obj s# of
- (# s1#, fo# #) -> (# s1#, ForeignObj fo# #) )
-
-eqForeignObj :: ForeignObj -> ForeignObj -> Bool
---makeForeignObj :: Addr -> Addr -> IO ForeignObj
-writeForeignObj :: ForeignObj -> Addr -> IO ()
-
-writeForeignObj (ForeignObj fo#) (A# datum#) = IO ( \ s# ->
- case writeForeignObj# fo# datum# s# of { s1# -> (# s1#, () #) } )
-
-eqForeignObj mp1 mp2
- = unsafePerformIO (_ccall_ eqForeignObj mp1 mp2) /= (0::Int)
-
-instance Eq ForeignObj where
- p == q = eqForeignObj p q
- p /= q = not (eqForeignObj p q)
-#endif /* !__PARALLEL_HASKELL__ */
-\end{code}
-
-%*********************************************************
-%* *
-\subsection{Type @StablePtr@ and its operations}
-%* *
-%*********************************************************