Mercurial > urweb
diff src/elab_env.sml @ 217:56db662ebcfd
Fun with type classes and modules
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sat, 16 Aug 2008 16:30:07 -0400 |
parents | 38b299373676 |
children | a3413288cce1 |
line wrap: on
line diff
--- a/src/elab_env.sml Sat Aug 16 15:58:25 2008 -0400 +++ b/src/elab_env.sml Sat Aug 16 16:30:07 2008 -0400 @@ -713,7 +713,11 @@ fun default () = (classes, newClasses, sgiSeek (#1 sgi, fmap)) in case #1 sgi of - SgiClassAbs xn => found xn + SgiStr (x, _, sgn) => + (enrichClasses env classes (m1, ms @ [x]) sgn, + newClasses, + sgiSeek (#1 sgi, fmap)) + | SgiClassAbs xn => found xn | SgiClass (x, n, _) => found (x, n) | SgiVal (x, n, (CApp ((CNamed f, _), a), _)) => (case IM.find (newClasses, f) of @@ -735,6 +739,7 @@ newClasses, fmap) end) + | SgiVal _ => default () | _ => default () end) (classes, IM.empty, (IM.empty, IM.empty, IM.empty)) sgis