[MLton] CML bug?

Matthew Fluet fluet@cs.cornell.edu
Wed, 24 Aug 2005 17:17:57 -0400 (EDT)


> when compiled with -const 'Exn.keepHistory true'
>
> skavena 161 $ build/bin/mlton -const 'Exn.keepHistory true' interSys.mlb
> Type error: bad primapp
> exp: Ref_assign (x_1, x_0)
> val x_2 =
>  Ref_assign (x_1, x_0)

> I believe type error:bad primapp is being thrown in both case, just not 
> reported in the first.

I don't understand what you mean; it is an (internal) type error at 
compile time.  Either it occurs and is reported, or it does not.  Keeping 
exception history does entail different transformations on the code, so 
different interal programs are being processed for the two different 
cases.

> Please let me know if I can provide you with more information.

I can't reproduce your bug.  My files look like:

-bash-2.05b$ cat test.mlb 
$(SML_LIB)/basis/basis.mlb
$(SML_LIB)/cml/cml.mlb
test.sml
-bash-2.05b$ cat test.sml
open RunCML
open CML

val _ = print("TEST - about to start CML\n")
val _ = RunCML.doit(fn () =>
  let val _ = print("TEST - CML started\n")
  in exit()
  end,  NONE)