Mercurial > urweb
diff src/elaborate.sml @ 1736:7ec8dab190a7
Better discovery of type class instances from recursive definitions
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Wed, 02 May 2012 08:34:50 -0400 |
parents | ab24a7cb2a64 |
children | 78d7cc9c9b18 |
line wrap: on
line diff
--- a/src/elaborate.sml Wed May 02 08:23:30 2012 -0400 +++ b/src/elaborate.sml Wed May 02 08:34:50 2012 -0400 @@ -3912,8 +3912,11 @@ expError env (IllegalRec (x, e')); ((x, n, c', e'), gs1 @ gs) end) gs vis + + val vis = map (fn (x, n, t, e) => (x, n, normClassConstraint env t, e)) vis + val d = (L'.DValRec vis, loc) in - ([(L'.DValRec vis, loc)], (env, denv, gs)) + ([d], (E.declBinds env d, denv, gs)) end | L.DSgn (x, sgn) =>