summaryrefslogtreecommitdiffstats
path: root/testsuite/tests/typing-gadts/test.ml.reference
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/typing-gadts/test.ml.reference')
-rw-r--r--testsuite/tests/typing-gadts/test.ml.reference14
1 files changed, 7 insertions, 7 deletions
diff --git a/testsuite/tests/typing-gadts/test.ml.reference b/testsuite/tests/typing-gadts/test.ml.reference
index 3b62fdef8..80542d949 100644
--- a/testsuite/tests/typing-gadts/test.ml.reference
+++ b/testsuite/tests/typing-gadts/test.ml.reference
@@ -7,7 +7,7 @@
| Pair : 'a t * 'b t -> ('a * 'b) t
| App : ('a -> 'b) t * 'a t -> 'b t
| Abs : ('a -> 'b) -> ('a -> 'b) t
- val eval : 'a t -> 'a
+ val eval : 's t -> 's
val discern : 'a t -> int
end
# module List :
@@ -35,17 +35,17 @@ module Nonexhaustive :
sig
type 'a u = C1 : int -> int u | C2 : bool -> bool u
type 'a v = C1 : int -> int v
- val unexhaustive : 'a u -> 'a
+ val unexhaustive : 's u -> 's
module M : sig type t type u end
type 'a t = Foo : M.t -> M.t t | Bar : M.u -> M.u t
- val same_type : 'a t * 'a t -> bool
+ val same_type : 's t * 's t -> bool
end
# module Exhaustive :
sig
type t = int
type u = bool
type 'a v = Foo : t -> t v | Bar : u -> u v
- val same_type : 'a v * 'a v -> bool
+ val same_type : 's v * 's v -> bool
end
# Characters 119-120:
let eval (D x) = x
@@ -70,7 +70,7 @@ Error: This pattern matches values of type ([? `A ] as 'a) * bool t
# module Propagation :
sig
type 'a t = IntLit : int -> int t | BoolLit : bool -> bool t
- val check : 'a t -> 'a
+ val check : 's t -> 's
end
# Characters 87-88:
let f = function A -> 1 | B -> 2
@@ -199,8 +199,8 @@ Error: This expression has type [> `A of a ]
....f : type a b. (a,b) eq -> [< `A of a | `B] -> [< `A of b | `B] =
fun Eq o -> o..............
Error: This definition has type
- ('c, 'd) eq -> ([< `A of 'd & 'c | `B ] as 'e) -> 'e
- which is less general than 'a 'b. ('a, 'b) eq -> 'e -> 'e
+ ('a, 'b) eq -> ([< `A of 'b & 'a | `B ] as 'c) -> 'c
+ which is less general than 'a0 'b0. ('a0, 'b0) eq -> 'c -> 'c
# val f : ('a, 'b) eq -> [ `A of 'a | `B ] -> [ `A of 'b | `B ] = <fun>
# val f : ('a, int) eq -> [ `A of 'a ] -> bool = <fun>
# val f : ('a, 'b) eq -> [ `A of 'a | `B ] -> [ `A of 'b | `B ] = <fun>