[Haskell-cafe] Getting a segmentation fault when starting/stopping the RTS, from C, several times.

Albert Y. C. Lai trebla at vex.net
Sun Jul 15 23:36:52 CEST 2012

On 12-07-10 11:35 PM, Brandon Allbery wrote:
> Quoth the Fine Manual ( Using your own main()
> <http://www.haskell.org/ghc/docs/latest/html/users_guide/ffi-ghc.html#using-own-main>):
> There can be multiple calls to |hs_init()|, but each one should be
> matched by one (and only one) call to |hs_exit()|^[14
> <http://www.haskell.org/ghc/docs/latest/html/users_guide/ffi-ghc.html#ftn.id740774>]
> .
> So this should theoretically work.

Except that [14] says: the outermost hs_exit() de-initialises, and 
afterwards, cannot reliably re-initialise in current implementations.

So the currently working use-case is just:
Prog ::= nop | hs_init(); Prog; hs_exit()

More information about the Haskell-Cafe mailing list