# HG changeset patch # User Adam Chlipala # Date 1391037565 18000 # Node ID 072656016dfa56fc440a4b748a2fe83483351bca # Parent fec7beec96c7c70879ebed05a73a8ce623801f89 Add another simple case for record unification between alpha-equivalent constructors diff -r fec7beec96c7 -r 072656016dfa src/elaborate.sml --- a/src/elaborate.sml Sun Jan 19 14:31:55 2014 -0500 +++ b/src/elaborate.sml Wed Jan 29 18:19:25 2014 -0500 @@ -873,8 +873,9 @@ | _ => false} val (others1, others2) = eatMatching (fn (c1, c2) => - not (hasUnifs c1 andalso hasUnifs c2) - andalso consEq env loc (c1, c2)) (#others s1, #others s2) + c1 = c2 + orelse (not (hasUnifs c1 andalso hasUnifs c2) + andalso consEq env loc (c1, c2))) (#others s1, #others s2) (*val () = eprefaces "Summaries3" [("#1", p_summary env {fields = fs1, unifs = unifs1, others = others1}), ("#2", p_summary env {fields = fs2, unifs = unifs2, others = others2})]*)