annotate tests/rpat.ur @ 1657:2b7d3d99dc42
Prevent unifications of 'others' pieces in record summaries, when both pieces contain unification variables (to prevent undesired unifications)
author |
Adam Chlipala <adam@chlipala.net> |
date |
Thu, 05 Jan 2012 17:10:43 -0500 |
parents |
71bafe66dbe1 |
children |
|
rev |
line source |
adamc@175
|
1 val f = fn x : {A : int} => case x of {A = _} => 0
|
adamc@175
|
2 val f = fn x : {A : int} => case x of {A = _, ...} => 0
|
adamc@175
|
3 val f = fn x : {A : int, B : int} => case x of {A = _, ...} => 0
|
adamc@175
|
4 val f = fn x : {A : int, B : int} => case x of {A = 1, B = 2} => 0 | {A = _, ...} => 1
|
adamc@175
|
5
|
adamc@175
|
6 datatype t = A | B
|
adamc@175
|
7
|
adamc@175
|
8 val f = fn x => case x of {A = A, B = 2} => 0 | {A = A, ...} => 0 | {A = B, ...} => 0
|
adamc@175
|
9
|
adamc@175
|
10 val f = fn x => case x of {A = {A = A, ...}, B = B} => 0
|
adamc@175
|
11 | {B = A, ...} => 1
|
adamc@175
|
12 | {A = {A = B, B = A}, B = B} => 2
|
adamc@175
|
13 | {A = {A = B, B = B}, B = B} => 3
|