[project @ 2005-01-21 16:02:47 by simonmar]
authorsimonmar <unknown>
Fri, 21 Jan 2005 16:02:58 +0000 (16:02 +0000)
committersimonmar <unknown>
Fri, 21 Jan 2005 16:02:58 +0000 (16:02 +0000)
commit3f205c430218a2a897c5fb6a1e27b7f6647e6fa9
treea4f306775c03382bad2272e041dbb0de572113fb
parent5fcb4668721bff6405fa9e32382f71511c2b487d
[project @ 2005-01-21 16:02:47 by simonmar]
Don't try to run finalizers at program exit.  This turned out to be
hard if not impossible to do in general, so now we don't attempt it at
all.

The Main.main wrapper, previously called runIO and now called
runMainIO, flushes stdout and stderr before exiting.  This should
catch most cases where programs rely on Handles being flushed at
program exit, but note that now if you simply drop a Handle in your
program, there's no guarantee it'll be flushed on exit.  If the
punters complain enough, I suppose we could implement a global
Handle table and flush them all at exit... I'd rather not do this if
possible, though.  Better to teach people to close their Handles
properly.
ghc/compiler/prelude/PrelNames.lhs
ghc/compiler/typecheck/TcRnDriver.lhs
ghc/rts/RtsStartup.c
ghc/rts/Weak.c
ghc/rts/Weak.h