Mercurial > urweb
diff src/elaborate.sml @ 2009:799be3911ce3
Monadic bind supports patterns
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Fri, 02 May 2014 17:16:02 -0400 |
parents | 7db8356caef5 |
children | 403f0cc65b9c |
line wrap: on
line diff
--- a/src/elaborate.sml Fri May 02 15:32:10 2014 -0400 +++ b/src/elaborate.sml Fri May 02 17:16:02 2014 -0400 @@ -2183,8 +2183,13 @@ (e', (#1 (chaseUnifs t'), loc), enD gs2 @ gs1) end - | L.ERecord xes => + | L.ERecord (xes, flex) => let + val () = if flex then + expError env (IllegalFlex eAll) + else + () + val (xes', gs) = ListUtil.foldlMap (fn ((x, e), gs) => let val (x', xk, gs1) = elabCon (env, denv) x