Evacuated Object

John Knottenbelt jak97@doc.ic.ac.uk
Sun, 27 May 2001 19:24:12 +0100


I'm experimenting with GHC (5.00.1) on RedHat Linux 7.1, it's foreign 
function interface (using .hsc files) and the SDL graphics library (v1.2). 
The curious thing is that the following code:

main =	sdlInit [sdlVideo[
	sdlQuit

can be loaded into GHCi and executed as many times as I like, however,
if I then carry on and edit the module containing main, and then perform a 
reload (:r), I sometimes get an "EVACUATED object entered!" message and GHC 
crashes on me:

TestGraphics> :r
Compiling TestGraphics     ( TestGraphics.hs, interpreted )
Ok, modules loaded: TestGraphics, SDL, Rectangle, SDLEvents, SDLKeySyms, 
ForeignUtil.
TestGraphics> main
EVACUATED object entered!
make: *** [interactive] Error 1
bash$

What does this error mean, and why is it only triggered when I perform a 
reload in GHCi?

Sometimes the reload works fine, and other times I get a segmentation fault.

Thanks

John