id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	os	architecture	failure	difficulty	testcase	blockedby	blocking	related
5053	Internal error with runhaskell and System.Plugins.dynload	robnik	igloo	"I've been trying to learn how to use the `plugins` package, specifically the `dynload` function.  I ran some code and got the message below:  (The ""Loading"" is from my program)

{{{
> runhaskell Main.hs
Loading
Main.hs: internal error: evacuate: strange closure type 894
    (GHC version 7.0.2 for i386_apple_darwin)
    Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
}}}

I've copied the two relevant files below - Main.hs and Plug.hs.  Before running Main.hs I compiled Plug.hs to Plug.o by running `ghc -c Plug.hs`.  All files are in the same directory.

Main.hs:

{{{
-- Test dynamic loading

module Main (main) where

import System.Plugins
import Data.Dynamic

main :: IO ()
main = do
  putStrLn ""Loading""
  mv <- dynload ""Plug.o"" [] [] ""thing""
  putStrLn ""Loaded""
  case mv of 
    LoadFailure msgs -> putStrLn ""fail"" >> print msgs
    LoadSuccess _ v -> putStrLn ""success"" >> print (v::Integer)
}}}

Plug.hs:

{{{
module Plug (thing) where 
import Data.Dynamic
thing :: Dynamic
thing = toDyn (1234000::Integer)
}}}"	bug	closed	normal	7.2.1	Compiler	7.0.2	fixed			MacOS X	x86	Runtime crash					
