You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Original bug ID: 5164 Reporter: sebmondet Status: closed (set by @garrigue on 2010-10-07T02:24:37Z) Resolution: fixed Priority: normal Severity: minor Version: 3.12.0 Fixed in version: 3.12.1+dev Category: ~DO NOT USE (was: OCaml general) Has duplicate:#4487
Bug description
Trying to compile this:
module type INCLUDING = sig
include module type of List
include module type of ListLabels
end
module Including_typed: INCLUDING = struct
include List
include ListLabels
end
gives the error:
File "tt.ml", line 7, characters 36-82:
Error: Signature mismatch:
Modules do not match:
sig
val length : 'a list -> int
(* ... the whole ListLabels signature ... *)
end
is not included in
INCLUDING
Values do not match:
val iter : f:('a -> unit) -> 'a list -> unit
is not included in
val iter : ('a -> unit) -> 'a list -> unit
with:
$ ocamlc -version
3.12.0
(compiled from GODI)
The text was updated successfully, but these errors were encountered:
Well spotted.
There was a very stupid bug in 3.12, where only the first repeated definition
was discarded when including signatures, but other repetitions were kept.
Original bug ID: 5164
Reporter: sebmondet
Status: closed (set by @garrigue on 2010-10-07T02:24:37Z)
Resolution: fixed
Priority: normal
Severity: minor
Version: 3.12.0
Fixed in version: 3.12.1+dev
Category: ~DO NOT USE (was: OCaml general)
Has duplicate: #4487
Bug description
Trying to compile this:
module type INCLUDING = sig
include module type of List
include module type of ListLabels
end
module Including_typed: INCLUDING = struct
include List
include ListLabels
end
gives the error:
File "tt.ml", line 7, characters 36-82:
Error: Signature mismatch:
Modules do not match:
sig
val length : 'a list -> int
(* ... the whole ListLabels signature ... *)
end
is not included in
INCLUDING
Values do not match:
val iter : f:('a -> unit) -> 'a list -> unit
is not included in
val iter : ('a -> unit) -> 'a list -> unit
with:
$ ocamlc -version
3.12.0
(compiled from GODI)
The text was updated successfully, but these errors were encountered: