File "pr10693_bad.ml", line 27, characters 26-27: 27 | module Bad (A : S') : S = A ^ Error: Signature mismatch: Modules do not match: sig val x : 'a option module M : Dep -> S end is not included in S In module "M": Modules do not match: Dep -> S is not included in functor (X : Dep) -> sig val x : X.t option module M : functor (Y : Dep) -> sig val x : X.t option end end In module "M": Modules do not match: S is not included in sig val x : X.t option module M : functor (Y : Dep) -> sig val x : X.t option end end In module "M.M": Modules do not match: functor (X : Dep) -> sig val x : X.t option module M : functor (Y : Dep) -> sig val x : X.t option end end is not included in functor (Y : Dep) -> sig val x : X.t option end In module "M.M": Modules do not match: sig val x : X.t option module M : functor (Y : Dep) -> sig val x : X.t option end end is not included in sig val x : X.t option end In module "M.M": Values do not match: val x : X.t option is not included in val x : X/2.t option The type "X.t option" is not compatible with the type "X/2.t option" Type "X.t" is not compatible with type "X/2.t" File "_none_", line 1: Definition of module "X" File "_none_", line 1: Definition of module "X/2" File "pr10693_bad.ml", line 17, characters 6-24: Expected declaration File "pr10693_bad.ml", line 15, characters 4-22: Actual declaration