diff options
author | Adam Chlipala <adamc@hcoop.net> | 2008-08-16 16:30:07 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2008-08-16 16:30:07 -0400 |
commit | 2c64a768d33ed6cbead84259a5cefae7d9c6f4e1 (patch) | |
tree | 32a4cb02d9f51c2fd821d54e5052030c0968aefe /src/elab_env.sml | |
parent | 402112549b47a76033fa575dc9f5e620ea214cc1 (diff) |
Fun with type classes and modules
Diffstat (limited to 'src/elab_env.sml')
-rw-r--r-- | src/elab_env.sml | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/elab_env.sml b/src/elab_env.sml index 1b25749f..392fcf02 100644 --- a/src/elab_env.sml +++ b/src/elab_env.sml @@ -713,7 +713,11 @@ fun enrichClasses env classes (m1, ms) sgn = 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 @@ fun enrichClasses env classes (m1, ms) sgn = newClasses, fmap) end) + | SgiVal _ => default () | _ => default () end) (classes, IM.empty, (IM.empty, IM.empty, IM.empty)) sgis |