diff options
author | Adam Chlipala <adamc@hcoop.net> | 2008-06-10 15:56:33 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2008-06-10 15:56:33 -0400 |
commit | 0b48781249e7062928ff78ae3469a508a3e31eaa (patch) | |
tree | 9e6bdf99508109633f198c8a01948c165cad3b86 /src/elaborate.sml | |
parent | be45a4a950e01689219ebc5032f53f66b012f660 (diff) |
Closure conversion
Diffstat (limited to 'src/elaborate.sml')
-rw-r--r-- | src/elaborate.sml | 4 |
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) => |