diff options
author | 2008-07-24 16:41:12 -0400 | |
---|---|---|
committer | 2008-07-24 16:41:12 -0400 | |
commit | 7e8a4397825d3ee1addd7326104759294deff832 (patch) | |
tree | 3a7a55d48c0d4d3bb8a0620458700ff8304150ec /src/elaborate.sml | |
parent | 501cdf5bfe6d9348de1cab3e525de665c05af731 (diff) |
Abstracting datatypes with signature ascription
Diffstat (limited to 'src/elaborate.sml')
-rw-r--r-- | src/elaborate.sml | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/elaborate.sml b/src/elaborate.sml index 9cc695e1..d5bae866 100644 --- a/src/elaborate.sml +++ b/src/elaborate.sml @@ -1724,6 +1724,9 @@ fun subSgn (env, denv) sgn1 (sgn2 as (_, loc2)) = case sgi1 of L'.SgiConAbs (x', n1, k1) => found (x', n1, k1, NONE) | L'.SgiCon (x', n1, k1, c1) => found (x', n1, k1, SOME c1) + | L'.SgiDatatype (x', n1, _) => found (x', n1, (L'.KType, loc), NONE) + | L'.SgiDatatypeImp (x', n1, m1, ms, s) => + found (x', n1, (L'.KType, loc), SOME (L'.CModProj (m1, ms, s), loc)) | _ => NONE end) |