Mercurial > urweb
diff src/compiler.sml @ 1540:659a2f71f5e5
Compiler frees as much memory as possible before passing control to C compiler
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Mon, 15 Aug 2011 11:26:10 -0400 |
parents | 7770ef82c463 |
children | 6fe6bda2b928 |
line wrap: on
line diff
--- a/src/compiler.sml Mon Aug 15 10:22:09 2011 -0400 +++ b/src/compiler.sml Mon Aug 15 11:26:10 2011 -0400 @@ -1311,6 +1311,8 @@ val escapeFilename = String.translate (fn #" " => "\\ " | #"\"" => "\\\"" | #"'" => "\\'" | ch => str ch) +val beforeC = ref (fn () => ()) + fun compileC {cname, oname, ename, libs, profile, debug, link = link'} = let val proto = Settings.currentProtocol () @@ -1348,6 +1350,7 @@ (); OS.Process.isSuccess (OS.Process.system s)) in + !beforeC (); system compile andalso system link end