changeset 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 74c762002352
children cbd294994c69
files src/elaborate.sml
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
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