On Thu, Sep 26, 2002 at 04:40:42PM +0100, Alastair Reid wrote:
> 
> > Still hoping ;-) The discussion seemed to stop without reaching a
> > conclusion last time.
> 
> I thought it was concluded and the report changed such that all three
> compilers which implement the ffi spec can implement it without
> receiving a heart, lung and liver transplant.

I'm a bit puzzled.  Hugs has

        primitive newForeignPtr ::
                Ptr a -> FunPtr (Ptr a -> IO ()) -> IO (ForeignPtr a)

So what's wrong with

        newForeignPtr' :: Ptr a -> IO () -> IO (ForeignPtr a)
        newForeignPtr' p hf = do
                cf <- wrapFinalizer (const hf)
                newForeignPtr p cf

        foreign import ccall "wrapper" wrapFinalizer ::
                (Ptr a -> IO ()) -> IO (FunPtr (Ptr a -> IO ()))

_______________________________________________
FFI mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/ffi

Reply via email to