Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | val _ = 1 = 2 |
2 | ||
3 | val _ = 1.0 = 2.0 (* error *) | |
4 | ||
5 | val f: ''a -> unit = fn _ => raise Fail "f" | |
6 | ||
7 | val _ = f 1 | |
8 | ||
9 | val _ = f 1.0 (* error *) | |
10 | ||
11 | datatype 'a t = T of 'a | |
12 | ||
13 | val _ = T 1 = T 2 | |
14 | ||
15 | val _ = T 1.0 = T 2.0 (* 15 error *) | |
16 | ||
17 | datatype 'a t = T | |
18 | ||
19 | val _ = (T: int t) = T | |
20 | ||
21 | val _ = (T: real t) = T (* 21 error *) | |
22 | ||
23 | datatype t = T of u | |
24 | withtype u = real | |
25 | ||
26 | val _ = T 13.0 = T 14.0 (* 26 error *) | |
27 | ||
28 | datatype t = T of u | |
29 | and u = U of t | |
30 | ||
31 | fun f (x: t) = x = x | |
32 | ||
33 | datatype 'a t = T of 'a u | |
34 | and 'a u = U of 'a | |
35 | ||
36 | fun f (x: int t) = x = x | |
37 | ||
38 | fun f (x: real t) = x = x (* 38 error *) | |
39 | ||
40 | val f: 'a -> unit = fn x => (x = x; ()) (* 40 error *) |