diff options
Diffstat (limited to 'src/mono_opt.sml')
-rw-r--r-- | src/mono_opt.sml | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mono_opt.sml b/src/mono_opt.sml index bf39b311..7bfce88b 100644 --- a/src/mono_opt.sml +++ b/src/mono_opt.sml @@ -30,6 +30,8 @@ structure MonoOpt :> MONO_OPT = struct open Mono structure U = MonoUtil +val removeServerCalls = ref false + fun typ t = t fun decl d = d @@ -480,6 +482,12 @@ fun exp e = | [] => raise Fail "MonoOpt impossible nil") | NONE => e end + + | EServerCall (_, _, _, _, ue) => + if !removeServerCalls then + optExp ue + else + e | _ => e |