ross [Mon, 5 Jan 2004 17:44:30 +0000 (17:44 +0000)]
[project @ 2004-01-05 17:44:30 by ross]
Make runST(U)Array work with Hugs. This includes explicitly using
unsafeFreezeSTArray rather than unsafeFreeze, to avoid relying on rules.
ross [Mon, 5 Jan 2004 16:47:09 +0000 (16:47 +0000)]
[project @ 2004-01-05 16:47:09 by ross]
Change the drawing of trees so that long labels work better.
The new drawings are narrower but a little longer than before.
simonmar [Mon, 5 Jan 2004 16:03:34 +0000 (16:03 +0000)]
[project @ 2004-01-05 16:03:34 by simonmar]
Add runSTArray and runSTUArray, as suggested by John Meacham.
runSTUArray showed up an interesting deficiency in the type system
(see comments for details).
ross [Mon, 5 Jan 2004 10:07:52 +0000 (10:07 +0000)]
[project @ 2004-01-05 10:07:52 by ross]
doc tidy-ups
ross [Mon, 5 Jan 2004 10:07:25 +0000 (10:07 +0000)]
[project @ 2004-01-05 10:07:25 by ross]
doc tweak
panne [Fri, 2 Jan 2004 19:03:14 +0000 (19:03 +0000)]
[project @ 2004-01-02 19:03:14 by panne]
Annual copyright update
panne [Mon, 29 Dec 2003 17:16:42 +0000 (17:16 +0000)]
[project @ 2003-12-29 17:16:42 by panne]
Updated my email address
simonmar [Tue, 23 Dec 2003 13:58:18 +0000 (13:58 +0000)]
[project @ 2003-12-23 13:58:17 by simonmar]
- Fix up mingw build after changes to hGetBuf etc.
I don't think that hGetBufNonBlocking works correctly on Windows,
because there doesn't seem to be a non-blocking read primitive. I
haven't tested it, however.
- Clean up Unix versions of the low-level read/write functions in
Handle.hs. Now that these aren't used on Windows, they can be
made simpler.
simonmar [Tue, 23 Dec 2003 12:35:34 +0000 (12:35 +0000)]
[project @ 2003-12-23 12:35:34 by simonmar]
Fix yet another bug in hGetBuf/hGetBufNonBlocking
simonmar [Mon, 22 Dec 2003 12:41:52 +0000 (12:41 +0000)]
[project @ 2003-12-22 12:41:52 by simonmar]
add fillReadBufferWithoutBlocking (required for fixed
hGetBufNonBlocking implementation in IO.hs rev. 1.20)
simonmar [Mon, 22 Dec 2003 12:23:35 +0000 (12:23 +0000)]
[project @ 2003-12-22 12:23:35 by simonmar]
- Fix hGetBuf & hGetBufNonBlocking. There were various bugs in these
two functions, so I did a complete rewrite (again). They are quite
hard to get right it seems, so I've put together a test case
(shortly to be added to the test suite).
- Change to the semantics of hWaitForInput: when given a negative
time argument, this function will wait indefinitely for input to
arrive. It will wait in a thread-friendly way, unlike when the
time argument is positive. The docs now admit that hWaitForInput
is buggy when given a positive time value.
hWaitForInput h (-1) is now the approved way to wait for input
before calling hGetBufNonBlocking.
MERGE TO STABLE (hGetBuf is broken in 6.2).
simonmar [Mon, 22 Dec 2003 10:56:42 +0000 (10:56 +0000)]
[project @ 2003-12-22 10:56:42 by simonmar]
performGC should really do a major GC - this was broken at some point.
sof [Wed, 17 Dec 2003 17:15:12 +0000 (17:15 +0000)]
[project @ 2003-12-17 17:15:12 by sof]
merge rev. 1.13.2.1
sof [Wed, 17 Dec 2003 17:13:47 +0000 (17:13 +0000)]
[project @ 2003-12-17 17:13:47 by sof]
merge rev 1.48.2.4
simonmar [Tue, 16 Dec 2003 16:54:42 +0000 (16:54 +0000)]
[project @ 2003-12-16 16:54:42 by simonmar]
Add Show instance for Set
simonmar [Tue, 16 Dec 2003 16:54:12 +0000 (16:54 +0000)]
[project @ 2003-12-16 16:54:12 by simonmar]
Add Show instance for FiniteMap
panne [Mon, 15 Dec 2003 17:59:05 +0000 (17:59 +0000)]
[project @ 2003-12-15 17:59:05 by panne]
Fixed #ifdefs for Cygwin
sof [Fri, 12 Dec 2003 18:29:26 +0000 (18:29 +0000)]
[project @ 2003-12-12 18:29:26 by sof]
showIntAtBase:
- implementation uses quotRem [where the remainder isn't always
non-negative -- ditto for divMod, so there's no trivial fix],
negative bases aren't supported; catch this.
- separate argument validity checking from actual digitisation.
ralf [Sat, 6 Dec 2003 17:48:49 +0000 (17:48 +0000)]
[project @ 2003-12-06 17:48:49 by ralf]
Added Data instances for triples and quadruples.
panne [Thu, 4 Dec 2003 18:25:51 +0000 (18:25 +0000)]
[project @ 2003-12-04 18:25:51 by panne]
Synched #ifdefs, but only 90% sure if I got it right...
simonmar [Fri, 28 Nov 2003 11:08:54 +0000 (11:08 +0000)]
[project @ 2003-11-28 11:08:54 by simonmar]
Doc wibble
simonmar [Wed, 26 Nov 2003 10:00:09 +0000 (10:00 +0000)]
[project @ 2003-11-26 10:00:09 by simonmar]
oops, revert accidental commit
simonmar [Wed, 26 Nov 2003 09:55:26 +0000 (09:55 +0000)]
[project @ 2003-11-26 09:55:22 by simonmar]
Declare some libraries to be "stable".
ralf [Sun, 23 Nov 2003 22:19:35 +0000 (22:19 +0000)]
[project @ 2003-11-23 22:19:35 by ralf]
Added the missing Data instance for Either.
ralf [Sun, 23 Nov 2003 12:25:03 +0000 (12:25 +0000)]
[project @ 2003-11-23 12:25:02 by ralf]
Refactored some alias for generic builders and readers.
Worked out some interested stuff for reification of type structures.
ralf [Sun, 23 Nov 2003 12:23:49 +0000 (12:23 +0000)]
[project @ 2003-11-23 12:23:49 by ralf]
Added some trivial observers for type representations.
sof [Fri, 21 Nov 2003 16:24:44 +0000 (16:24 +0000)]
[project @ 2003-11-21 16:24:44 by sof]
code tidyup
panne [Sat, 15 Nov 2003 22:31:16 +0000 (22:31 +0000)]
[project @ 2003-11-15 22:31:16 by panne]
Decouple packages a bit more again: The prologue of the combined index is now
generated via shell magic from the package prologues. As a nice side effect,
some autoconf magic is gone, so configure.ac is effectively empty now (but not
for long... :-)
panne [Thu, 13 Nov 2003 19:23:12 +0000 (19:23 +0000)]
[project @ 2003-11-13 19:23:12 by panne]
Markup fix
ross [Thu, 13 Nov 2003 14:43:58 +0000 (14:43 +0000)]
[project @ 2003-11-13 14:43:58 by ross]
Hugs-only tweak
simonmar [Tue, 11 Nov 2003 11:50:53 +0000 (11:50 +0000)]
[project @ 2003-11-11 11:50:52 by simonmar]
Convert to use Haddock 0.6's combined contents/index functionality for
the hierarchical library docs.
HEADS UP: you need Haddock 0.6 in order to run 'make html' in
fptools/libraries now.
sof [Mon, 10 Nov 2003 15:55:13 +0000 (15:55 +0000)]
[project @ 2003-11-10 15:55:13 by sof]
ALL_DIRS: added Control/Parallel
sof [Mon, 10 Nov 2003 15:54:55 +0000 (15:54 +0000)]
[project @ 2003-11-10 15:54:55 by sof]
brought into the hier-lib world; stripped away outdated code & comments
simonmar [Mon, 10 Nov 2003 15:32:43 +0000 (15:32 +0000)]
[project @ 2003-11-10 15:32:43 by simonmar]
Change the documentation title from "Haskell Core Libraries" to "Haskell Hierarchical Libraries".
simonmar [Thu, 6 Nov 2003 17:34:00 +0000 (17:34 +0000)]
[project @ 2003-11-06 17:34:00 by simonmar]
Doc wibbles
ross [Thu, 6 Nov 2003 12:50:24 +0000 (12:50 +0000)]
[project @ 2003-11-06 12:50:22 by ross]
import Prelude if haddocking
ross [Wed, 5 Nov 2003 15:05:12 +0000 (15:05 +0000)]
[project @ 2003-11-05 15:05:12 by ross]
doc updates for mallocForeignPtr and friends
simonmar [Wed, 5 Nov 2003 10:43:10 +0000 (10:43 +0000)]
[project @ 2003-11-05 10:43:10 by simonmar]
Better documentation for unsafeThaw, unsafeFreeze.
simonmar [Wed, 5 Nov 2003 09:58:01 +0000 (09:58 +0000)]
[project @ 2003-11-05 09:58:01 by simonmar]
Fix a memory leak in __hscore_readdir() which meant that one struct
dirent was leaked at the end of each directory read.
Bug-reported-by: David Roundy <droundy@abridgegame.org>
What-a-great-system: Valgrind
ross [Tue, 4 Nov 2003 21:59:23 +0000 (21:59 +0000)]
[project @ 2003-11-04 21:59:23 by ross]
Hugs only: add finalizers with environments, as per the latest FFI draft.
ralf [Sun, 2 Nov 2003 17:52:09 +0000 (17:52 +0000)]
[project @ 2003-11-02 17:52:09 by ralf]
Minor extension to enable rebuild of Strafunski.
panne [Sun, 2 Nov 2003 16:30:16 +0000 (16:30 +0000)]
[project @ 2003-11-02 16:30:16 by panne]
* Added workaround for broken sigemptyset
* Use #if, not #ifdef for feature tests
* Nuked CVS keyword
panne [Sun, 2 Nov 2003 00:06:23 +0000 (00:06 +0000)]
[project @ 2003-11-02 00:06:23 by panne]
Added an extremely ugly workaround for the broken sigfillset macro on
OpenBSD, which misses a cast. Is there a better way?
Probably merge to STABLE.
sof [Thu, 30 Oct 2003 18:51:26 +0000 (18:51 +0000)]
[project @ 2003-10-30 18:51:26 by sof]
drop uses of __MINGW32__, no longer needed
stolz [Mon, 27 Oct 2003 12:09:44 +0000 (12:09 +0000)]
[project @ 2003-10-27 12:09:44 by stolz]
Avoid setting O_NONBLOCK when already set.
ross [Mon, 27 Oct 2003 09:56:11 +0000 (09:56 +0000)]
[project @ 2003-10-27 09:56:11 by ross]
unswap UNBLOCK/SETMASK (merge to STABLE)
sof [Tue, 21 Oct 2003 14:32:44 +0000 (14:32 +0000)]
[project @ 2003-10-21 14:32:43 by sof]
appease the GHC bigwigs
simonmar [Tue, 21 Oct 2003 14:00:20 +0000 (14:00 +0000)]
[project @ 2003-10-21 14:00:20 by simonmar]
oops, revert parts of previous commit that weren't supposed to be included.
simonmar [Tue, 21 Oct 2003 13:57:39 +0000 (13:57 +0000)]
[project @ 2003-10-21 13:57:39 by simonmar]
Fix bug in hGetBufNonBlocking that meant it would sometimes block.
simonmar [Tue, 21 Oct 2003 13:31:44 +0000 (13:31 +0000)]
[project @ 2003-10-21 13:31:44 by simonmar]
- Add _LE duals of the _GE functions
- Add minFM and maxFM
From: George Russell <ger@tzi.de>
simonmar [Tue, 21 Oct 2003 13:27:13 +0000 (13:27 +0000)]
[project @ 2003-10-21 13:27:13 by simonmar]
Make peekArray0 run in constant stack-space by testing the length of
the array first, then calling peekArray (which works backwards from
the end so it can be tail-recursive).
simonmar [Tue, 21 Oct 2003 13:24:31 +0000 (13:24 +0000)]
[project @ 2003-10-21 13:24:31 by simonmar]
Make the GHC implementation of peekCString run in constant stack-space
by checking the length of the array first and then working backwards
from the end. Interestingly, this version is faster than the original.
panne [Mon, 20 Oct 2003 20:00:25 +0000 (20:00 +0000)]
[project @ 2003-10-20 20:00:25 by panne]
Again: Fixed previous commit. Our QA department must really be on an
extended vacation... :-]
simonmar [Mon, 20 Oct 2003 15:56:52 +0000 (15:56 +0000)]
[project @ 2003-10-20 15:56:52 by simonmar]
Convert Unicode.hsc to a plain .hs file to fix bootstrapping problems.
simonmar [Mon, 20 Oct 2003 13:17:24 +0000 (13:17 +0000)]
[project @ 2003-10-20 13:16:58 by simonmar]
Comment use of $(HavePosixRegex)
ross [Mon, 20 Oct 2003 12:31:00 +0000 (12:31 +0000)]
[project @ 2003-10-20 12:31:00 by ross]
add System.Posix.Signals to Hugs
ross [Fri, 17 Oct 2003 16:48:43 +0000 (16:48 +0000)]
[project @ 2003-10-17 16:48:43 by ross]
Hugs only: add most of the rest of System.Posix
(I wonder why SIG_UNBLOCK and SIG_SETMASK are switched in HsBase.h)
ross [Thu, 16 Oct 2003 16:26:43 +0000 (16:26 +0000)]
[project @ 2003-10-16 16:26:43 by ross]
fix a couple of id references in haddock docs
ross [Thu, 16 Oct 2003 00:18:34 +0000 (00:18 +0000)]
[project @ 2003-10-16 00:18:34 by ross]
add withArgs and withProgName to Hugs.
No change for GHC, but does change the docs, so please merge to STABLE.
sof [Mon, 13 Oct 2003 05:23:53 +0000 (05:23 +0000)]
[project @ 2003-10-13 05:23:53 by sof]
mingw tweaks + add cbits/consUtils.c to CBITS
sof [Mon, 13 Oct 2003 05:22:59 +0000 (05:22 +0000)]
[project @ 2003-10-13 05:22:59 by sof]
support CFoo iff HTYPE_FOO_T is defined
sof [Mon, 13 Oct 2003 05:21:54 +0000 (05:21 +0000)]
[project @ 2003-10-13 05:21:37 by sof]
more mind-numbing CPP tweaking
sof [Mon, 13 Oct 2003 05:20:37 +0000 (05:20 +0000)]
[project @ 2003-10-13 05:20:37 by sof]
extra_libraries: win32 CPP tweak
sof [Mon, 13 Oct 2003 05:09:40 +0000 (05:09 +0000)]
[project @ 2003-10-13 05:09:40 by sof]
prev commit too strict wrt mingw
sof [Mon, 13 Oct 2003 03:21:20 +0000 (03:21 +0000)]
[project @ 2003-10-13 03:21:20 by sof]
cope if regex.h isn't supported by target
sof [Mon, 13 Oct 2003 03:19:48 +0000 (03:19 +0000)]
[project @ 2003-10-13 03:19:48 by sof]
make it useable with msvc + gcc-mingw
stolz [Thu, 9 Oct 2003 14:01:46 +0000 (14:01 +0000)]
[project @ 2003-10-09 14:01:46 by stolz]
Fix flipped arguments to sigprocmask in getSignalMask.
Noticed by: Shawn P. Garbett
stolz [Thu, 9 Oct 2003 13:59:33 +0000 (13:59 +0000)]
[project @ 2003-10-09 13:59:33 by stolz]
FreeBSD 4.X has an emtpy wctype.h, so test one of the affected
functions in Unicode.hsc if it's really there.
sof [Tue, 7 Oct 2003 16:56:33 +0000 (16:56 +0000)]
[project @ 2003-10-07 16:56:33 by sof]
peekCString{Len}: tweak GHC impls (why are these provided anyway?)
- Do as for Foreign.Marshal.Array.peekArray and read in length-bounded
string back-to-front.
- force evaluation of CChar->Char conversions.
merge to STABLE.
simonpj [Mon, 6 Oct 2003 13:14:36 +0000 (13:14 +0000)]
[project @ 2003-10-06 13:14:36 by simonpj]
MERGE TO STABLE
Fix trivial lexing bug involving leading zeros
045.4
was lexing as an Int, with a trailing ".4"
The test is lib/Lex/lexNum
wolfgang [Wed, 1 Oct 2003 11:00:20 +0000 (11:00 +0000)]
[project @ 2003-10-01 11:00:20 by wolfgang]
Add runInUnboundThread to the export list
wolfgang [Wed, 1 Oct 2003 10:57:44 +0000 (10:57 +0000)]
[project @ 2003-10-01 10:57:44 by wolfgang]
New implementation & changed type signature of forkProcess
forkProcess now has the following type:
forkProcess :: IO () -> IO ProcessID
forkProcessAll has been removed as it is unimplementable in the threaded RTS.
forkProcess using the old type (IO (Maybe ProcessID)) was impossible to
implement correctly in the non-threaded RTS and very hard to implement
in the threaded RTS.
The new type signature allows a clean and simple implementation.
panne [Fri, 26 Sep 2003 09:26:13 +0000 (09:26 +0000)]
[project @ 2003-09-26 09:26:13 by panne]
Saving/restoring termios is only done for GHC
panne [Thu, 25 Sep 2003 15:14:44 +0000 (15:14 +0000)]
[project @ 2003-09-25 15:14:44 by panne]
To fix dynamic linking issues with Hugs, access saved_termios via
getter/setter.
sof [Thu, 25 Sep 2003 14:44:36 +0000 (14:44 +0000)]
[project @ 2003-09-25 14:44:36 by sof]
[win32]getCPUTime:
comments + reduce fromIntegral use. No change in functionality.
simonmar [Wed, 24 Sep 2003 14:01:18 +0000 (14:01 +0000)]
[project @ 2003-09-24 14:01:18 by simonmar]
Add foldFM_GE, fmToList_GE, keysFM_GE, eltsFM_GE. (contributed by
Tomasz Zielonka via George Russell).
malcolm [Wed, 24 Sep 2003 13:26:08 +0000 (13:26 +0000)]
[project @ 2003-09-24 13:26:08 by malcolm]
Missing dependency.
simonmar [Wed, 24 Sep 2003 11:36:24 +0000 (11:36 +0000)]
[project @ 2003-09-24 11:36:24 by simonmar]
Add some realToFrac rules for CFloat,CDouble and CLDouble, so that
eg. realToFrac :: CDouble -> Double turns into a no-op.
simonmar [Wed, 24 Sep 2003 11:06:54 +0000 (11:06 +0000)]
[project @ 2003-09-24 11:06:54 by simonmar]
Move forkOS_createThread into the RTS so its implementation can be
dependent on RTS_SUPPORTS_THREADS, which means we can provide a stub
implementation in the !RTS_SUPPORTS_THREADS case, and hence not depend
on pthread_create, which requires -lpthread. The upshot is that GHCi
now works again when !RTS_SUPPORTS_THREADS.
simonmar [Wed, 24 Sep 2003 10:41:11 +0000 (10:41 +0000)]
[project @ 2003-09-24 10:41:11 by simonmar]
Add non-blocking versions of hGetBuf, hPutBuf.
simonmar [Wed, 24 Sep 2003 10:32:12 +0000 (10:32 +0000)]
[project @ 2003-09-24 10:32:12 by simonmar]
If we change the terminal settings as a result of hSetBuffering or
hSetEcho, then restore them again in hs_exit(). This is just good
citizenship on Unixy platforms.
We *don't* just automatically save the terminal settings and restore
them at the end, because that would prevent implementing stty-like
programs in Haskell. This scheme is a compromise that hopefully DTRT
in most cases.
sof [Tue, 23 Sep 2003 18:59:43 +0000 (18:59 +0000)]
[project @ 2003-09-23 18:59:43 by sof]
h{Get,Put}NonBlocking: win32 impl
sof [Tue, 23 Sep 2003 17:33:12 +0000 (17:33 +0000)]
[project @ 2003-09-23 17:33:12 by sof]
createPipe, createPipeEx: commented out exports (doesn't appear to be defined anywhere)
sof [Tue, 23 Sep 2003 16:18:03 +0000 (16:18 +0000)]
[project @ 2003-09-23 16:18:03 by sof]
[win32]: make it compile
simonmar [Tue, 23 Sep 2003 16:13:59 +0000 (16:13 +0000)]
[project @ 2003-09-23 16:13:59 by simonmar]
Haddock fix.
simonmar [Tue, 23 Sep 2003 13:26:30 +0000 (13:26 +0000)]
[project @ 2003-09-23 13:26:30 by simonmar]
- Add h{Get,Put}BufNonBlocking
- optimise hGetBuf/hPutBuf so that they use the buffer more. Lots of
small hGetBufs will now use the read buffer, rather than repeatedly
calling into the OS.
simonmar [Tue, 23 Sep 2003 13:23:58 +0000 (13:23 +0000)]
[project @ 2003-09-23 13:23:58 by simonmar]
micro-optimisation
panne [Tue, 23 Sep 2003 10:09:17 +0000 (10:09 +0000)]
[project @ 2003-09-23 10:09:17 by panne]
Unbreak Show instance for Ptr caused by the changes to showHex
merge to STABLE
wolfgang [Mon, 22 Sep 2003 13:27:19 +0000 (13:27 +0000)]
[project @ 2003-09-22 13:27:19 by wolfgang]
Really make the bound threads stuff compile this time (sorry).
ross [Mon, 22 Sep 2003 11:11:54 +0000 (11:11 +0000)]
[project @ 2003-09-22 11:11:54 by ross]
cosmetic: move comments inside #ifdefs to avoid confusing people (like
Hugs users) who look at the preprocessed output.
wolfgang [Mon, 22 Sep 2003 10:20:06 +0000 (10:20 +0000)]
[project @ 2003-09-22 10:20:06 by wolfgang]
fix some embarassing typos in the previous commit
wolfgang [Sun, 21 Sep 2003 22:20:57 +0000 (22:20 +0000)]
[project @ 2003-09-21 22:20:57 by wolfgang]
Bound Threads
=============
Introduce a way to use foreign libraries that rely on thread local state
from multiple threads (mainly affects the threaded RTS).
See the file threads.tex in CVS at haskell-report/ffi/threads.tex
(not entirely finished yet) for a definition of this extension. A less formal
description is also found in the documentation of Control.Concurrent.
The changes mostly affect the THREADED_RTS (./configure --enable-threaded-rts),
except for saving & restoring errno on a per-TSO basis, which is also necessary
for the non-threaded RTS (a bugfix).
Detailed list of changes
------------------------
- errno is saved in the TSO object and restored when necessary:
ghc/includes/TSO.h, ghc/rts/Interpreter.c, ghc/rts/Schedule.c
- rts_mainLazyIO is no longer needed, main is no special case anymore
ghc/includes/RtsAPI.h, ghc/rts/RtsAPI.c, ghc/rts/Main.c, ghc/rts/Weak.c
- passCapability: a new function that releases the capability and "passes"
it to a specific OS thread:
ghc/rts/Capability.h ghc/rts/Capability.c
- waitThread(), scheduleWaitThread() and schedule() get an optional
Capability *initialCapability passed as an argument:
ghc/includes/SchedAPI.h, ghc/rts/Schedule.c, ghc/rts/RtsAPI.c
- Bound Thread scheduling (that's what this is all about):
ghc/rts/Schedule.h, ghc/rts/Schedule.c
- new Primop isCurrentThreadBound#:
ghc/compiler/prelude/primops.txt.pp, ghc/includes/PrimOps.h, ghc/rts/PrimOps.hc,
ghc/rts/Schedule.h, ghc/rts/Schedule.c
- a simple function, rtsSupportsBoundThreads, that returns true if THREADED_RTS
is defined:
ghc/rts/Schedule.h, ghc/rts/Schedule.c
- a new implementation of forkProcess (the old implementation stays in place
for the non-threaded case). Partially broken; works for the standard
fork-and-exec case, but not for much else. A proper forkProcess is
really next to impossible to implement:
ghc/rts/Schedule.c
- Library support for bound threads:
Control.Concurrent.
rtsSupportsBoundThreads, isCurrentThreadBound, forkOS,
runInBoundThread, runInUnboundThread
libraries/base/Control/Concurrent.hs, libraries/base/Makefile,
libraries/base/include/HsBase.h, libraries/base/cbits/forkOS.c (new file)
simonmar [Tue, 16 Sep 2003 13:46:36 +0000 (13:46 +0000)]
[project @ 2003-09-16 13:46:36 by simonmar]
Don't strip the trailing slash from the filename '/'.
simonmar [Tue, 16 Sep 2003 13:03:37 +0000 (13:03 +0000)]
[project @ 2003-09-16 13:03:37 by simonmar]
Legacy Removal
~~~~~~~~~~~~~~
The following features have been consigned to the bit bucket:
_ccall_
_casm_
``....'' (lit-lits)
the CCallable class
the CReturnable class
simonmar [Fri, 12 Sep 2003 13:05:20 +0000 (13:05 +0000)]
[project @ 2003-09-12 13:05:19 by simonmar]
Implement pathconf()/fpathconf() wrappers.
simonmar [Fri, 12 Sep 2003 12:29:44 +0000 (12:29 +0000)]
[project @ 2003-09-12 12:29:43 by simonmar]
Move setChildStopFlag and queryChildStopFlag to System.Posix.Signals.
simonmar [Wed, 10 Sep 2003 14:45:24 +0000 (14:45 +0000)]
[project @ 2003-09-10 14:45:24 by simonmar]
Quick hack to work around the dynamic exception crashes in GHCi. The
problem is this: the Data.Typeable library (Data.Dymamic in previous
versions of GHC) maintains an internal cache mapping type names to
unique numbers, and this cache is used for fast comparisons on
TypeReps. In GHCi, there are actually two versions of the
Data.Typeable library loaded: one linked to GHCi itself, and the other
dynamically loaded, so there are two copies of the hash tables.
The problem is that if we have a Dynamic value generated using one set
of hash tables, it will erroneously appear to be of a different type
when the other hash tables are used.
The hack I've instigated is to use the central RTS genSym (which
already exists) to generate the unique Ids, so that the two copies of
the dynamic library will be using distinct Ids, and Dynamics from one
will never be recognisable to the other.
simonmar [Wed, 10 Sep 2003 11:46:58 +0000 (11:46 +0000)]
[project @ 2003-09-10 11:46:58 by simonmar]
The finalizer for a ForeignPtr created with mallocForeignPtr better
"touch#" the MutableByteArray# after running the other finalizers,
otherwise the memory might be garbage collected before we've finished
running the finalizers.
This can cause crashes if you add any extra finalizers to a ForeignPtr
created with mallocForeignPtr.
SourceForge bug: #802692
ross [Mon, 8 Sep 2003 16:23:58 +0000 (16:23 +0000)]
[project @ 2003-09-08 16:23:57 by ross]
ST doc adjustments
simonmar [Mon, 8 Sep 2003 14:14:37 +0000 (14:14 +0000)]
[project @ 2003-09-08 14:14:37 by simonmar]
Doc wibbles