diff src/corify.sml @ 214:766b5475477f

Corifying con-tuples
author Adam Chlipala <adamc@hcoop.net>
date Sat, 16 Aug 2008 15:03:05 -0400
parents 0343557355fc
children 3aa010e97db9
line wrap: on
line diff
--- a/src/corify.sml	Sat Aug 16 14:45:23 2008 -0400
+++ b/src/corify.sml	Sat Aug 16 15:03:05 2008 -0400
@@ -380,7 +380,7 @@
        | L.KName => (L'.KName, loc)
        | L.KRecord k => (L'.KRecord (corifyKind k), loc)
        | L.KUnit => (L'.KUnit, loc)
-       | L.KTuple _ => raise Fail "Corify KTuple"
+       | L.KTuple ks => (L'.KTuple (map corifyKind ks), loc)
 
  fun corifyCon st (c, loc) =
      case c of
@@ -414,8 +414,8 @@
        | L.CFold (k1, k2) => (L'.CFold (corifyKind k1, corifyKind k2), loc)
        | L.CUnit => (L'.CUnit, loc)
 
-       | L.CTuple _ => raise Fail "Corify CTuple"
-       | L.CProj _ => raise Fail "Corify CProj"
+       | L.CTuple cs => (L'.CTuple (map (corifyCon st) cs), loc)
+       | L.CProj (c, n) => (L'.CProj (corifyCon st c, n), loc)
 
  fun corifyPatCon st pc =
      case pc of