cvs commit: fptools/libraries/base/GHC TopHandler.lhs
fptools/libraries/base/Control
Concurrent.hs fptools/ghc/compiler/prelude PrelNames.lhs
fptools/ghc/compiler/typecheck TcRnDriver.lhs fptools/ghc/rts
RtsStartup.c Weak.c Weak.h
Simon Marlow
simonmar at haskell.org
Fri Jan 21 11:02:58 EST 2005
simonmar 2005/01/21 08:02:58 PST
Modified files:
libraries/base/GHC TopHandler.lhs
libraries/base/Control Concurrent.hs
ghc/compiler/prelude PrelNames.lhs
ghc/compiler/typecheck TcRnDriver.lhs
ghc/rts RtsStartup.c Weak.c Weak.h
Log:
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.
Revision Changes Path
1.13 +39 -33 fptools/libraries/base/GHC/TopHandler.lhs
1.32 +2 -2 fptools/libraries/base/Control/Concurrent.hs
1.94 +3 -3 fptools/ghc/compiler/prelude/PrelNames.lhs
1.92 +3 -3 fptools/ghc/compiler/typecheck/TcRnDriver.lhs
1.88 +0 -5 fptools/ghc/rts/RtsStartup.c
1.35 +0 -31 fptools/ghc/rts/Weak.c
1.6 +1 -2 fptools/ghc/rts/Weak.h
More information about the Cvs-libraries
mailing list