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 (X : Dep) -> sig val x : X.t option module M : (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 : (Y : Dep) -> sig val x : X.t option end end In module M.M: Modules do not match: (X : Dep) -> sig val x : X.t option module M : (Y : Dep) -> sig val x : X.t option end end is not included in (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 : (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