Original bug ID: 7112 Reporter:@lpw25 Assigned to:@garrigue Status: closed (set by @lpw25 on 2017-02-27T14:48:45Z) Resolution: fixed Priority: normal Severity: major Version: 4.02.3 Target version: 4.03.0+dev / +beta1 Fixed in version: 4.04.0 Category: typing Has duplicate:#7204 Monitored by:@gasche @diml @yallop
Bug description
Module aliases are not taken account of in arguments to functors when checking equality of abstract module types:
module F (_ : sig end) = struct module type S end;;
module F : functor (_ : sig end) -> sig module type S end
module M = struct end;;
module M : sig end
module N = M;;
module N = M
module G (X : F(N).S) : F(M).S = X;;
Characters 33-34:
module G (X : F(N).S) : F(M).S = X;;
^
Error: Signature mismatch:
Modules do not match: F(N).S is not included in F(M).S
Unbound module type F(M).S
The text was updated successfully, but these errors were encountered:
Original bug ID: 7112
Reporter: @lpw25
Assigned to: @garrigue
Status: closed (set by @lpw25 on 2017-02-27T14:48:45Z)
Resolution: fixed
Priority: normal
Severity: major
Version: 4.02.3
Target version: 4.03.0+dev / +beta1
Fixed in version: 4.04.0
Category: typing
Has duplicate: #7204
Monitored by: @gasche @diml @yallop
Bug description
Module aliases are not taken account of in arguments to functors when checking equality of abstract module types:
module F (_ : sig end) = struct module type S end;;
module F : functor (_ : sig end) -> sig module type S end
module M = struct end;;
module M : sig end
module N = M;;
module N = M
module G (X : F(N).S) : F(M).S = X;;
Characters 33-34:
module G (X : F(N).S) : F(M).S = X;;
^
Error: Signature mismatch:
Modules do not match: F(N).S is not included in F(M).S
Unbound module type F(M).S
The text was updated successfully, but these errors were encountered: