diff src/fuse.sml @ 814:3f3b211f9bca

Fix argument ordering bug in fuse; fix case subsitution bug in MonoReduce
author Adam Chlipala <adamc@hcoop.net>
date Sun, 17 May 2009 14:36:55 -0400
parents 65d8541c130b
children 9304474170ed
line wrap: on
line diff
--- a/src/fuse.sml	Sun May 17 13:25:57 2009 -0400
+++ b/src/fuse.sml	Sun May 17 14:36:55 2009 -0400
@@ -78,7 +78,7 @@
 
                                                   val (body, args) = getBody (e, args)
                                                   val body = MonoOpt.optExp (EWrite body, loc)
-                                                  val (body, _) = foldl (fn ((x, dom), (body, ran)) =>
+                                                  val (body, _) = foldr (fn ((x, dom), (body, ran)) =>
                                                                             ((EAbs (x, dom, ran, body), loc),
                                                                              (TFun (dom, ran), loc)))
                                                                         (body, (TRecord [], loc)) args