aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/elaborate.sml
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2008-06-10 15:56:33 -0400
committerGravatar Adam Chlipala <adamc@hcoop.net>2008-06-10 15:56:33 -0400
commit0b48781249e7062928ff78ae3469a508a3e31eaa (patch)
tree9e6bdf99508109633f198c8a01948c165cad3b86 /src/elaborate.sml
parentbe45a4a950e01689219ebc5032f53f66b012f660 (diff)
Closure conversion
Diffstat (limited to 'src/elaborate.sml')
-rw-r--r--src/elaborate.sml4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/elaborate.sml b/src/elaborate.sml
index 9e63ecea..c89bc8e0 100644
--- a/src/elaborate.sml
+++ b/src/elaborate.sml
@@ -697,7 +697,7 @@ fun typeof env (e, loc) =
(case #1 (typeof env e1) of
L'.TFun (_, c) => c
| _ => raise Fail "typeof: Bad EApp")
- | L'.EAbs (x, t, e1) => (L'.TFun (t, typeof (E.pushERel env x t) e1), loc)
+ | L'.EAbs (_, _, ran, _) => ran
| L'.ECApp (e1, c) =>
(case #1 (typeof env e1) of
L'.TCFun (_, _, _, c1) => subConInCon (0, c) c1
@@ -771,7 +771,7 @@ fun elabExp env (e, loc) =
end
val (e', et) = elabExp (E.pushERel env x t') e
in
- ((L'.EAbs (x, t', e'), loc),
+ ((L'.EAbs (x, t', et, e'), loc),
(L'.TFun (t', et), loc))
end
| L.ECApp (e, c) =>