summaryrefslogtreecommitdiff
path: root/testsuite/tests/typing-gadts/pr6158.ml.reference
blob: c7d5c1eca85aa4e588231cb4caefd3bf2d36a43c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

#       type 'a t = T of 'a
type 'a s = S of 'a
type (_, _) eq = Refl : ('a, 'a) eq
#   Characters 46-50:
  let f : (int s, int t) eq -> unit = function Refl -> ();;
                                               ^^^^
Error: This pattern matches values of type (int s, int s) eq
       but a pattern was expected which matches values of type
         (int s, int t) eq
       Type int s is not compatible with type int t 
#     module M :
  functor (S : sig type 'a t = T of 'a type 'a s = T of 'a end) ->
    sig val f : (a#0 S.s, a#0 S.t) eq -> unit end
#