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: 781 Reporter: administrator Status: closed Resolution: won't fix Priority: normal Severity: feature Category: ~DO NOT USE (was: OCaml general)
Bug description
Bonjour à tous,
Si je me donne les deux modules suivants:
(* a.ml *)
type t = T
(* bug.ml *)
open A
module A = struct
end
let f T = T
et si je compile comme suit:
ocamlc -c a.ml
ocamlc -c -i bug.ml
alors j'obtiens pour le module Bug la signature:
module A : sig end
val f : A.t -> A.t
qui n'est pas correcte -- elle est d'ailleurs mal formée. Plus grave, je ne
vois pas quelle signature on peut donner à ce module, dans la mesure où le
type `A.t' n'a plus de nom. Il faudrait disposer d'une syntaxe concrète pour
renommer un module, et que l'option -i emploie cette syntaxe pour éviter la
capture... Qu'en pensez-vous?
Original bug ID: 781
Reporter: administrator
Status: closed
Resolution: won't fix
Priority: normal
Severity: feature
Category: ~DO NOT USE (was: OCaml general)
Bug description
Bonjour à tous,
Si je me donne les deux modules suivants:
(* a.ml *)
type t = T
(* bug.ml *)
open A
module A = struct
end
let f T = T
et si je compile comme suit:
ocamlc -c a.ml
ocamlc -c -i bug.ml
alors j'obtiens pour le module Bug la signature:
module A : sig end
val f : A.t -> A.t
qui n'est pas correcte -- elle est d'ailleurs mal formée. Plus grave, je ne
vois pas quelle signature on peut donner à ce module, dans la mesure où le
type `A.t' n'a plus de nom. Il faudrait disposer d'une syntaxe concrète pour
renommer un module, et que l'option -i emploie cette syntaxe pour éviter la
capture... Qu'en pensez-vous?
--
François Pottier
Francois.Pottier@inria.fr
http://pauillac.inria.fr/~fpottier/
The text was updated successfully, but these errors were encountered: