diff src/elaborate.sml @ 110:3739af9e727a

Starting with closure links
author Adam Chlipala <adamc@hcoop.net>
date Sun, 13 Jul 2008 11:43:57 -0400
parents 813e5a52063d
children e3041657d653
line wrap: on
line diff
--- a/src/elaborate.sml	Sun Jul 13 10:17:06 2008 -0400
+++ b/src/elaborate.sml	Sun Jul 13 11:43:57 2008 -0400
@@ -1945,13 +1945,12 @@
                                      (case (hnormCon (env, denv) dom, hnormCon (env, denv) ran) of
                                           (((L'.TRecord domR, _), []),
                                            ((L'.CApp (tf, ranR), _), [])) =>
-                                          (case hnormCon (env, denv) ranR of
-                                               (ranR, []) =>
+                                          (case (hnormCon (env, denv) tf, hnormCon (env, denv) ranR) of
+                                               ((tf, []), (ranR, [])) =>
                                                (case (hnormCon (env, denv) domR, hnormCon (env, denv) ranR) of
                                                     ((domR, []), (ranR, [])) =>
                                                     (L'.SgiVal (x, n, (L'.TFun ((L'.TRecord domR, loc),
-                                                                                (L'.CApp (tf,
-                                                                                          (L'.TRecord ranR, loc)), loc)),
+                                                                                (L'.CApp (tf, ranR), loc)),
                                                                        loc)), loc)
                                                   | _ => all)
                                              | _ => all)