[MLton-user] Which MinGW version is recommended?

Stephen Weeks MLton-user@mlton.org
Fri, 15 Aug 2003 11:50:46 -0700


> Also -- MLton seems to really hog system resources.  I get virtual
> memory complaints from the OS when running MLton when bootstrapping.
> Can this be clamped somehow to lower the resources it uses?

Bootstrapping MLton requires a machine with least 256M RAM.  By
default, MLton's runtime system will grab up to 80% (0.8) of RAM.  You
can change this by using the @MLton ram-slop runtime switch, e.g.

	make 'RUNTIME_ARGS=ram-slop 0.5'

You could also put the ram-slop directly in the FLAGS line of
mlton/Makefile.  Another possibility is to use fixed-heap to specify
exactly how much memory the runtime should use, e.g.

	make 'RUNTIME_ARGS=fixed-heap 300m'

There is also the max-heap runtime switch, but that is broken right
now.  We plan to fix it in the next release.

> > Note:  This was done with GCC 3.2.3, so I'll try again with GCC 2.95 to see
> > what happens.
> 
> Just to reply to myself, GCC 2.95 does in fact produce working executables.  
> So GCC 3.2+ is doing something unpleasant that MLton doesn't like.  MLton
> is in good company on this issue -- I'll check if GCC 3.3 resolves the issue 
> (it has for other compilers).

On my Cygwin system, cygcheck -c says that gcc is version 3.2-3, and
gcc -v says "gcc version 3.2 20020927 (prerelease)".  With that, I am
able to bootstrap the cvs head MLton using MLton 20030716.  I agree it
looks like the problem you see is a gcc 3.2.3 bug.
 
> With this update I've been able to build some partially-working Mingw stuff.  
> Hopefully I'll have something self-hosting in a few more days.

Looking forward to it.