ANN: C->Haskell 0.8.1
Manuel M. T. Chakravarty
chak@cse.unsw.edu.au
Mon, 19 Feb 2001 15:53:41 +1100
qrczak@knm.org.pl (Marcin 'Qrczak' Kowalczyk) wrote,
> Fri, 16 Feb 2001 18:42:08 +1100, Manuel M. T. Chakravarty <chak@cse.unsw.edu.au> pisze:
>
> > I thought that I had fixed all this for Gtk+HS. (In fact,
> > all Gtk+HS examples are running fine with GHC 4.08 on my
> > machine.) Have a look at the file gtk+hs/gtk/ghcRtsAux.c.
> > It defines rts_mkPtr in a somewhat nasty way, but it works :-)
>
> I've seen the hack, but on another box freshly installed ghc-4.08.2,
> c2hs from tarball and gtk+hs from tarball did not work (linker can't
> find rts_mkPtr). I must see if ghcRtsAux.c is compied at all there.
Strange - meanwhile, I have put release 0.10.4 out. Among
other things, it finally has an `install' target.
> > PS: With the current Gtk+HS source in CVS, all Gtk+HS
> > examples as well as the iHaskell library and its three
> > examples should now all work again. I tested it all on
> > my machine.
>
> ghc version check fails on 4.11 (it should be lexicographic comparison
> of version number components, not conjunction of independent
> comparisons).
>
> Checking for buggy readXXXOffAddr (for ghc-4.03..4.06) is now
> unnecessary as gtk+hs requires ghc-4.08.1 anyway.
Ok, I fixed these.
> > PS: With the current Gtk+HS source in CVS, all Gtk+HS
> > examples as well as the iHaskell library and its three
> > examples should now all work again.
>
> They compile but they don't run correctly on ghc-4.11. It's because
> GMarsh.writeCharOffAddr does not simulate Addr.writeCharOffAddr when
> Char is wide, because instance Storable Char treats Char as wide.
> You need to cast to CChar, Word8, or Int8 (be careful with sign
> extension).
`castCCharToChar' and `castCharToCChar' should be sufficient
here, right? I have added them in the 0.10.4 release.
Thanks,
Manuel