cvs commit: hugs98/lib Prelude.hs hugs98/lib/exts Foreign.hs Int.hs Word.hs hugs98/src builtin.c connect.h ffi.c iomonad.c storage.c storage.h type.c

reid 2002/05/18 09:22:11 PDT Modified files: lib Prelude.hs lib/exts Foreign.hs Int.hs Word.hs src builtin.c connect.h ffi.c iomonad.c storage.c storage.h type.c Log: Added many of the ffi types (FunPtr, Ptr, etc) to Hugs and wired the {Int,Word}{8,16,32,64} types more firmly into Prelude/compiler We still lack ForeignPtr. What is trivial for GHC with its threads and all the rest of it is a scary proposition for the rest of us. (Specifically, I don't know if it is safe to start evaluating finalizers at all places that the GC might be invoked. Maybe the eval function could be changed to consult a list of finalizers now and then - that would be somewhat gross but safe.) The 64 bit arithmetic types lack any operations. Next step: update the code generation part of ffi, implement the currently unsupported foreign import decl and see if I can port the foreign export dynamic (or whatever it is called) sparc code from GHCi into Hugs. Revision Changes Path 1.23 +17 -3 hugs98/lib/Prelude.hs 1.3 +5 -3 hugs98/lib/exts/Foreign.hs 1.3 +10 -23 hugs98/lib/exts/Int.hs 1.6 +6 -17 hugs98/lib/exts/Word.hs 1.22 +89 -8 hugs98/src/builtin.c 1.35 +12 -2 hugs98/src/connect.h 1.5 +8 -2 hugs98/src/ffi.c 1.25 +40 -4 hugs98/src/iomonad.c 1.40 +3 -3 hugs98/src/storage.c 1.36 +4 -2 hugs98/src/storage.h 1.47 +22 -2 hugs98/src/type.c
participants (1)
-
Alastair Reid