Original bug ID: 6241
Reporter: @yallop
Assigned to: @garrigue
Status: closed (set by @xavierleroy on 2015-12-11T18:25:19Z)
Resolution: fixed
Priority: normal
Severity: minor
Version: 4.01.0
Fixed in version: 4.01.1+dev
Category: typing
Child of: #5998
Bug description
$ cat packages.ml
type (_, _) t =
A : ('a, 'a) t
| B : string -> ('a, 'b) t
module M (A : sig module type T end) (B : sig module type T end) =
struct
let f : ((module A.T), (module B.T)) t -> string = function
| B s -> s
end
module A = struct module type T = sig end end
module N = M(A)(A)
let x = N.f A
$ ocaml packages.ml
Segmentation fault (core dumped)