summaryrefslogtreecommitdiff
path: root/src/explify.sml
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adam@chlipala.net>2011-12-18 11:29:13 -0500
committerGravatar Adam Chlipala <adam@chlipala.net>2011-12-18 11:29:13 -0500
commit4eb93836d04d18f43d8c4360f290a7977d96c468 (patch)
treeef38476a5b0199272d5dc20a65a306b4c7b2a112 /src/explify.sml
parent37cf82d0761088c469205b90e35569674707202f (diff)
Add a new scoping check for unification variables, to fix a type inference bug
Diffstat (limited to 'src/explify.sml')
-rw-r--r--src/explify.sml6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/explify.sml b/src/explify.sml
index 5081d33b..3c922a44 100644
--- a/src/explify.sml
+++ b/src/explify.sml
@@ -42,9 +42,9 @@ fun explifyKind (k, loc) =
| L.KTuple ks => (L'.KTuple (map explifyKind ks), loc)
| L.KError => raise Fail ("explifyKind: KError at " ^ EM.spanToString loc)
- | L.KUnif (_, _, ref (SOME k)) => explifyKind k
+ | L.KUnif (_, _, ref (L.KKnown k)) => explifyKind k
| L.KUnif _ => raise Fail ("explifyKind: KUnif at " ^ EM.spanToString loc)
- | L.KTupleUnif (loc, _, ref (SOME k)) => explifyKind k
+ | L.KTupleUnif (loc, _, ref (L.KKnown k)) => explifyKind k
| L.KTupleUnif _ => raise Fail ("explifyKind: KTupleUnif at " ^ EM.spanToString loc)
| L.KRel n => (L'.KRel n, loc)
@@ -76,7 +76,7 @@ fun explifyCon (c, loc) =
| L.CProj (c, n) => (L'.CProj (explifyCon c, n), loc)
| L.CError => raise Fail ("explifyCon: CError at " ^ EM.spanToString loc)
- | L.CUnif (nl, _, _, _, ref (SOME c)) => explifyCon (ElabEnv.mliftConInCon nl c)
+ | L.CUnif (nl, _, _, _, ref (L.Known c)) => explifyCon (ElabEnv.mliftConInCon nl c)
| L.CUnif _ => raise Fail ("explifyCon: CUnif at " ^ EM.spanToString loc)
| L.CKAbs (x, c) => (L'.CKAbs (x, explifyCon c), loc)