diff src/elaborate.sml @ 2184:1ecef02f67c5

More Elaborate work to avoid instantiating unification variables with out-of-scope regular variables
author Adam Chlipala <adam@chlipala.net>
date Sat, 24 Oct 2015 17:23:07 -0400
parents 010ce27228f1
children 22117edf8fd3
line wrap: on
line diff
--- a/src/elaborate.sml	Sun Oct 18 16:03:56 2015 -0400
+++ b/src/elaborate.sml	Sat Oct 24 17:23:07 2015 -0400
@@ -783,7 +783,8 @@
 
          val sum =
              case c of
-                 (L'.CRecord (_, xcs), _) => {fields = xcs, unifs = [], others = []}
+                 (L'.CRecord (_, xcs), _) => {fields = map (fn (x, c) => (hnormCon env x, hnormCon env c)) xcs,
+                                              unifs = [], others = []}
                | (L'.CConcat (c1, c2), _) =>
                  let
                      val s1 = recordSummary env c1