Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | (* withtype.sml *) |
2 | ||
3 | (* Checks scoping rules of withtype *) | |
4 | ||
5 | type u = int | |
6 | ||
7 | datatype t = T of u * v | |
8 | withtype u = bool | |
9 | and v = u | |
10 | ||
11 | val z = T(true, 6) | |
12 | val y : u = true | |
13 | val x : v = 1 | |
14 | ||
15 | fun tEq (a: t, b: t) = a = b | |
16 | fun uEq (a: u, b: u) = a = b | |
17 | fun vEq (a: v, b: v) = a = b |